diff --git a/frontend/package.json b/frontend/package.json index 37c348b3b8..81ac153da3 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -67,10 +67,10 @@ "babel-preset-stage-0": "^6.5.0", "babel-preset-stage-2": "^6.13.0", "css-loader": "^0.25.0", - "eslint": "^3.4.0", - "eslint-config-finn": "1.0.0-alpha.11", - "eslint-config-finn-react": "^1.0.0-alpha.2", - "eslint-plugin-react": "^6.2.0", + "eslint": "^4.1.1", + "eslint-config-finn": "^2.0.0", + "eslint-config-finn-react": "^2.0.0", + "eslint-plugin-react": "^7.1.0", "extract-text-webpack-plugin": "^1.0.1", "identity-obj-proxy": "^3.0.0", "jest": "^19.0.2", diff --git a/frontend/src/component/app.jsx b/frontend/src/component/app.jsx index a95a3592ea..2b59425911 100644 --- a/frontend/src/component/app.jsx +++ b/frontend/src/component/app.jsx @@ -146,42 +146,42 @@ export default class App extends Component { - - - - {this.props.children} - - - - + diff --git a/frontend/src/component/application/application-edit-component.js b/frontend/src/component/application/application-edit-component.js index 56e67c7227..d5ec439592 100644 --- a/frontend/src/component/application/application-edit-component.js +++ b/frontend/src/component/application/application-edit-component.js @@ -69,25 +69,25 @@ class ClientApplications extends PureComponent {
Toggles

- {seenToggles.map(({ name, description, enabled, notFound }, i) => - (notFound ? - - - - {name} - - - : - - } - subtitle={shorten(description, 60)}> - - {shorten(name, 50)} - - - ) - )} + {seenToggles.map(({ name, description, enabled, notFound }, i) => + (notFound ? + + + + {name} + + + : + + } + subtitle={shorten(description, 60)}> + + {shorten(name, 50)} + + + ) + )} @@ -96,20 +96,20 @@ class ClientApplications extends PureComponent { {strategies.map(({ name, description, notFound }, i) => ( notFound ? - - - - {name} - - - : - - - - {shorten(name, 50)} - - - + + + + {name} + + + : + + + + {shorten(name, 50)} + + + ))} @@ -117,17 +117,17 @@ class ClientApplications extends PureComponent {
{instances.length} Instances registered

- {instances.map(({ instanceId, clientIp, lastSeen }, i) => ( - - {clientIp} last seen at {formatFullDateTime(lastSeen)} - }> - {instanceId} - - - ))} + {instances.map(({ instanceId, clientIp, lastSeen }, i) => ( + + {clientIp} last seen at {formatFullDateTime(lastSeen)} + }> + {instanceId} + + + ))} ) : ( diff --git a/frontend/src/component/application/application-list-component.js b/frontend/src/component/application/application-list-component.js index cdbf1a1f68..6d77846d9e 100644 --- a/frontend/src/component/application/application-list-component.js +++ b/frontend/src/component/application/application-list-component.js @@ -3,7 +3,6 @@ import { ProgressBar, Card } from 'react-mdl'; import { AppsLinkList, styles as commonStyles } from '../common'; class ClientStrategies extends Component { - componentDidMount () { this.props.fetchAll(); } diff --git a/frontend/src/component/archive/archive-list-component.jsx b/frontend/src/component/archive/archive-list-component.jsx index 1ad902bea7..3f0f881798 100644 --- a/frontend/src/component/archive/archive-list-component.jsx +++ b/frontend/src/component/archive/archive-list-component.jsx @@ -17,24 +17,24 @@ class ArchiveList extends Component { { archive.length > 0 ? -
- - ( - revive(reviveName)} /> - )}>Revive - (v ? 'Yes' : '-')}> +
+ + ( + revive(reviveName)} /> + )}>Revive + (v ? 'Yes' : '-')}> Enabled - Toggle name - Created - -
: -
+ Toggle name + Created + +
: +

