From 6b7f9fb0ccaa176b84e9787faa349099064b92e6 Mon Sep 17 00:00:00 2001
From: Julien Wajsberg
Date: Thu, 6 Jul 2017 05:13:48 -0700
Subject: [PATCH] Upgrade eslint and eslint plugins, enable more rules, and fix
issues from these rules (#414)
---
.eslintrc.js | 11 +-
package.json | 7 +-
src/actions/icons.js | 5 +-
src/components/app/Home.js | 2 +-
src/components/app/Root.js | 2 +
.../calltree/ProfileCallTreeContextMenu.js | 8 +-
src/components/header/ThreadStackGraph.js | 13 +-
src/components/markers/ProfileMarkersView.js | 5 +-
src/components/summary/SummarizeLineGraph.js | 12 +-
.../timeline/TimelineMarkerCanvas.js | 2 +
src/components/timeline/TimelineViewport.js | 1 +
src/profile-logic/marker-timing.js | 1 +
src/profile-logic/profile-data.js | 6 +-
src/profile-logic/profile-store.js | 8 +-
src/reducers/flame-chart.js | 6 +-
src/reducers/timeline-view.js | 9 +-
src/test/fixtures/fake-symbol-store.js | 4 +-
src/url-handling.js | 5 +-
src/utils/async-storage.js | 22 +-
src/utils/promise-worker.js | 4 +-
yarn.lock | 299 ++++++++++--------
21 files changed, 247 insertions(+), 185 deletions(-)
diff --git a/.eslintrc.js b/.eslintrc.js
index 9670ee74a4..2692f24c76 100644
--- a/.eslintrc.js
+++ b/.eslintrc.js
@@ -42,10 +42,10 @@ module.exports = {
// possible errors
"array-callback-return": "error",
"consistent-return": "error",
- // "default-case": "error", // to be enabled after fixing issues in our code
+ "default-case": "error",
"dot-notation": "error",
"eqeqeq": "error",
- // "for-direction": "error", // to be enabled after we upgrade eslint
+ "for-direction": "error",
"no-alert": "error",
"no-caller": "error",
"no-eval": "error",
@@ -58,8 +58,7 @@ module.exports = {
"no-self-compare": "error",
"no-throw-literal": "error",
"no-unmodified-loop-condition": "error",
- // "no-unused-expression": "error", // to be enabled after we upgrade eslint
- // "no-use-before-define": "error", // to be enabled after fixing issues in our code
+ "no-unused-expressions": "error",
"no-useless-call": "error",
"no-useless-computed-key": "error",
"no-useless-concat": "error",
@@ -70,8 +69,8 @@ module.exports = {
"no-void": "error",
"no-with": "error",
"prefer-const": "error",
- // "prefer-promise-reject-errors": "error", // to be enabled after fixing issues in our code
- // "prefer-rest-params": "error", // to be enabled after fixing issues in our code
+ "prefer-promise-reject-errors": "error",
+ "prefer-rest-params": "error",
"prefer-spread": "error",
},
"settings": {
diff --git a/package.json b/package.json
index 50dc9bdf4b..98c544ab92 100644
--- a/package.json
+++ b/package.json
@@ -98,13 +98,12 @@
"babel-preset-react-hmre": "^1.1.1",
"css-loader": "^0.28.4",
"devtools-license-check": "^0.2.0",
- "eslint": "^3.10.2",
- "eslint-config-google": "^0.6.0",
- "eslint-config-prettier": "^2.2.0",
+ "eslint": "^4.1.1",
+ "eslint-config-prettier": "^2.3.0",
"eslint-plugin-flowtype": "^2.34.1",
"eslint-plugin-import": "^2.6.1",
"eslint-plugin-prettier": "^2.1.2",
- "eslint-plugin-react": "^6.4.0",
+ "eslint-plugin-react": "^7.1.0",
"express": "^4.15.3",
"fake-indexeddb": "^1.0.12",
"file-loader": "^0.11.2",
diff --git a/src/actions/icons.js b/src/actions/icons.js
index 77fef5d90d..faaa73f19d 100644
--- a/src/actions/icons.js
+++ b/src/actions/icons.js
@@ -56,7 +56,10 @@ export function iconStartLoading(icon: string): ThunkAction> {
dispatch(iconIsInError(icon));
break;
case 'cached':
- // nothing to do
+ // nothing to do
+ break;
+ default:
+ throw new Error(`Unknown icon load result ${result}`);
}
});
};
diff --git a/src/components/app/Home.js b/src/components/app/Home.js
index d9eead738d..22dbf05dc3 100644
--- a/src/components/app/Home.js
+++ b/src/components/app/Home.js
@@ -251,7 +251,7 @@ class Home extends PureComponent {
Gecko Profiler Add-on
. Then use the button added to the browser, or use
- the following shortcuts to record a profile. The button's icon is
+ the following shortcuts to record a profile. The button’s icon is
blue when a profile is recording. Hit Capture Profile to
load the data into perf.html.
diff --git a/src/components/app/Root.js b/src/components/app/Root.js
index a6e4d12a24..ad2f679790 100644
--- a/src/components/app/Root.js
+++ b/src/components/app/Root.js
@@ -93,6 +93,8 @@ class ProfileViewWhenReadyImpl extends PureComponent {
case 'from-url':
retrieveProfileFromUrl(profileURL);
break;
+ default:
+ throw new Error(`Unknown datasource ${dataSource}`);
}
}
diff --git a/src/components/calltree/ProfileCallTreeContextMenu.js b/src/components/calltree/ProfileCallTreeContextMenu.js
index 052403e481..075a7f2477 100644
--- a/src/components/calltree/ProfileCallTreeContextMenu.js
+++ b/src/components/calltree/ProfileCallTreeContextMenu.js
@@ -24,6 +24,7 @@ type Props = {
};
class ProfileCallTreeContextMenu extends PureComponent {
+ props: Props;
constructor(props: Props) {
super(props);
(this: any).handleClick = this.handleClick.bind(this);
@@ -63,7 +64,10 @@ class ProfileCallTreeContextMenu extends PureComponent {
copy(stack);
}
- handleClick(event: SyntheticEvent, data: { type: string }): void {
+ handleClick(
+ event: SyntheticEvent,
+ data: { type: 'copyFunctionName' | 'copyStack' }
+ ): void {
switch (data.type) {
case 'copyFunctionName':
this.copyFunctionName();
@@ -71,6 +75,8 @@ class ProfileCallTreeContextMenu extends PureComponent {
case 'copyStack':
this.copyStack();
break;
+ default:
+ throw new Error(`Unknown type ${data.type}`);
}
}
diff --git a/src/components/header/ThreadStackGraph.js b/src/components/header/ThreadStackGraph.js
index f5e0fc10ec..0d058e1fd7 100644
--- a/src/components/header/ThreadStackGraph.js
+++ b/src/components/header/ThreadStackGraph.js
@@ -14,6 +14,7 @@ class ThreadStackGraph extends PureComponent {
this._requestedAnimationFrame = false;
this._onMouseUp = this._onMouseUp.bind(this);
this._onMarkerSelected = this._onMarkerSelected.bind(this);
+ this._canvas = null;
}
_scheduleDraw() {
@@ -21,9 +22,9 @@ class ThreadStackGraph extends PureComponent {
this._requestedAnimationFrame = true;
window.requestAnimationFrame(() => {
this._requestedAnimationFrame = false;
- if (this.refs.canvas) {
+ if (this._canvas) {
timeCode('ThreadStackGraph render', () => {
- this.drawCanvas(this.refs.canvas);
+ this.drawCanvas(this._canvas);
});
}
});
@@ -31,13 +32,13 @@ class ThreadStackGraph extends PureComponent {
}
componentDidMount() {
- const win = this.refs.canvas.ownerDocument.defaultView;
+ const win = this._canvas.ownerDocument.defaultView;
win.addEventListener('resize', this._resizeListener);
this.forceUpdate(); // for initial size
}
componentWillUnmount() {
- const win = this.refs.canvas.ownerDocument.defaultView;
+ const win = this._canvas.ownerDocument.defaultView;
win.removeEventListener('resize', this._resizeListener);
}
@@ -121,7 +122,7 @@ class ThreadStackGraph extends PureComponent {
_onMouseUp(e) {
if (this.props.onClick) {
const { rangeStart, rangeEnd } = this.props;
- const r = this.refs.canvas.getBoundingClientRect();
+ const r = this._canvas.getBoundingClientRect();
const x = e.pageX - r.left;
const time = rangeStart + x / r.width * (rangeEnd - rangeStart);
@@ -145,7 +146,7 @@ class ThreadStackGraph extends PureComponent {
`${this.props.className}Canvas`,
'threadStackGraphCanvas'
)}
- ref="canvas"
+ ref={ref => (this._canvas = ref)}
onMouseUp={this._onMouseUp}
/>
diff --git a/src/components/markers/ProfileMarkersView.js b/src/components/markers/ProfileMarkersView.js
index 60ea0aa5ce..1b46707cb9 100644
--- a/src/components/markers/ProfileMarkersView.js
+++ b/src/components/markers/ProfileMarkersView.js
@@ -99,6 +99,7 @@ class ProfileMarkersView extends PureComponent {
this._expandedNodeIds = [];
this._onExpandedNodeIdsChange = () => {};
this._onSelectionChange = this._onSelectionChange.bind(this);
+ this._treeView = null;
}
componentDidMount() {
@@ -106,7 +107,7 @@ class ProfileMarkersView extends PureComponent {
}
focus() {
- this.refs.treeView.focus();
+ this._treeView.focus();
}
_onSelectionChange(selectedMarker) {
@@ -127,7 +128,7 @@ class ProfileMarkersView extends PureComponent {
onExpandedNodesChange={this._onExpandedNodeIdsChange}
selectedNodeId={selectedMarker}
expandedNodeIds={this._expandedNodeIds}
- ref="treeView"
+ ref={ref => (this._treeView = ref)}
/>
);
diff --git a/src/components/summary/SummarizeLineGraph.js b/src/components/summary/SummarizeLineGraph.js
index 73353c22f6..407b56be14 100644
--- a/src/components/summary/SummarizeLineGraph.js
+++ b/src/components/summary/SummarizeLineGraph.js
@@ -87,11 +87,13 @@ class SummarizeLineGraph extends PureComponent {
x2="0%"
y2="100%"
>
- // Red
- // Dark Green
- // Light Green
- //
- Transparent
+
+
+
+
;
}
diff --git a/src/components/timeline/TimelineMarkerCanvas.js b/src/components/timeline/TimelineMarkerCanvas.js
index 8c82929d7c..d7e42a77f8 100644
--- a/src/components/timeline/TimelineMarkerCanvas.js
+++ b/src/components/timeline/TimelineMarkerCanvas.js
@@ -320,7 +320,9 @@ class TimelineMarkerCanvas extends PureComponent {
switch (data.type) {
case 'UserTiming': {
tooltipName = data.name;
+ break;
}
+ default:
}
}
diff --git a/src/components/timeline/TimelineViewport.js b/src/components/timeline/TimelineViewport.js
index 51902f0c7a..74ea55afb7 100644
--- a/src/components/timeline/TimelineViewport.js
+++ b/src/components/timeline/TimelineViewport.js
@@ -574,6 +574,7 @@ function getNormalizedScrollDelta(
return delta * pageHeight;
case DOM_DELTA_LINE:
return delta * SCROLL_LINE_SIZE;
+ default:
}
// Scroll by pixel.
return delta;
diff --git a/src/profile-logic/marker-timing.js b/src/profile-logic/marker-timing.js
index e0b3ed5c07..000ae59d75 100644
--- a/src/profile-logic/marker-timing.js
+++ b/src/profile-logic/marker-timing.js
@@ -129,6 +129,7 @@ function computeMarkerLabel(data: MarkerPayload): string {
switch (data.type) {
case 'UserTiming':
return (data: UserTimingMarkerPayload).name;
+ default:
}
}
diff --git a/src/profile-logic/profile-data.js b/src/profile-logic/profile-data.js
index 9009f028f7..6605249c43 100644
--- a/src/profile-logic/profile-data.js
+++ b/src/profile-logic/profile-data.js
@@ -198,8 +198,9 @@ export function filterThreadByImplementation(
thread,
funcIndex => funcTable.isJS[funcIndex]
);
+ default:
+ return thread;
}
- return thread;
}
function _filterThreadByFunc(
@@ -937,8 +938,11 @@ export function getFriendlyThreadName(
case 'plugin':
label = 'Plugin';
break;
+ default:
+ // should we throw here ?
}
break;
+ default:
}
if (!label) {
diff --git a/src/profile-logic/profile-store.js b/src/profile-logic/profile-store.js
index 3bc7ea2855..6269105eb1 100644
--- a/src/profile-logic/profile-store.js
+++ b/src/profile-logic/profile-store.js
@@ -14,13 +14,17 @@ export function uploadBinaryProfileData(
resolve(xhr.responseText);
} else {
reject(
- `xhr onload with status != 200, xhr.statusText: ${xhr.statusText}`
+ new Error(
+ `xhr onload with status != 200, xhr.statusText: ${xhr.statusText}`
+ )
);
}
};
xhr.onerror = () => {
- reject(`xhr onerror was called, xhr.statusText: ${xhr.statusText}`);
+ reject(
+ new Error(`xhr onerror was called, xhr.statusText: ${xhr.statusText}`)
+ );
};
xhr.upload.onprogress = e => {
diff --git a/src/reducers/flame-chart.js b/src/reducers/flame-chart.js
index 371c6c5d2c..9efde28f38 100644
--- a/src/reducers/flame-chart.js
+++ b/src/reducers/flame-chart.js
@@ -18,16 +18,18 @@ function categoryColorStrategy(
switch (action.type) {
case 'CHANGE_FLAME_CHART_COLOR_STRATEGY':
return action.getCategory;
+ default:
+ return state;
}
- return state;
}
function labelingStrategy(state: GetLabel = getFunctionName, action: Action) {
switch (action.type) {
case 'CHANGE_FLAME_CHART_LABELING_STRATEGY':
return action.getLabel;
+ default:
+ return state;
}
- return state;
}
export default combineReducers({ categoryColorStrategy, labelingStrategy });
diff --git a/src/reducers/timeline-view.js b/src/reducers/timeline-view.js
index c23f59947b..a204bd0ac9 100644
--- a/src/reducers/timeline-view.js
+++ b/src/reducers/timeline-view.js
@@ -27,8 +27,9 @@ function isFlameChartExpanded(
newState.set(action.threadIndex, action.isExpanded);
return newState;
}
+ default:
+ return state;
}
- return state;
}
function areMarkersExpanded(
@@ -41,8 +42,9 @@ function areMarkersExpanded(
newState.set(action.threadIndex, action.isExpanded);
return newState;
}
+ default:
+ return state;
}
- return state;
}
function hasZoomedViaMousewheel(state: boolean = false, action: Action) {
@@ -50,8 +52,9 @@ function hasZoomedViaMousewheel(state: boolean = false, action: Action) {
case 'HAS_ZOOMED_VIA_MOUSEWHEEL': {
return true;
}
+ default:
+ return state;
}
- return state;
}
export default combineReducers({
diff --git a/src/test/fixtures/fake-symbol-store.js b/src/test/fixtures/fake-symbol-store.js
index 8b2bac0ec6..9e5cd2d1fd 100644
--- a/src/test/fixtures/fake-symbol-store.js
+++ b/src/test/fixtures/fake-symbol-store.js
@@ -19,7 +19,7 @@ export class FakeSymbolStore {
if (lib.debugName in this._symbolTables) {
return Promise.resolve(this._symbolTables[lib.debugName].addrs);
}
- return Promise.reject();
+ return Promise.reject(new Error());
}
getSymbolsForAddressesInLib(requestedAddressesIndices, lib) {
@@ -29,6 +29,6 @@ export class FakeSymbolStore {
requestedAddressesIndices.map(index => syms[index])
);
}
- return Promise.reject();
+ return Promise.reject(new Error());
}
}
diff --git a/src/url-handling.js b/src/url-handling.js
index eec6b5e308..7be54c8971 100644
--- a/src/url-handling.js
+++ b/src/url-handling.js
@@ -91,6 +91,7 @@ export function urlFromState(urlState: URLState) {
? null
: undefined;
break;
+ default:
}
const qString = queryString.stringify(query);
return pathname + (qString ? '?' + qString : '');
@@ -106,9 +107,9 @@ function toDataSourceEnum(str: string): DataSource {
case 'public':
case 'from-url':
return str;
+ default:
+ throw new Error(`Unexpected data source ${str}`);
}
-
- throw new Error('unexpected data source');
}
/**
diff --git a/src/utils/async-storage.js b/src/utils/async-storage.js
index 1baf7ddc1e..ebe6e97fbb 100644
--- a/src/utils/async-storage.js
+++ b/src/utils/async-storage.js
@@ -87,7 +87,9 @@ export function getStore(dbName) {
};
req = store.get(key);
req.onerror = function getItemOnError() {
- reject('Error in asyncStorage.getItem(): ', req.error.name);
+ reject(
+ new Error(`Error in asyncStorage.getItem(): ${req.error.name}`)
+ );
};
},
reject
@@ -103,7 +105,9 @@ export function getStore(dbName) {
store.transaction.oncomplete = resolve;
const req = store.put(value, key);
req.onerror = function setItemOnError() {
- reject('Error in asyncStorage.setItem(): ', req.error.name);
+ reject(
+ new Error(`Error in asyncStorage.setItem(): ${req.error.name}`)
+ );
};
},
reject
@@ -119,7 +123,9 @@ export function getStore(dbName) {
store.transaction.oncomplete = resolve;
const req = store.delete(key);
req.onerror = function removeItemOnError() {
- reject('Error in asyncStorage.removeItem(): ', req.error.name);
+ reject(
+ new Error(`Error in asyncStorage.removeItem(): ${req.error.name}`)
+ );
};
},
reject
@@ -135,7 +141,9 @@ export function getStore(dbName) {
store.transaction.oncomplete = resolve;
const req = store.clear();
req.onerror = function clearOnError() {
- reject('Error in asyncStorage.clear(): ', req.error.name);
+ reject(
+ new Error(`Error in asyncStorage.clear(): ${req.error.name}`)
+ );
};
},
reject
@@ -154,7 +162,9 @@ export function getStore(dbName) {
};
req = store.count();
req.onerror = function lengthOnError() {
- reject('Error in asyncStorage.length(): ', req.error.name);
+ reject(
+ new Error(`Error in asyncStorage.length(): ${req.error.name}`)
+ );
};
},
reject
@@ -196,7 +206,7 @@ export function getStore(dbName) {
cursor.advance(n);
};
req.onerror = function keyOnError() {
- reject('Error in asyncStorage.key(): ', req.error.name);
+ reject(new Error(`Error in asyncStorage.key(): ${req.error.name}`));
};
},
reject
diff --git a/src/utils/promise-worker.js b/src/utils/promise-worker.js
index 2c32de62bf..f43638d247 100644
--- a/src/utils/promise-worker.js
+++ b/src/utils/promise-worker.js
@@ -4,9 +4,7 @@
import Worker from './worker-factory';
export function provideHostSide(workerFilename, methods) {
- return function HostClass() {
- const constructorArguments = Array.from(arguments);
-
+ return function HostClass(...constructorArguments) {
const worker = new Worker(workerFilename);
const callbacks = new Map(); // msgID -> { resolve, reject }
let nextMessageID = 0;
diff --git a/yarn.lock b/yarn.lock
index 6268790590..e662675369 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -107,10 +107,14 @@ ansi-escape-sequences@^3.0.0:
dependencies:
array-back "^1.0.3"
-ansi-escapes@^1.0.0, ansi-escapes@^1.1.0, ansi-escapes@^1.4.0:
+ansi-escapes@^1.0.0, ansi-escapes@^1.4.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e"
+ansi-escapes@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-2.0.0.tgz#5bae52be424878dd9783e8910e3fc2922e83c81b"
+
ansi-html@0.0.7:
version "0.0.7"
resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e"
@@ -256,13 +260,6 @@ array.prototype.find@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/array.prototype.find/-/array.prototype.find-1.0.0.tgz#52d81768eb1c5692577ee29d96ca603dc76eb3a6"
-array.prototype.find@^2.0.1:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/array.prototype.find/-/array.prototype.find-2.0.4.tgz#556a5c5362c08648323ddaeb9de9d14bc1864c90"
- dependencies:
- define-properties "^1.1.2"
- es-abstract "^1.7.0"
-
array.prototype.findindex@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/array.prototype.findindex/-/array.prototype.findindex-1.0.0.tgz#1966efa59f7cd281114d37ef542f51201e72b8fd"
@@ -363,7 +360,7 @@ babel-cli@^6.24.0:
optionalDependencies:
chokidar "^1.6.1"
-babel-code-frame@^6.11.0, babel-code-frame@^6.16.0, babel-code-frame@^6.22.0:
+babel-code-frame@^6.11.0, babel-code-frame@^6.22.0:
version "6.22.0"
resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.22.0.tgz#027620bee567a88c32561574e7fd0801d33118e4"
dependencies:
@@ -1345,12 +1342,18 @@ clean-css@4.1.x:
dependencies:
source-map "0.5.x"
-cli-cursor@^1.0.1, cli-cursor@^1.0.2:
+cli-cursor@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-1.0.2.tgz#64da3f7d56a54412e59794bd62dc35295e8f2987"
dependencies:
restore-cursor "^1.0.1"
+cli-cursor@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5"
+ dependencies:
+ restore-cursor "^2.0.0"
+
cli-spinners@^0.1.2:
version "0.1.2"
resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-0.1.2.tgz#bb764d88e185fb9e1e6a2a1f19772318f605e31c"
@@ -1519,7 +1522,7 @@ concat-map@0.0.1:
version "0.0.1"
resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
-concat-stream@^1.5.2:
+concat-stream@^1.6.0:
version "1.6.0"
resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.0.tgz#0aac662fd52be78964d5532f694784e70110acf7"
dependencies:
@@ -1984,7 +1987,7 @@ dns-txt@^2.0.2:
dependencies:
buffer-indexof "^1.0.0"
-doctrine@1.5.0, doctrine@^1.2.2:
+doctrine@1.5.0:
version "1.5.0"
resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa"
dependencies:
@@ -2150,7 +2153,7 @@ error-stack-parser@^1.3.6:
dependencies:
stackframe "^0.3.1"
-es-abstract@^1.4.3, es-abstract@^1.5.0, es-abstract@^1.7.0:
+es-abstract@^1.4.3, es-abstract@^1.5.0:
version "1.7.0"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.7.0.tgz#dfade774e01bfcd97f96180298c449c8623fb94c"
dependencies:
@@ -2247,22 +2250,12 @@ escope@^3.6.0:
esrecurse "^4.1.0"
estraverse "^4.1.1"
-eslint-config-google@^0.6.0:
- version "0.6.0"
- resolved "https://registry.yarnpkg.com/eslint-config-google/-/eslint-config-google-0.6.0.tgz#c542ec18fb3247983ac16bba31662d01625b763f"
- dependencies:
- eslint-config-xo "^0.13.0"
-
-eslint-config-prettier@^2.2.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-2.2.0.tgz#ca47663852789a75c10feba673e802cc1eff085f"
+eslint-config-prettier@^2.3.0:
+ version "2.3.0"
+ resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-2.3.0.tgz#b75b1eabea0c8b97b34403647ee25db349b9d8a0"
dependencies:
get-stdin "^5.0.1"
-eslint-config-xo@^0.13.0:
- version "0.13.0"
- resolved "https://registry.yarnpkg.com/eslint-config-xo/-/eslint-config-xo-0.13.0.tgz#f916765432ba67d2fc7a7177b8bcfef3f6eb0564"
-
eslint-import-resolver-node@^0.3.1:
version "0.3.1"
resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.1.tgz#4422574cde66a9a7b099938ee4d508a199e0e3cc"
@@ -2305,57 +2298,60 @@ eslint-plugin-prettier@^2.1.2:
fast-diff "^1.1.1"
jest-docblock "^20.0.1"
-eslint-plugin-react@^6.4.0:
- version "6.10.3"
- resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-6.10.3.tgz#c5435beb06774e12c7db2f6abaddcbf900cd3f78"
+eslint-plugin-react@^7.1.0:
+ version "7.1.0"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.1.0.tgz#27770acf39f5fd49cd0af4083ce58104eb390d4c"
dependencies:
- array.prototype.find "^2.0.1"
- doctrine "^1.2.2"
+ doctrine "^2.0.0"
has "^1.0.1"
- jsx-ast-utils "^1.3.4"
- object.assign "^4.0.4"
+ jsx-ast-utils "^1.4.1"
-eslint@^3.10.2:
- version "3.19.0"
- resolved "https://registry.yarnpkg.com/eslint/-/eslint-3.19.0.tgz#c8fc6201c7f40dd08941b87c085767386a679acc"
+eslint-scope@^3.7.1:
+ version "3.7.1"
+ resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.1.tgz#3d63c3edfda02e06e01a452ad88caacc7cdcb6e8"
dependencies:
- babel-code-frame "^6.16.0"
+ esrecurse "^4.1.0"
+ estraverse "^4.1.1"
+
+eslint@^4.1.1:
+ version "4.1.1"
+ resolved "https://registry.yarnpkg.com/eslint/-/eslint-4.1.1.tgz#facbdfcfe3e0facd3a8b80dc98c4e6c13ae582df"
+ dependencies:
+ babel-code-frame "^6.22.0"
chalk "^1.1.3"
- concat-stream "^1.5.2"
- debug "^2.1.1"
+ concat-stream "^1.6.0"
+ debug "^2.6.8"
doctrine "^2.0.0"
- escope "^3.6.0"
- espree "^3.4.0"
+ eslint-scope "^3.7.1"
+ espree "^3.4.3"
esquery "^1.0.0"
estraverse "^4.2.0"
esutils "^2.0.2"
file-entry-cache "^2.0.0"
- glob "^7.0.3"
- globals "^9.14.0"
- ignore "^3.2.0"
+ glob "^7.1.2"
+ globals "^9.17.0"
+ ignore "^3.3.3"
imurmurhash "^0.1.4"
- inquirer "^0.12.0"
- is-my-json-valid "^2.10.0"
+ inquirer "^3.0.6"
+ is-my-json-valid "^2.16.0"
is-resolvable "^1.0.0"
- js-yaml "^3.5.1"
- json-stable-stringify "^1.0.0"
+ js-yaml "^3.8.4"
+ json-stable-stringify "^1.0.1"
levn "^0.3.0"
- lodash "^4.0.0"
- mkdirp "^0.5.0"
+ lodash "^4.17.4"
+ minimatch "^3.0.2"
+ mkdirp "^0.5.1"
natural-compare "^1.4.0"
optionator "^0.8.2"
- path-is-inside "^1.0.1"
- pluralize "^1.2.1"
- progress "^1.1.8"
- require-uncached "^1.0.2"
- shelljs "^0.7.5"
- strip-bom "^3.0.0"
+ path-is-inside "^1.0.2"
+ pluralize "^4.0.0"
+ progress "^2.0.0"
+ require-uncached "^1.0.3"
strip-json-comments "~2.0.1"
- table "^3.7.8"
+ table "^4.0.1"
text-table "~0.2.0"
- user-home "^2.0.0"
-espree@^3.4.0:
+espree@^3.4.3:
version "3.4.3"
resolved "https://registry.yarnpkg.com/espree/-/espree-3.4.3.tgz#2910b5ccd49ce893c2ffffaab4fd8b3a31b82374"
dependencies:
@@ -2509,6 +2505,14 @@ extend@~3.0.0:
version "3.0.1"
resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444"
+external-editor@^2.0.4:
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.0.4.tgz#1ed9199da9cbfe2ef2f7a31b2fde8b0d12368972"
+ dependencies:
+ iconv-lite "^0.4.17"
+ jschardet "^1.4.2"
+ tmp "^0.0.31"
+
extglob@^0.3.1:
version "0.3.2"
resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1"
@@ -2590,13 +2594,19 @@ fetch-jsonp@^1.0.2:
version "1.1.1"
resolved "https://registry.yarnpkg.com/fetch-jsonp/-/fetch-jsonp-1.1.1.tgz#b7b9fd7d3a4f74d38389f5ea2f2d0f46c34510e4"
-figures@^1.3.5, figures@^1.7.0:
+figures@^1.7.0:
version "1.7.0"
resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e"
dependencies:
escape-string-regexp "^1.0.5"
object-assign "^4.1.0"
+figures@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962"
+ dependencies:
+ escape-string-regexp "^1.0.5"
+
file-entry-cache@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-2.0.0.tgz#c392990c3e684783d838b8c84a45d8a048458361"
@@ -2900,7 +2910,7 @@ glob@7.0.5:
once "^1.3.0"
path-is-absolute "^1.0.0"
-glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.0.6, glob@^7.1.1:
+glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.0.6, glob@^7.1.1, glob@^7.1.2:
version "7.1.2"
resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15"
dependencies:
@@ -2918,7 +2928,7 @@ global@^4.3.0:
min-document "^2.19.0"
process "~0.5.1"
-globals@^9.0.0, globals@^9.14.0:
+globals@^9.0.0, globals@^9.17.0:
version "9.18.0"
resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a"
@@ -3210,6 +3220,10 @@ iconv-lite@0.4.13, iconv-lite@~0.4.13:
version "0.4.13"
resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.13.tgz#1f88aba4ab0b1508e8312acc39345f36e992e2f2"
+iconv-lite@^0.4.17:
+ version "0.4.18"
+ resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.18.tgz#23d8656b16aae6742ac29732ea8f0336a4789cf2"
+
icss-replace-symbols@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz#06ea6f83679a7749e386cfe1fe812ae5db223ded"
@@ -3224,7 +3238,7 @@ ieee754@^1.1.4:
version "1.1.8"
resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.8.tgz#be33d40ac10ef1926701f6f08a2d86fbfd1ad3e4"
-ignore@^3.2.0:
+ignore@^3.3.3:
version "3.3.3"
resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.3.tgz#432352e57accd87ab3110e82d3fea0e47812156d"
@@ -3273,21 +3287,22 @@ ini@~1.3.0:
version "1.3.4"
resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e"
-inquirer@^0.12.0:
- version "0.12.0"
- resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-0.12.0.tgz#1ef2bfd63504df0bc75785fff8c2c41df12f077e"
+inquirer@^3.0.6:
+ version "3.1.1"
+ resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-3.1.1.tgz#87621c4fba4072f48a8dd71c9f9df6f100b2d534"
dependencies:
- ansi-escapes "^1.1.0"
- ansi-regex "^2.0.0"
+ ansi-escapes "^2.0.0"
chalk "^1.0.0"
- cli-cursor "^1.0.1"
+ cli-cursor "^2.1.0"
cli-width "^2.0.0"
- figures "^1.3.5"
+ external-editor "^2.0.4"
+ figures "^2.0.0"
lodash "^4.3.0"
- readline2 "^1.0.1"
- run-async "^0.1.0"
- rx-lite "^3.1.2"
- string-width "^1.0.1"
+ mute-stream "0.0.7"
+ run-async "^2.2.0"
+ rx-lite "^4.0.8"
+ rx-lite-aggregates "^4.0.8"
+ string-width "^2.0.0"
strip-ansi "^3.0.0"
through "^2.3.6"
@@ -3411,7 +3426,7 @@ is-glob@^3.1.0:
dependencies:
is-extglob "^2.1.0"
-is-my-json-valid@^2.10.0:
+is-my-json-valid@^2.16.0:
version "2.16.0"
resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.16.0.tgz#f079dd9bfdae65ee2038aae8acbc86ab109e3693"
dependencies:
@@ -3817,7 +3832,7 @@ js-tokens@^3.0.0:
version "3.0.2"
resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b"
-js-yaml@^3.4.3, js-yaml@^3.5.1, js-yaml@^3.7.0:
+js-yaml@^3.4.3, js-yaml@^3.7.0, js-yaml@^3.8.4:
version "3.8.4"
resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.8.4.tgz#520b4564f86573ba96662af85a8cafa7b4b5a6f6"
dependencies:
@@ -3835,6 +3850,10 @@ jsbn@~0.1.0:
version "0.1.1"
resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513"
+jschardet@^1.4.2:
+ version "1.4.2"
+ resolved "https://registry.yarnpkg.com/jschardet/-/jschardet-1.4.2.tgz#2aa107f142af4121d145659d44f50830961e699a"
+
jsdom@^9.12.0:
version "9.12.0"
resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-9.12.0.tgz#e8c546fffcb06c00d4833ca84410fed7f8a097d4"
@@ -3885,7 +3904,7 @@ json-schema@0.2.3:
version "0.2.3"
resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13"
-json-stable-stringify@^1.0.0, json-stable-stringify@^1.0.1:
+json-stable-stringify@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af"
dependencies:
@@ -3930,7 +3949,7 @@ jsprim@^1.2.2:
json-schema "0.2.3"
verror "1.3.6"
-jsx-ast-utils@^1.3.4:
+jsx-ast-utils@^1.4.1:
version "1.4.1"
resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-1.4.1.tgz#3867213e8dd79bf1e8f2300c0cfc1efb182c0df1"
@@ -4327,7 +4346,7 @@ lodash.uniq@^4.5.0:
version "4.5.0"
resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773"
-lodash@^4.0.0, lodash@^4.14.0, lodash@^4.15.0, lodash@^4.17.2, lodash@^4.17.3, lodash@^4.2.0, lodash@^4.2.1, lodash@^4.3.0, lodash@^4.6.1:
+lodash@^4.0.0, lodash@^4.14.0, lodash@^4.15.0, lodash@^4.17.2, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.2.0, lodash@^4.2.1, lodash@^4.3.0, lodash@^4.6.1:
version "4.17.4"
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae"
@@ -4506,6 +4525,10 @@ mime@1.3.4, mime@^1.2.11, mime@^1.3.4:
version "1.3.4"
resolved "https://registry.yarnpkg.com/mime/-/mime-1.3.4.tgz#115f9e3b6b3daf2959983cb38f149a2d40eb5d53"
+mimic-fn@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.1.0.tgz#e667783d92e89dbd342818b5230b9d62a672ad18"
+
min-document@^2.19.0:
version "2.19.0"
resolved "https://registry.yarnpkg.com/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685"
@@ -4540,7 +4563,7 @@ minimist@^1.1.0, minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284"
-mkdirp@0.5, mkdirp@0.5.1, mkdirp@0.5.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1:
+mkdirp@0.5, mkdirp@0.5.1, mkdirp@0.5.x, "mkdirp@>=0.5 0", mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1:
version "0.5.1"
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
dependencies:
@@ -4583,9 +4606,9 @@ multicast-dns@^6.0.1:
dns-packet "^1.0.1"
thunky "^0.1.0"
-mute-stream@0.0.5:
- version "0.0.5"
- resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.5.tgz#8fbfabb0a98a253d3184331f9e8deb7372fac6c0"
+mute-stream@0.0.7:
+ version "0.0.7"
+ resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab"
mz@^2.1.0, mz@^2.3.1:
version "2.6.0"
@@ -4809,18 +4832,10 @@ object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1:
version "4.1.1"
resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
-object-keys@^1.0.10, object-keys@^1.0.8:
+object-keys@^1.0.8:
version "1.0.11"
resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d"
-object.assign@^4.0.4:
- version "4.0.4"
- resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.0.4.tgz#b1c9cc044ef1b9fe63606fc141abbb32e14730cc"
- dependencies:
- define-properties "^1.1.2"
- function-bind "^1.1.0"
- object-keys "^1.0.10"
-
object.omit@^2.0.0:
version "2.0.1"
resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa"
@@ -4862,6 +4877,12 @@ onetime@^1.0.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/onetime/-/onetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789"
+onetime@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4"
+ dependencies:
+ mimic-fn "^1.0.0"
+
only@0.0.2:
version "0.0.2"
resolved "https://registry.yarnpkg.com/only/-/only-0.0.2.tgz#2afde84d03e50b9a8edc444e30610a70295edfb4"
@@ -4924,7 +4945,7 @@ os-locale@^1.4.0:
dependencies:
lcid "^1.0.0"
-os-tmpdir@^1.0.0, os-tmpdir@^1.0.1:
+os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
@@ -5026,7 +5047,7 @@ path-is-absolute@1.0.1, path-is-absolute@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
-path-is-inside@^1.0.1:
+path-is-inside@^1.0.1, path-is-inside@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53"
@@ -5116,9 +5137,9 @@ pkg-dir@^2.0.0:
dependencies:
find-up "^2.1.0"
-pluralize@^1.2.1:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-1.2.1.tgz#d1a21483fd22bb41e58a12fa3421823140897c45"
+pluralize@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-4.0.0.tgz#59b708c1c0190a2f692f1c7618c446b052fd1762"
portfinder@0.4.x:
version "0.4.0"
@@ -5431,9 +5452,9 @@ process@~0.5.1:
version "0.5.2"
resolved "https://registry.yarnpkg.com/process/-/process-0.5.2.tgz#1638d8a8e34c2f440a91db95ab9aeb677fc185cf"
-progress@^1.1.8:
- version "1.1.8"
- resolved "https://registry.yarnpkg.com/progress/-/progress-1.1.8.tgz#e260c78f6161cdd9b0e56cc3e0a85de17c7a57be"
+progress@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.0.tgz#8a1be366bf8fc23db2bd23f10c6fe920b4389d1f"
promise@^7.1.1:
version "7.3.1"
@@ -5761,26 +5782,12 @@ readdirp@^2.0.0:
readable-stream "^2.0.2"
set-immediate-shim "^1.0.1"
-readline2@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/readline2/-/readline2-1.0.1.tgz#41059608ffc154757b715d9989d199ffbf372e35"
- dependencies:
- code-point-at "^1.0.0"
- is-fullwidth-code-point "^1.0.0"
- mute-stream "0.0.5"
-
realistic-structured-clone@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/realistic-structured-clone/-/realistic-structured-clone-1.0.1.tgz#1abe82af0b80cd7b109fdaf5d29308032852d45d"
dependencies:
lodash.isplainobject "^3.0.2"
-rechoir@^0.6.2:
- version "0.6.2"
- resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384"
- dependencies:
- resolve "^1.1.6"
-
redbox-react@^1.2.2:
version "1.4.2"
resolved "https://registry.yarnpkg.com/redbox-react/-/redbox-react-1.4.2.tgz#7fe35d3c567301e97938cc7fd6a10918f424c6b4"
@@ -5958,7 +5965,7 @@ require-main-filename@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1"
-require-uncached@^1.0.2:
+require-uncached@^1.0.3:
version "1.0.3"
resolved "https://registry.yarnpkg.com/require-uncached/-/require-uncached-1.0.3.tgz#4e0d56d6c9662fd31e43011c4b95aa49955421d3"
dependencies:
@@ -5988,7 +5995,7 @@ resolve@1.1.7:
version "1.1.7"
resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b"
-resolve@^1.1.6, resolve@^1.2.0, resolve@^1.3.2:
+resolve@^1.2.0, resolve@^1.3.2:
version "1.3.3"
resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.3.3.tgz#655907c3469a8680dc2de3a275a8fdd69691f0e5"
dependencies:
@@ -6001,6 +6008,13 @@ restore-cursor@^1.0.1:
exit-hook "^1.0.0"
onetime "^1.0.0"
+restore-cursor@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf"
+ dependencies:
+ onetime "^2.0.0"
+ signal-exit "^3.0.2"
+
right-align@^0.1.1:
version "0.1.3"
resolved "https://registry.yarnpkg.com/right-align/-/right-align-0.1.3.tgz#61339b722fe6a3515689210d24e14c96148613ef"
@@ -6024,15 +6038,21 @@ ripemd160@^2.0.0, ripemd160@^2.0.1:
hash-base "^2.0.0"
inherits "^2.0.1"
-run-async@^0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/run-async/-/run-async-0.1.0.tgz#c8ad4a5e110661e402a7d21b530e009f25f8e389"
+run-async@^2.2.0:
+ version "2.3.0"
+ resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0"
dependencies:
- once "^1.3.0"
+ is-promise "^2.1.0"
-rx-lite@^3.1.2:
- version "3.1.2"
- resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-3.1.2.tgz#19ce502ca572665f3b647b10939f97fd1615f102"
+rx-lite-aggregates@^4.0.8:
+ version "4.0.8"
+ resolved "https://registry.yarnpkg.com/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz#753b87a89a11c95467c4ac1626c4efc4e05c67be"
+ dependencies:
+ rx-lite "*"
+
+rx-lite@*, rx-lite@^4.0.8:
+ version "4.0.8"
+ resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-4.0.8.tgz#0b1e11af8bc44836f04a6407e92da42467b79444"
rxjs@^5.0.0-beta.11:
version "5.4.1"
@@ -6168,19 +6188,11 @@ shell-quote@^1.6.1:
array-reduce "~0.0.0"
jsonify "~0.0.0"
-shelljs@^0.7.5:
- version "0.7.8"
- resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.7.8.tgz#decbcf874b0d1e5fb72e14b164a9683048e9acb3"
- dependencies:
- glob "^7.0.0"
- interpret "^1.0.0"
- rechoir "^0.6.2"
-
shellwords@^0.1.0:
version "0.1.0"
resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.0.tgz#66afd47b6a12932d9071cbfd98a52e785cd0ba14"
-signal-exit@^3.0.0:
+signal-exit@^3.0.0, signal-exit@^3.0.2:
version "3.0.2"
resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d"
@@ -6565,6 +6577,17 @@ table@^3.7.8:
slice-ansi "0.0.4"
string-width "^2.0.0"
+table@^4.0.1:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/table/-/table-4.0.1.tgz#a8116c133fac2c61f4a420ab6cdf5c4d61f0e435"
+ dependencies:
+ ajv "^4.7.0"
+ ajv-keywords "^1.0.0"
+ chalk "^1.1.1"
+ lodash "^4.0.0"
+ slice-ansi "0.0.4"
+ string-width "^2.0.0"
+
tapable@^0.2.5, tapable@~0.2.5:
version "0.2.6"
resolved "https://registry.yarnpkg.com/tapable/-/tapable-0.2.6.tgz#206be8e188860b514425375e6f1ae89bfb01fd8d"
@@ -6659,6 +6682,12 @@ timers-browserify@^2.0.2:
dependencies:
setimmediate "^1.0.4"
+tmp@^0.0.31:
+ version "0.0.31"
+ resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.31.tgz#8f38ab9438e17315e5dbd8b3657e8bfb277ae4a7"
+ dependencies:
+ os-tmpdir "~1.0.1"
+
tmpl@1.0.x:
version "1.0.4"
resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.4.tgz#23640dd7b42d00433911140820e5cf440e521dd1"
@@ -6852,12 +6881,6 @@ user-home@^1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/user-home/-/user-home-1.1.1.tgz#2b5be23a32b63a7c9deb8d0f28d485724a3df190"
-user-home@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/user-home/-/user-home-2.0.0.tgz#9c70bfd8169bc1dcbf48604e0f04b8b49cde9e9f"
- dependencies:
- os-homedir "^1.0.0"
-
util-deprecate@~1.0.1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"