No archived feature toggles, go see active toggles here -
+
}
); diff --git a/frontend/src/component/client-instance/client-instance-component.js b/frontend/src/component/client-instance/client-instance-component.js index bdc070f7be..c6ce115894 100644 --- a/frontend/src/component/client-instance/client-instance-component.js +++ b/frontend/src/component/client-instance/client-instance-component.js @@ -1,5 +1,5 @@ import React, { Component, PropTypes } from 'react'; -import { DataTable, TableHeader } from 'react-mdl'; +import { DataTable, TableHeader } from 'react-mdl'; class ClientStrategies extends Component { static propTypes () { diff --git a/frontend/src/component/common/index.js b/frontend/src/component/common/index.js index 3f1bfe121b..984ac78358 100644 --- a/frontend/src/component/common/index.js +++ b/frontend/src/component/common/index.js @@ -15,28 +15,28 @@ export const shorten = (str, len = 50) => (str && str.length > len ? `${str.subs export const AppsLinkList = ({ apps }) => ( - {apps.length > 0 && apps.map(({ appName, description = '-', icon = 'apps' }) => ( - - - - - {appName} - {description} - - - - ))} + {apps.length > 0 && apps.map(({ appName, description = '-', icon = 'apps' }) => ( + + + + + {appName} + {description} + + + + ))} ); export const HeaderTitle = ({ title, actions, subtitle }) => (
-
-
{title}
- {subtitle && {subtitle}} -
+
+
{title}
+ {subtitle && {subtitle}} +
- {actions &&
{actions}
} + {actions &&
{actions}
}
); @@ -78,15 +78,15 @@ export const SwitchWithLabel = ({ onChange, checked, children, ...switchProps }) export const TogglesLinkList = ({ toggles }) => ( - {toggles.length > 0 && toggles.map(({ name, description = '-', icon = 'toggle' }) => ( - - - - {name} - - - - ))} + {toggles.length > 0 && toggles.map(({ name, description = '-', icon = 'toggle' }) => ( + + + + {name} + + + + ))} ); @@ -103,7 +103,7 @@ export function getIcon (type) { export const IconLink = ({ url, icon }) => ( - + ); diff --git a/frontend/src/component/error/error-component.jsx b/frontend/src/component/error/error-component.jsx index 1dc21f6597..59e2bd8dde 100644 --- a/frontend/src/component/error/error-component.jsx +++ b/frontend/src/component/error/error-component.jsx @@ -1,6 +1,6 @@ import React, { PropTypes } from 'react'; -import { Snackbar, Icon } from 'react-mdl'; +import { Snackbar, Icon } from 'react-mdl'; class ErrorComponent extends React.Component { static propTypes () { diff --git a/frontend/src/component/error/error-container.jsx b/frontend/src/component/error/error-container.jsx index 04dd974fd0..53452c42fd 100644 --- a/frontend/src/component/error/error-container.jsx +++ b/frontend/src/component/error/error-container.jsx @@ -7,7 +7,7 @@ const mapDispatchToProps = { muteError, }; -const mapStateToProps = (state) => ({ +const mapStateToProps = (state) => ({ errors: state.error.get('list').toArray(), }); diff --git a/frontend/src/component/feature/feature-list-item-component.jsx b/frontend/src/component/feature/feature-list-item-component.jsx index 7de2e0e4ac..97e5476a1e 100644 --- a/frontend/src/component/feature/feature-list-item-component.jsx +++ b/frontend/src/component/feature/feature-list-item-component.jsx @@ -27,7 +27,7 @@ const Feature = ({ const remainingStrategies = strategies.length - strategiesToShow; const strategyChips = strategies && strategies.slice(0, strategiesToShow).map((s, i) => - {s.name}); + {s.name}); const summaryChip = remainingStrategies > 0 && +{remainingStrategies}; diff --git a/frontend/src/component/feature/form-add-container.jsx b/frontend/src/component/feature/form-add-container.jsx index b299c2e2b7..ef1c66191a 100644 --- a/frontend/src/component/feature/form-add-container.jsx +++ b/frontend/src/component/feature/form-add-container.jsx @@ -58,7 +58,7 @@ const prepare = (methods, dispatch) => { methods.validateName = (featureToggleName) => { validateName(featureToggleName) - .then(() => methods.setValue('nameError', undefined)) + .then(() => methods.setValue('nameError', undefined)) .catch((err) => methods.setValue('nameError', err.message)); }; diff --git a/frontend/src/component/feature/form-edit-container.jsx b/frontend/src/component/feature/form-edit-container.jsx index 24a7599793..4c9b359b79 100644 --- a/frontend/src/component/feature/form-edit-container.jsx +++ b/frontend/src/component/feature/form-edit-container.jsx @@ -25,7 +25,7 @@ const mapStateToProps = createMapper({ }, }); -const prepare = (methods, dispatch) => { +const prepare = (methods, dispatch) => { methods.onSubmit = (input) => ( (e) => { e.preventDefault(); @@ -35,7 +35,7 @@ const prepare = (methods, dispatch) => { delete s.id; }); } - // TODO: should add error handling + // TODO: should add error handling requestUpdateFeatureToggle(input)(dispatch) .then(() => methods.clear()) .then(() => hashHistory.push(`/features/view/${input.name}`)); diff --git a/frontend/src/component/feature/form/index.jsx b/frontend/src/component/feature/form/index.jsx index 11720b050d..e04f40ebcd 100644 --- a/frontend/src/component/feature/form/index.jsx +++ b/frontend/src/component/feature/form/index.jsx @@ -13,7 +13,6 @@ const trim = (value) => { }; class AddFeatureToggleComponent extends Component { - componentWillMount () { // TODO unwind this stuff if (this.props.initCallRequired === true) { @@ -69,10 +68,10 @@ class AddFeatureToggleComponent extends Component { {!editmode &&

{ - setValue('enabled', !enabled); - }}>Enabled + checked={enabled} + onChange={() => { + setValue('enabled', !enabled); + }}>Enabled
} @@ -92,7 +91,6 @@ class AddFeatureToggleComponent extends Component { ); } - }; AddFeatureToggleComponent.propTypes = { diff --git a/frontend/src/component/feature/form/strategies-add.jsx b/frontend/src/component/feature/form/strategies-add.jsx index 1f46b5d8fa..4847cc2672 100644 --- a/frontend/src/component/feature/form/strategies-add.jsx +++ b/frontend/src/component/feature/form/strategies-add.jsx @@ -1,8 +1,7 @@ import React, { PropTypes } from 'react'; -import { Menu, MenuItem, IconButton } from 'react-mdl'; +import { Menu, MenuItem, IconButton } from 'react-mdl'; class AddStrategy extends React.Component { - static propTypes () { return { strategies: PropTypes.array.isRequired, diff --git a/frontend/src/component/feature/form/strategies-list.jsx b/frontend/src/component/feature/form/strategies-list.jsx index d8d752ae5f..dcf0e6ff47 100644 --- a/frontend/src/component/feature/form/strategies-list.jsx +++ b/frontend/src/component/feature/form/strategies-list.jsx @@ -5,7 +5,6 @@ import HTML5Backend from 'react-dnd-html5-backend'; @DragDropContext(HTML5Backend) // eslint-disable-line new-cap class StrategiesList extends React.Component { - static propTypes () { return { strategies: PropTypes.array.isRequired, diff --git a/frontend/src/component/feature/form/strategies-section.jsx b/frontend/src/component/feature/form/strategies-section.jsx index ea9097f67f..fe9927ca81 100644 --- a/frontend/src/component/feature/form/strategies-section.jsx +++ b/frontend/src/component/feature/form/strategies-section.jsx @@ -5,7 +5,6 @@ import AddStrategy from './strategies-add'; import { HeaderTitle } from '../../common'; class StrategiesSection extends React.Component { - static propTypes () { return { strategies: PropTypes.array.isRequired, diff --git a/frontend/src/component/feature/form/strategy-configure.jsx b/frontend/src/component/feature/form/strategy-configure.jsx index e42f889a00..5f9e3a5711 100644 --- a/frontend/src/component/feature/form/strategy-configure.jsx +++ b/frontend/src/component/feature/form/strategy-configure.jsx @@ -45,7 +45,6 @@ const dragTarget = { isDragging: monitor.isDragging(), })) class StrategyConfigure extends React.Component { - static propTypes () { return { strategy: PropTypes.object.isRequired, @@ -122,7 +121,7 @@ class StrategyConfigure extends React.Component { label={name} onChange={this.handleConfigChange.bind(this, name)} value={value} - /> + /> {description &&

{description}

} ); @@ -138,7 +137,7 @@ class StrategyConfigure extends React.Component { label={name} onChange={this.handleConfigChange.bind(this, name)} value={value} - /> + /> {description &&

{description}

} ); @@ -165,8 +164,8 @@ class StrategyConfigure extends React.Component { { inputFields && - {inputFields} - + {inputFields} + } diff --git a/frontend/src/component/feature/form/strategy-input-list.jsx b/frontend/src/component/feature/form/strategy-input-list.jsx index 71f611b61c..6da937290f 100644 --- a/frontend/src/component/feature/form/strategy-input-list.jsx +++ b/frontend/src/component/feature/form/strategy-input-list.jsx @@ -3,10 +3,9 @@ import { Textfield, IconButton, Chip, -} from 'react-mdl'; +} from 'react-mdl'; export default class InputList extends Component { - static propTypes = { name: PropTypes.string.isRequired, list: PropTypes.array.isRequired, @@ -18,7 +17,7 @@ export default class InputList extends Component { window.removeEventListener('keydown', this.onKeyHandler, false); } - onFocus = (e) => { + onFocus = (e) => { e.preventDefault(); e.stopPropagation(); window.addEventListener('keydown', this.onKeyHandler, false); diff --git a/frontend/src/component/feature/form/strategy-input-percentage.jsx b/frontend/src/component/feature/form/strategy-input-percentage.jsx index 9d687450db..cd12d5b82a 100644 --- a/frontend/src/component/feature/form/strategy-input-percentage.jsx +++ b/frontend/src/component/feature/form/strategy-input-percentage.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { Slider } from 'react-mdl'; +import { Slider } from 'react-mdl'; const labelStyle = { margin: '20px 0', diff --git a/frontend/src/component/feature/list-component.jsx b/frontend/src/component/feature/list-component.jsx index a3e77d96b8..ce7fece559 100644 --- a/frontend/src/component/feature/list-component.jsx +++ b/frontend/src/component/feature/list-component.jsx @@ -7,7 +7,6 @@ import { MenuItemWithIcon, DropdownButton, styles as commonStyles } from '../com import styles from './feature.scss'; export default class FeatureListComponent extends React.PureComponent { - static propTypes () { return { toggleFeature: PropTypes.func.isRequired, @@ -89,16 +88,16 @@ export default class FeatureListComponent extends React.PureComponent {
{features.map((feature, i) => - + toggleFeature={toggleFeature}/>) )} - + ); } } diff --git a/frontend/src/component/feature/list-container.jsx b/frontend/src/component/feature/list-container.jsx index 7cdbadd14f..84bcbe854b 100644 --- a/frontend/src/component/feature/list-container.jsx +++ b/frontend/src/component/feature/list-container.jsx @@ -14,7 +14,7 @@ const mapStateToProps = (state) => { const regex = new RegExp(settings.filter, 'i'); features = features.filter(feature => ( - regex.test(feature.name) || + regex.test(feature.name) || regex.test(feature.description) || feature.strategies.some(s => s && s.name && regex.test(s.name)) ) @@ -72,8 +72,8 @@ const mapDispatchToProps = { }; const FeatureListContainer = connect( - mapStateToProps, - mapDispatchToProps + mapStateToProps, + mapDispatchToProps )(FeatureListComponent); export default FeatureListContainer; diff --git a/frontend/src/component/feature/metric-component.jsx b/frontend/src/component/feature/metric-component.jsx index a2fa0cf665..dc5ab5aa02 100644 --- a/frontend/src/component/feature/metric-component.jsx +++ b/frontend/src/component/feature/metric-component.jsx @@ -18,7 +18,7 @@ const StrategyChipItem = ({ strategy }) => ( // TODO what about "missing" strategies here? const StrategiesList = ({ strategies }) => (
With {strategies.length > 1 ? 'strategies' : 'strategy'} { - strategies.map((strategy, i) => ) + strategies.map((strategy, i) => ) }
); diff --git a/frontend/src/component/feature/progress.jsx b/frontend/src/component/feature/progress.jsx index e239d82cce..1de4604d69 100644 --- a/frontend/src/component/feature/progress.jsx +++ b/frontend/src/component/feature/progress.jsx @@ -58,7 +58,7 @@ class Progress extends Component { const current = this.state.percentageText; - targetState.cyclesCounter --; + targetState.cyclesCounter--; if (targetState.cyclesCounter <= 0) { this.setState({ percentageText: targetState.target }); return; @@ -99,7 +99,7 @@ class Progress extends Component { return (isFallback ? { // eslint-disable-next-line max-len - } + } : + /> + /> {this.state.percentageText}% + >{this.state.percentageText}% ); } diff --git a/frontend/src/component/feature/view-component.jsx b/frontend/src/component/feature/view-component.jsx index fa1f4b8cd2..207ae04274 100644 --- a/frontend/src/component/feature/view-component.jsx +++ b/frontend/src/component/feature/view-component.jsx @@ -14,7 +14,6 @@ const TABS = { }; export default class ViewFeatureToggleComponent extends React.Component { - constructor (props) { super(props); } @@ -73,7 +72,7 @@ export default class ViewFeatureToggleComponent extends React.Component { return ( Could not find the toggle - {featureToggleName} + {featureToggleName} ); } @@ -82,7 +81,7 @@ export default class ViewFeatureToggleComponent extends React.Component { const tabContent = this.getTabContent(activeTab); const removeToggle = () => { - if (window.confirm('Are you sure you want to remove this toggle?')) { // eslint-disable-line no-alert + if (window.confirm('Are you sure you want to remove this toggle?')) { // eslint-disable-line no-alert removeFeatureToggle(featureToggle.name); hashHistory.push('/features'); } diff --git a/frontend/src/component/history/history-component.jsx b/frontend/src/component/history/history-component.jsx index 68ed4a3246..a3a85bc6d7 100644 --- a/frontend/src/component/history/history-component.jsx +++ b/frontend/src/component/history/history-component.jsx @@ -4,7 +4,6 @@ import HistoryList from './history-list-container'; import { styles as commonStyles } from '../common'; class History extends PureComponent { - componentDidMount () { this.props.fetchHistory(); } diff --git a/frontend/src/component/history/history-item-diff.jsx b/frontend/src/component/history/history-item-diff.jsx index 0900d0233e..4e3ffa1e24 100644 --- a/frontend/src/component/history/history-item-diff.jsx +++ b/frontend/src/component/history/history-item-diff.jsx @@ -50,7 +50,7 @@ function buildDiff (diff, idx) { ); } else { const spadenClass = KLASSES[diff.kind]; - const prefix = DIFF_PREFIXES[diff.kind]; + const prefix = DIFF_PREFIXES[diff.kind]; change = (
{prefix} {key}: {JSON.stringify(diff.rhs || diff.item)}
); } @@ -59,7 +59,6 @@ function buildDiff (diff, idx) { } class HistoryItem extends PureComponent { - static propTypes () { return { entry: PropTypes.object, diff --git a/frontend/src/component/history/history-item-json.jsx b/frontend/src/component/history/history-item-json.jsx index 6586ec8e44..e4d831b283 100644 --- a/frontend/src/component/history/history-item-json.jsx +++ b/frontend/src/component/history/history-item-json.jsx @@ -3,7 +3,6 @@ import React, { PropTypes, PureComponent } from 'react'; import style from './history.scss'; class HistoryItem extends PureComponent { - static propTypes () { return { entry: PropTypes.object, diff --git a/frontend/src/component/history/history-list-component.jsx b/frontend/src/component/history/history-list-component.jsx index 9e0367cba1..0be1b2372d 100644 --- a/frontend/src/component/history/history-list-component.jsx +++ b/frontend/src/component/history/history-list-component.jsx @@ -8,7 +8,6 @@ import { formatFullDateTime } from '../common/util'; import styles from './history.scss'; class HistoryList extends Component { - toggleShowDiff () { this.props.updateSetting('showData', !this.props.settings.showData); } @@ -27,18 +26,18 @@ class HistoryList extends Component { let entries; if (showData) { - entries = history.map((entry) => ); + entries = history.map((entry) => ); } else { entries = ( Object.assign({ - diff: (), - }, entry)) - } - className={commonStyles.fullwidth} - style={{ border: 0, tableLayout: 'fixed', minWidth: '840px' }} - > + sortable + rows={ + history.map((entry) => Object.assign({ + diff: (), + }, entry)) + } + className={commonStyles.fullwidth} + style={{ border: 0, tableLayout: 'fixed', minWidth: '840px' }} + > Type User Diff diff --git a/frontend/src/component/history/history-list-toggle-component.jsx b/frontend/src/component/history/history-list-toggle-component.jsx index 92eb9bc53d..80a22b2bb3 100644 --- a/frontend/src/component/history/history-list-toggle-component.jsx +++ b/frontend/src/component/history/history-list-toggle-component.jsx @@ -2,7 +2,6 @@ import React, { Component, PropTypes } from 'react'; import HistoryList from './history-list-container'; class HistoryListToggle extends Component { - static propTypes () { return { toggleName: PropTypes.string.isRequired, @@ -19,9 +18,9 @@ class HistoryListToggle extends Component { } const { history } = this.props; return ( - + ); } } diff --git a/frontend/src/component/strategies/add-strategy.jsx b/frontend/src/component/strategies/add-strategy.jsx index 27c8621192..47d5139bca 100644 --- a/frontend/src/component/strategies/add-strategy.jsx +++ b/frontend/src/component/strategies/add-strategy.jsx @@ -17,7 +17,7 @@ function gerArrayWithEntries (num) { } const Parameter = ({ set, input = {}, index }) => ( -
+
( const EditHeader = () => (

Edit strategy

-

+

Be carefull! Changing a strategy definition might also require changes to the implementation in the clients.

@@ -80,18 +80,17 @@ const CreateHeader = () => ( const Parameters = ({ input = [], count = 0, updateInList }) => ( -
{ - gerArrayWithEntries(count) - .map((v, i) => updateInList('parameters', i, v, true)} - index={i} - input={input[i]} - />) -}
); +
{ + gerArrayWithEntries(count) + .map((v, i) => ( updateInList('parameters', i, v, true)} + index={i} + input={input[i]} + />)) + }
); class AddStrategy extends Component { - static propTypes () { return { input: PropTypes.object, @@ -142,7 +141,7 @@ class AddStrategy extends Component { pattern="^[0-9a-zA-Z\.\-]+$" onChange={({ target }) => setValue('name', trim(target.value))} value={input.name} - /> + />
setValue('description', target.value)} value={input.description} - /> + /> diff --git a/frontend/src/component/strategies/list-component.jsx b/frontend/src/component/strategies/list-component.jsx index e6699a28d7..3b9d417181 100644 --- a/frontend/src/component/strategies/list-component.jsx +++ b/frontend/src/component/strategies/list-component.jsx @@ -5,7 +5,6 @@ import { List, ListItem, ListItemContent, IconButton, Grid, Cell } from 'react-m import { HeaderTitle } from '../common'; class StrategiesListComponent extends Component { - static contextTypes = { router: React.PropTypes.object, } @@ -28,15 +27,15 @@ class StrategiesListComponent extends Component { title="Add new strategy" />} /> {strategies.length > 0 ? strategies.map((strategy, i) => ( - - - - {strategy.name} - - - removeStrategy(strategy)} /> - - )) : No entries} + + + + {strategy.name} + + + removeStrategy(strategy)} /> + + )) : No entries} diff --git a/frontend/src/component/strategies/list-container.jsx b/frontend/src/component/strategies/list-container.jsx index 50be30b13b..85a7db034b 100644 --- a/frontend/src/component/strategies/list-container.jsx +++ b/frontend/src/component/strategies/list-container.jsx @@ -12,7 +12,7 @@ const mapStateToProps = (state) => { const mapDispatchToProps = (dispatch) => ({ removeStrategy: (strategy) => { - if (window.confirm('Are you sure you want to remove this strategy?')) { // eslint-disable-line no-alert + if (window.confirm('Are you sure you want to remove this strategy?')) { // eslint-disable-line no-alert removeStrategy(strategy)(dispatch); } }, diff --git a/frontend/src/component/user/show-user-container.jsx b/frontend/src/component/user/show-user-container.jsx index 6b1b2decd6..125773eafa 100644 --- a/frontend/src/component/user/show-user-container.jsx +++ b/frontend/src/component/user/show-user-container.jsx @@ -7,7 +7,7 @@ const mapDispatchToProps = { openEdit, }; -const mapStateToProps = (state) => ({ +const mapStateToProps = (state) => ({ user: state.user.toJS(), }); diff --git a/frontend/src/component/user/user-container.jsx b/frontend/src/component/user/user-container.jsx index 6723a4a879..8af4cb632d 100644 --- a/frontend/src/component/user/user-container.jsx +++ b/frontend/src/component/user/user-container.jsx @@ -8,7 +8,7 @@ const mapDispatchToProps = { save, }; -const mapStateToProps = (state) => ({ +const mapStateToProps = (state) => ({ user: state.user.toJS(), }); diff --git a/frontend/src/data/feature-api.js b/frontend/src/data/feature-api.js index 69b7133199..e23c39c3c9 100644 --- a/frontend/src/data/feature-api.js +++ b/frontend/src/data/feature-api.js @@ -55,7 +55,7 @@ function toggle (name) { headers, credentials: 'include', }) - .then(throwIfNotSuccess); + .then(throwIfNotSuccess); } function remove (featureToggleName) { diff --git a/frontend/src/index.jsx b/frontend/src/index.jsx index b91e17f1c1..88aa0bf5ca 100644 --- a/frontend/src/index.jsx +++ b/frontend/src/index.jsx @@ -61,7 +61,7 @@ ReactDOM.render( - + diff --git a/frontend/src/store/archive-actions.js b/frontend/src/store/archive-actions.js index 07ea4cbc6d..ff8795b822 100644 --- a/frontend/src/store/archive-actions.js +++ b/frontend/src/store/archive-actions.js @@ -1,8 +1,8 @@ import api from '../data/archive-api'; -export const REVIVE_TOGGLE = 'REVIVE_TOGGLE'; -export const RECEIVE_ARCHIVE = 'RECEIVE_ARCHIVE'; -export const ERROR_RECEIVE_ARCHIVE = 'ERROR_RECEIVE_ARCHIVE'; +export const REVIVE_TOGGLE = 'REVIVE_TOGGLE'; +export const RECEIVE_ARCHIVE = 'RECEIVE_ARCHIVE'; +export const ERROR_RECEIVE_ARCHIVE = 'ERROR_RECEIVE_ARCHIVE'; const receiveArchive = (json) => ({ type: RECEIVE_ARCHIVE, diff --git a/frontend/src/store/feature-actions.js b/frontend/src/store/feature-actions.js index 6c0fbcb046..09d79e08c5 100644 --- a/frontend/src/store/feature-actions.js +++ b/frontend/src/store/feature-actions.js @@ -1,19 +1,19 @@ import api from '../data/feature-api'; const debug = require('debug')('unleash:feature-actions'); -export const ADD_FEATURE_TOGGLE = 'ADD_FEATURE_TOGGLE'; -export const REMOVE_FEATURE_TOGGLE = 'REMOVE_FEATURE_TOGGLE'; -export const UPDATE_FEATURE_TOGGLE = 'UPDATE_FEATURE_TOGGLE'; -export const TOGGLE_FEATURE_TOGGLE = 'TOGGLE_FEATURE_TOGGLE'; -export const START_FETCH_FEATURE_TOGGLES = 'START_FETCH_FEATURE_TOGGLES'; -export const START_UPDATE_FEATURE_TOGGLE = 'START_UPDATE_FEATURE_TOGGLE'; -export const START_CREATE_FEATURE_TOGGLE = 'START_CREATE_FEATURE_TOGGLE'; -export const START_REMOVE_FEATURE_TOGGLE = 'START_REMOVE_FEATURE_TOGGLE'; -export const RECEIVE_FEATURE_TOGGLES = 'RECEIVE_FEATURE_TOGGLES'; -export const ERROR_FETCH_FEATURE_TOGGLES = 'ERROR_FETCH_FEATURE_TOGGLES'; -export const ERROR_CREATING_FEATURE_TOGGLE = 'ERROR_CREATING_FEATURE_TOGGLE'; -export const ERROR_UPDATE_FEATURE_TOGGLE = 'ERROR_UPDATE_FEATURE_TOGGLE'; -export const ERROR_REMOVE_FEATURE_TOGGLE = 'ERROR_REMOVE_FEATURE_TOGGLE'; +export const ADD_FEATURE_TOGGLE = 'ADD_FEATURE_TOGGLE'; +export const REMOVE_FEATURE_TOGGLE = 'REMOVE_FEATURE_TOGGLE'; +export const UPDATE_FEATURE_TOGGLE = 'UPDATE_FEATURE_TOGGLE'; +export const TOGGLE_FEATURE_TOGGLE = 'TOGGLE_FEATURE_TOGGLE'; +export const START_FETCH_FEATURE_TOGGLES = 'START_FETCH_FEATURE_TOGGLES'; +export const START_UPDATE_FEATURE_TOGGLE = 'START_UPDATE_FEATURE_TOGGLE'; +export const START_CREATE_FEATURE_TOGGLE = 'START_CREATE_FEATURE_TOGGLE'; +export const START_REMOVE_FEATURE_TOGGLE = 'START_REMOVE_FEATURE_TOGGLE'; +export const RECEIVE_FEATURE_TOGGLES = 'RECEIVE_FEATURE_TOGGLES'; +export const ERROR_FETCH_FEATURE_TOGGLES = 'ERROR_FETCH_FEATURE_TOGGLES'; +export const ERROR_CREATING_FEATURE_TOGGLE = 'ERROR_CREATING_FEATURE_TOGGLE'; +export const ERROR_UPDATE_FEATURE_TOGGLE = 'ERROR_UPDATE_FEATURE_TOGGLE'; +export const ERROR_REMOVE_FEATURE_TOGGLE = 'ERROR_REMOVE_FEATURE_TOGGLE'; export function toggleFeature (name) { debug('Toggle feature toggle ', name); diff --git a/frontend/src/store/feature-metrics-actions.js b/frontend/src/store/feature-metrics-actions.js index beaef567ca..c9914cd541 100644 --- a/frontend/src/store/feature-metrics-actions.js +++ b/frontend/src/store/feature-metrics-actions.js @@ -1,12 +1,12 @@ import api from '../data/feature-metrics-api'; -export const START_FETCH_FEATURE_METRICS = 'START_FETCH_FEATURE_METRICS'; -export const RECEIVE_FEATURE_METRICS = 'RECEIVE_FEATURE_METRICS'; -export const ERROR_FETCH_FEATURE_TOGGLES = 'ERROR_FETCH_FEATURE_TOGGLES'; +export const START_FETCH_FEATURE_METRICS = 'START_FETCH_FEATURE_METRICS'; +export const RECEIVE_FEATURE_METRICS = 'RECEIVE_FEATURE_METRICS'; +export const ERROR_FETCH_FEATURE_TOGGLES = 'ERROR_FETCH_FEATURE_TOGGLES'; -export const START_FETCH_SEEN_APP = 'START_FETCH_SEEN_APP'; -export const RECEIVE_SEEN_APPS = 'RECEIVE_SEEN_APPS'; -export const ERROR_FETCH_SEEN_APP = 'ERROR_FETCH_SEEN_APP'; +export const START_FETCH_SEEN_APP = 'START_FETCH_SEEN_APP'; +export const RECEIVE_SEEN_APPS = 'RECEIVE_SEEN_APPS'; +export const ERROR_FETCH_SEEN_APP = 'ERROR_FETCH_SEEN_APP'; function receiveFeatureMetrics (json) { return { diff --git a/frontend/src/store/history-actions.js b/frontend/src/store/history-actions.js index 485e172ea2..51f2b3daef 100644 --- a/frontend/src/store/history-actions.js +++ b/frontend/src/store/history-actions.js @@ -1,9 +1,9 @@ import api from '../data/history-api'; -export const RECEIVE_HISTORY = 'RECEIVE_HISTORY'; -export const ERROR_RECEIVE_HISTORY = 'ERROR_RECEIVE_HISTORY'; +export const RECEIVE_HISTORY = 'RECEIVE_HISTORY'; +export const ERROR_RECEIVE_HISTORY = 'ERROR_RECEIVE_HISTORY'; -export const RECEIVE_HISTORY_FOR_TOGGLE = 'RECEIVE_HISTORY_FOR_TOGGLE'; +export const RECEIVE_HISTORY_FOR_TOGGLE = 'RECEIVE_HISTORY_FOR_TOGGLE'; const receiveHistory = (json) => ({ type: RECEIVE_HISTORY, diff --git a/frontend/src/store/input-store.js b/frontend/src/store/input-store.js index cc0a3c7075..c3559bf44f 100644 --- a/frontend/src/store/input-store.js +++ b/frontend/src/store/input-store.js @@ -31,7 +31,7 @@ function setKeyValue (state, { id, key, value }) { function increment (state, { id, key }) { state = assertId(state, id); - return state.updateIn(id.concat([key]), (value = 0) => value + 1); + return state.updateIn(id.concat([key]), (value = 0) => value + 1); } function clear (state, { id }) { diff --git a/frontend/src/store/strategy/actions.js b/frontend/src/store/strategy/actions.js index bed0dd40e9..ab27df56f3 100644 --- a/frontend/src/store/strategy/actions.js +++ b/frontend/src/store/strategy/actions.js @@ -78,8 +78,8 @@ export function updateStrategy (strategy) { export function removeStrategy (strategy) { return dispatch => api.remove(strategy) - .then(() => dispatch(createRemoveStrategy(strategy))) - .catch(error => dispatch(errorCreatingStrategy(error))); + .then(() => dispatch(createRemoveStrategy(strategy))) + .catch(error => dispatch(errorCreatingStrategy(error))); } export function getApplicationsWithStrategy (strategyName) { diff --git a/frontend/yarn.lock b/frontend/yarn.lock index ec812a0135..f0863fbb4f 100644 --- a/frontend/yarn.lock +++ b/frontend/yarn.lock @@ -68,10 +68,14 @@ amdefine@>=0.0.4: version "1.0.1" resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" -ansi-escapes@^1.1.0, ansi-escapes@^1.4.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-regex@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" @@ -156,13 +160,6 @@ array-unique@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" -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" - arrify@^1.0.0, arrify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" @@ -238,7 +235,7 @@ aws4@^1.2.1: version "1.6.0" resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" -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: @@ -1198,11 +1195,11 @@ classnames@^2.2.3: version "2.2.5" resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.2.5.tgz#fb3801d453467649ef3603c7d61a02bd129bde6d" -cli-cursor@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-1.0.2.tgz#64da3f7d56a54412e59794bd62dc35295e8f2987" +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 "^1.0.1" + restore-cursor "^2.0.0" cli-width@^2.0.0: version "2.1.0" @@ -1309,7 +1306,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: @@ -1502,12 +1499,6 @@ currently-unhandled@^0.4.1: dependencies: array-find-index "^1.0.1" -d@1: - version "1.0.0" - resolved "https://registry.yarnpkg.com/d/-/d-1.0.0.tgz#754bb5bfe55451da69a58b94d45f4c5b0462d58f" - dependencies: - es5-ext "^0.10.9" - dashdash@^1.12.0: version "1.14.1" resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" @@ -1524,7 +1515,7 @@ debug@2.6.7: dependencies: ms "2.0.0" -debug@2.6.8, debug@^2.1.1, debug@^2.2.0, debug@^2.6.3, debug@^2.6.6: +debug@2.6.8, debug@^2.1.1, debug@^2.2.0, debug@^2.6.3, debug@^2.6.6, debug@^2.6.8: version "2.6.8" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.8.tgz#e731531ca2ede27d188222427da17821d68ff4fc" dependencies: @@ -1554,13 +1545,6 @@ default-require-extensions@^1.0.0: dependencies: strip-bom "^2.0.0" -define-properties@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94" - dependencies: - foreach "^2.0.5" - object-keys "^1.0.8" - defined@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693" @@ -1616,13 +1600,6 @@ dnd-core@^2.4.0: lodash "^4.2.0" redux "^3.2.0" -doctrine@^1.2.2: - version "1.5.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" - dependencies: - esutils "^2.0.2" - isarray "^1.0.0" - doctrine@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.0.0.tgz#c73d8d2909d22291e1a007a395804da8b665fe63" @@ -1700,75 +1677,6 @@ error-stack-parser@^1.3.6: dependencies: stackframe "^0.3.1" -es-abstract@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.7.0.tgz#dfade774e01bfcd97f96180298c449c8623fb94c" - dependencies: - es-to-primitive "^1.1.1" - function-bind "^1.1.0" - is-callable "^1.1.3" - is-regex "^1.0.3" - -es-to-primitive@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.1.1.tgz#45355248a88979034b6792e19bb81f2b7975dd0d" - dependencies: - is-callable "^1.1.1" - is-date-object "^1.0.1" - is-symbol "^1.0.1" - -es5-ext@^0.10.14, es5-ext@^0.10.9, es5-ext@~0.10.14: - version "0.10.23" - resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.23.tgz#7578b51be974207a5487821b56538c224e4e7b38" - dependencies: - es6-iterator "2" - es6-symbol "~3.1" - -es6-iterator@2, es6-iterator@^2.0.1, es6-iterator@~2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.1.tgz#8e319c9f0453bf575d374940a655920e59ca5512" - dependencies: - d "1" - es5-ext "^0.10.14" - es6-symbol "^3.1" - -es6-map@^0.1.3: - version "0.1.5" - resolved "https://registry.yarnpkg.com/es6-map/-/es6-map-0.1.5.tgz#9136e0503dcc06a301690f0bb14ff4e364e949f0" - dependencies: - d "1" - es5-ext "~0.10.14" - es6-iterator "~2.0.1" - es6-set "~0.1.5" - es6-symbol "~3.1.1" - event-emitter "~0.3.5" - -es6-set@~0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/es6-set/-/es6-set-0.1.5.tgz#d2b3ec5d4d800ced818db538d28974db0a73ccb1" - dependencies: - d "1" - es5-ext "~0.10.14" - es6-iterator "~2.0.1" - es6-symbol "3.1.1" - event-emitter "~0.3.5" - -es6-symbol@3.1.1, es6-symbol@^3.1, es6-symbol@^3.1.1, es6-symbol@~3.1, es6-symbol@~3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.1.tgz#bf00ef4fdab6ba1b46ecb7b629b4c7ed5715cc77" - dependencies: - d "1" - es5-ext "~0.10.14" - -es6-weak-map@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.2.tgz#5e3ab32251ffd1538a1f8e5ffa1357772f92d96f" - dependencies: - d "1" - es5-ext "^0.10.14" - es6-iterator "^2.0.1" - es6-symbol "^3.1.1" - escape-html@~1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" @@ -1788,86 +1696,80 @@ escodegen@^1.6.1: optionalDependencies: source-map "~0.2.0" -escope@^3.6.0: - version "3.6.0" - resolved "https://registry.yarnpkg.com/escope/-/escope-3.6.0.tgz#e01975e812781a163a6dadfdd80398dc64c889c3" +eslint-config-finn-react@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/eslint-config-finn-react/-/eslint-config-finn-react-2.0.0.tgz#94d11891168eeb110aedd39285c31700e9f09bc2" + dependencies: + eslint-config-schibsted-react "^4.0.1" + +eslint-config-finn@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/eslint-config-finn/-/eslint-config-finn-2.0.0.tgz#0c4a89ccbc8c48b065c8e42df9965276199ae053" + dependencies: + eslint-config-schibsted "^4.0.0" + +eslint-config-schibsted-react@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/eslint-config-schibsted-react/-/eslint-config-schibsted-react-4.0.1.tgz#c1fca494bcb142b32cc413885b93eff5ff541e2a" + +eslint-config-schibsted@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/eslint-config-schibsted/-/eslint-config-schibsted-4.0.0.tgz#7c0dacdc18d56a2dac006923917ef40df29438ed" + +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: + doctrine "^2.0.0" + has "^1.0.1" + jsx-ast-utils "^1.4.1" + +eslint-scope@^3.7.1: + version "3.7.1" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.1.tgz#3d63c3edfda02e06e01a452ad88caacc7cdcb6e8" dependencies: - es6-map "^0.1.3" - es6-weak-map "^2.0.1" esrecurse "^4.1.0" estraverse "^4.1.1" -eslint-config-finn-react@^1.0.0-alpha.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/eslint-config-finn-react/-/eslint-config-finn-react-1.0.2.tgz#52b43261c8f45b459dbdbf427745ce03ef79a7b6" +eslint@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-4.1.1.tgz#facbdfcfe3e0facd3a8b80dc98c4e6c13ae582df" dependencies: - eslint-config-schibsted-react "^3.0.1" - -eslint-config-finn@1.0.0-alpha.11: - version "1.0.0-alpha.11" - resolved "https://registry.yarnpkg.com/eslint-config-finn/-/eslint-config-finn-1.0.0-alpha.11.tgz#bd005e8a98b36d97a05595eded354b1309a59c84" - dependencies: - eslint-config-spt "^3.0.0-beta-2" - -eslint-config-schibsted-react@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/eslint-config-schibsted-react/-/eslint-config-schibsted-react-3.0.1.tgz#658abaf16528684d0258468432745ab798644838" - -eslint-config-spt@^3.0.0-beta-2: - version "3.0.0" - resolved "https://registry.yarnpkg.com/eslint-config-spt/-/eslint-config-spt-3.0.0.tgz#5529e844f24edbcc03188aac9d36fbab65bcb20e" - -eslint-plugin-react@^6.2.0: - version "6.10.3" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-6.10.3.tgz#c5435beb06774e12c7db2f6abaddcbf900cd3f78" - dependencies: - array.prototype.find "^2.0.1" - doctrine "^1.2.2" - has "^1.0.1" - jsx-ast-utils "^1.3.4" - object.assign "^4.0.4" - -eslint@^3.4.0: - version "3.19.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-3.19.0.tgz#c8fc6201c7f40dd08941b87c085767386a679acc" - dependencies: - babel-code-frame "^6.16.0" + 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: @@ -1911,13 +1813,6 @@ etag@~1.8.0: version "1.8.0" resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.0.tgz#6f631aef336d6c46362b51764044ce216be3c051" -event-emitter@~0.3.5: - version "0.3.5" - resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39" - dependencies: - d "1" - es5-ext "~0.10.14" - eventemitter3@1.x.x: version "1.2.0" resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-1.2.0.tgz#1c86991d816ad1e504750e73874224ecf3bec508" @@ -1942,10 +1837,6 @@ exenv@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/exenv/-/exenv-1.2.0.tgz#3835f127abf075bfe082d0aed4484057c78e3c89" -exit-hook@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/exit-hook/-/exit-hook-1.1.1.tgz#f05ca233b48c05d54fff07765df8507e95c02ff8" - expand-brackets@^0.1.4: version "0.1.5" resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" @@ -1995,6 +1886,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" @@ -2057,12 +1956,11 @@ fbjs@^0.8.9: setimmediate "^1.0.5" ua-parser-js "^0.7.9" -figures@^1.3.5: - version "1.7.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e" +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" - object-assign "^4.1.0" file-entry-cache@^2.0.0: version "2.0.0" @@ -2148,10 +2046,6 @@ for-own@^0.1.4: dependencies: for-in "^1.0.1" -foreach@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99" - forever-agent@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" @@ -2200,7 +2094,7 @@ fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.2: mkdirp ">=0.5 0" rimraf "2" -function-bind@^1.0.2, function-bind@^1.1.0: +function-bind@^1.0.2: version "1.1.0" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.0.tgz#16176714c801798e4e8f2cf7f7529467bb4a5771" @@ -2260,7 +2154,7 @@ glob-parent@^2.0.0: dependencies: is-glob "^2.0.0" -glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@~7.1.1: +glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.2, glob@~7.1.1: version "7.1.2" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" dependencies: @@ -2278,7 +2172,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" @@ -2446,7 +2340,7 @@ 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.13: +iconv-lite@^0.4.17, iconv-lite@~0.4.13: version "0.4.18" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.18.tgz#23d8656b16aae6742ac29732ea8f0336a4789cf2" @@ -2464,7 +2358,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" @@ -2519,21 +2413,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" @@ -2541,10 +2436,6 @@ interpret@^0.6.4: version "0.6.6" resolved "https://registry.yarnpkg.com/interpret/-/interpret-0.6.6.tgz#fecd7a18e7ce5ca6abfb953e1f86213a49f1625b" -interpret@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.0.3.tgz#cbc35c62eeee73f19ab7b10a801511401afc0f90" - invariant@^2.0.0, invariant@^2.1.0, invariant@^2.2.0, invariant@^2.2.1: version "2.2.2" resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.2.tgz#9e1f56ac0acdb6bf303306f338be3b204ae60360" @@ -2583,20 +2474,12 @@ is-builtin-module@^1.0.0: dependencies: builtin-modules "^1.0.0" -is-callable@^1.1.1, is-callable@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2" - is-ci@^1.0.9: version "1.0.10" resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.0.10.tgz#f739336b2632365061a9d48270cd56ae3369318e" dependencies: ci-info "^1.0.0" -is-date-object@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" - is-dotfile@^1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" @@ -2647,7 +2530,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: @@ -2696,16 +2579,14 @@ is-primitive@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" +is-promise@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" + is-property@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" -is-regex@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" - dependencies: - has "^1.0.1" - is-resolvable@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.0.0.tgz#8df57c61ea2e3c501408d100fb013cf8d6e0cc62" @@ -2722,10 +2603,6 @@ is-svg@^2.0.0: dependencies: html-comment-regex "^1.1.0" -is-symbol@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572" - is-typedarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" @@ -3032,7 +2909,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.5.1, js-yaml@^3.7.0: +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: @@ -3050,6 +2927,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.11.0: version "9.12.0" resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-9.12.0.tgz#e8c546fffcb06c00d4833ca84410fed7f8a097d4" @@ -3086,7 +2967,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: @@ -3121,7 +3002,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" @@ -3245,7 +3126,7 @@ lodash.words@^3.0.0: dependencies: lodash._root "^3.0.0" -lodash@^4.0.0, lodash@^4.14.0, lodash@^4.17.2, lodash@^4.2.0, lodash@^4.2.1, lodash@^4.3.0, lodash@^4.6.1, lodash@~4.17.4: +lodash@^4.0.0, lodash@^4.14.0, lodash@^4.17.2, lodash@^4.17.4, lodash@^4.2.0, lodash@^4.2.1, lodash@^4.3.0, lodash@^4.6.1, lodash@~4.17.4: version "4.17.4" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" @@ -3376,6 +3257,10 @@ mime@^1.3.4: version "1.3.6" resolved "https://registry.yarnpkg.com/mime/-/mime-1.3.6.tgz#591d84d3653a6b0b4a3b9df8de5aa8108e72e5e0" +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" @@ -3410,9 +3295,9 @@ ms@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" -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" nan@^2.3.0, nan@^2.3.2: version "2.6.2" @@ -3601,18 +3486,6 @@ 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: - 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" @@ -3636,9 +3509,11 @@ once@^1.3.0, once@^1.3.3, once@^1.4.0: dependencies: wrappy "1" -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" open@0.0.5: version "0.0.5" @@ -3682,7 +3557,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" @@ -3748,7 +3623,7 @@ 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" @@ -3796,9 +3671,9 @@ pkg-dir@^1.0.0: dependencies: find-up "^1.0.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" postcss-calc@^5.2.0: version "5.3.1" @@ -4087,9 +3962,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" @@ -4350,20 +4225,6 @@ 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" - -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" @@ -4524,7 +4385,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: @@ -4543,18 +4404,18 @@ 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.2.0: version "1.3.3" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.3.3.tgz#655907c3469a8680dc2de3a275a8fdd69691f0e5" dependencies: path-parse "^1.0.5" -restore-cursor@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-1.0.1.tgz#34661f46886327fed2991479152252df92daa541" +restore-cursor@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" dependencies: - exit-hook "^1.0.0" - onetime "^1.0.0" + onetime "^2.0.0" + signal-exit "^3.0.2" right-align@^0.1.1: version "0.1.3" @@ -4572,15 +4433,21 @@ ripemd160@0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-0.2.0.tgz#2bf198bde167cacfa51c0a928e84b68bbe171fce" -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" safe-buffer@^5.0.1, safe-buffer@~5.1.0: version "5.1.1" @@ -4696,19 +4563,11 @@ sha.js@2.2.6: version "2.2.6" resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.2.6.tgz#17ddeddc5f722fb66501658895461977867315ba" -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" @@ -4894,7 +4753,7 @@ strip-ansi@^4.0.0: dependencies: ansi-regex "^3.0.0" -strip-bom@3.0.0, strip-bom@^3.0.0: +strip-bom@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" @@ -4956,9 +4815,9 @@ symbol-tree@^3.2.1: version "3.2.2" resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.2.tgz#ae27db38f660a7ae2e1c3b7d1bc290819b8519e6" -table@^3.7.8: - version "3.8.3" - resolved "https://registry.yarnpkg.com/table/-/table-3.8.3.tgz#2bbc542f0fda9861a755d3947fefd8b3f513855f" +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" @@ -5020,6 +4879,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" @@ -5149,12 +5014,6 @@ url@^0.11.0: punycode "1.3.2" querystring "0.2.0" -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"