diff --git a/.codeclimate.yml b/.codeclimate.yml index eb3454e9..a99d6e90 100644 --- a/.codeclimate.yml +++ b/.codeclimate.yml @@ -1,4 +1,4 @@ -version: "2" # required to adjust maintainability checks +version: '2' # required to adjust maintainability checks checks: argument-count: config: @@ -33,10 +33,11 @@ checks: plugins: eslint: enabled: true - channel: "eslint-4" + channel: 'eslint-5' exclude_patterns: -- "docs/" -- "snapshots/" -- "**/tests/*" -- "**/node_modules/" -- "**/*.test.js" + - 'docs/' + - 'snapshots/' + - '**/tests/*' + - '**/node_modules/' + - '**/*.test.js' + - 'postcss.config.js' diff --git a/.eslintrc.json b/.eslintrc.json index 362080e2..fe4c4d00 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -1,75 +1,12 @@ { - "parserOptions": { - "ecmaFeatures": { - "jsx": true - } - }, - "parser": "babel-eslint", - "extends": "airbnb", - "plugins": ["react", "jsx-a11y", "import"], - "env": { - "browser": true, - "node": true, - "jest": true, - "es6": true - }, + "extends": ["react-app", "plugin:prettier/recommended"], "rules": { - "arrow-parens": [2, "as-needed"], - "comma-dangle": ["warn", "never"], - "global-require": 0, - "import/no-extraneous-dependencies": [ - 2, - { - "devDependencies": true - } - ], - "import/no-named-as-default": 0, - "import/prefer-default-export": 0, - "linebreak-style": 0, - "max-len": [ - 1, - 150, - 2, - { - "ignoreComments": true, - "ignoreTrailingComments": true, - "ignoreTemplateLiterals": true, - "ignoreStrings": true - } - ], - "no-nested-ternary": 0, - "no-underscore-dangle": 0, - "no-console": 2, - "no-bitwise": [ - 2, - { - "allow": ["~"] - } - ], - "no-param-reassign": 0, - "no-plusplus": 0, - "no-shadow": 0, - "no-unused-expressions": [2, { "allowShortCircuit": true }], - "object-curly-newline": 0, - "react/forbid-prop-types": 0, - "react/require-default-props": 0, + "prettier/prettier": ["error"], "react/jsx-filename-extension": [ 1, { "extensions": [".js", ".jsx"] } - ], - "react/jsx-wrap-multilines": 0, - "react/jsx-closing-tag-location": 0, - "react/sort-comp": 0, - "semi": [2, "never"], - "space-infix-ops": 0, - "jsx-a11y/anchor-is-valid": 0, - "jsx-a11y/label-has-for": 0, - "jsx-a11y/no-static-element-interactions": 0, - "jsx-a11y/click-events-have-key-events": 0 - }, - "globals": { - "document": true + ] } } diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 00000000..59b95a28 --- /dev/null +++ b/.prettierignore @@ -0,0 +1 @@ +docs/src/stories/utils/prism.js \ No newline at end of file diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 00000000..e2ada795 --- /dev/null +++ b/.prettierrc @@ -0,0 +1,6 @@ +{ + "printWidth": 120, + "singleQuote": true, + "semi": false, + "trailingComma": "es5" +} diff --git a/docs/src/App.js b/docs/src/App.js index 9cd995ab..3abf8c1f 100644 --- a/docs/src/App.js +++ b/docs/src/App.js @@ -25,17 +25,17 @@ const stories = [ { name: 'Simple Select', component: CodeSandbox('5xzn337wjn') }, { name: 'Custom Select/Unselect All Buttons (HOC)', - component: CodeSandbox('n348v2qox0') + component: CodeSandbox('n348v2qox0'), }, { name: 'Internal Select All Checkbox (HOC)', - component: CodeSandbox('rjwqq86p1n') + component: CodeSandbox('rjwqq86p1n'), }, { name: 'Prevent re-render on parent render (HOC)', - component: CodeSandbox('v05klkn56l') + component: CodeSandbox('v05klkn56l'), }, - { name: 'Tree Node Paths (HOC)', component: CodeSandbox('l765q6lmrq') } + { name: 'Tree Node Paths (HOC)', component: CodeSandbox('l765q6lmrq') }, ] const App = () => ( @@ -43,7 +43,7 @@ const App = () => ( style={{ display: 'block', width: '100%', - height: '100%' + height: '100%', }} pathPrefix="story/" Story={props => ( @@ -51,14 +51,14 @@ const App = () => ( css={{ padding: 0, display: 'flex', - flexDirection: 'column' + flexDirection: 'column', }} >
diff --git a/docs/src/CodeSandbox.js b/docs/src/CodeSandbox.js index ecb8a6c1..1ec7a6ac 100644 --- a/docs/src/CodeSandbox.js +++ b/docs/src/CodeSandbox.js @@ -12,7 +12,7 @@ export default id => () => ( width: '100%', height: '100%', border: 0, - overflow: 'hidden' + overflow: 'hidden', }} sandbox="allow-modals allow-forms allow-popups allow-scripts allow-same-origin" title="Code Sandbox" diff --git a/docs/src/stories/DefaultValues/index.js b/docs/src/stories/DefaultValues/index.js index 2cd140e1..b78e6ccc 100644 --- a/docs/src/stories/DefaultValues/index.js +++ b/docs/src/stories/DefaultValues/index.js @@ -20,8 +20,8 @@ const Simple = () => (

Component with Default Values

- Default Values get applied when there is no other user based selection. User can select more values and unselect default values as long as there - is at least one user-selected value still present. + Default Values get applied when there is no other user based selection. User can select more values and unselect + default values as long as there is at least one user-selected value still present.

diff --git a/docs/src/stories/Options/Checkbox.js b/docs/src/stories/Options/Checkbox.js index 69c8028b..2e71c764 100644 --- a/docs/src/stories/Options/Checkbox.js +++ b/docs/src/stories/Options/Checkbox.js @@ -6,7 +6,7 @@ class Checkbox extends PureComponent { label: PropTypes.string.isRequired, value: PropTypes.string.isRequired, onChange: PropTypes.func.isRequired, - checked: PropTypes.bool + checked: PropTypes.bool, } state = { isChecked: this.props.checked || false } diff --git a/docs/src/stories/Options/index.js b/docs/src/stories/Options/index.js index 9c902e6c..9b594078 100644 --- a/docs/src/stories/Options/index.js +++ b/docs/src/stories/Options/index.js @@ -17,7 +17,7 @@ class WithOptions extends PureComponent { showPartiallySelected: false, disabled: false, readOnly: false, - hierarchical: false + hierarchical: false, } } @@ -36,7 +36,15 @@ class WithOptions extends PureComponent { } render() { - const { clearSearchOnChange, keepTreeOnSearch, simpleSelect, showPartiallySelected, disabled, readOnly, hierarchical } = this.state + const { + clearSearchOnChange, + keepTreeOnSearch, + simpleSelect, + showPartiallySelected, + disabled, + readOnly, + hierarchical, + } = this.state return (
@@ -47,13 +55,28 @@ class WithOptions extends PureComponent { border: '1px solid #ccc', borderRadius: '4px', marginBottom: '20px', - padding: 10 + padding: 10, }} > - - + + - + diff --git a/docs/src/stories/Simple/index.js b/docs/src/stories/Simple/index.js index 850fc5af..9470ceff 100644 --- a/docs/src/stories/Simple/index.js +++ b/docs/src/stories/Simple/index.js @@ -23,23 +23,30 @@ const onBlur = () => { console.log('onBlur') } - const Simple = () => (

Basic component

- This is a basic example of the component. Note that there are no external styles in this page, not even reset.css or{' '} - reboot.css or normalizer.css. + This is a basic example of the component. Note that there are no external styles in this page, not even{' '} + reset.css or reboot.css or normalizer.css.

- The idea is to showcase the component at its barest minimum. Of course, its easy to style it, using popular frameworks such as Bootstrap or - Material Design (checkout the examples on left). + The idea is to showcase the component at its barest minimum. Of course, its easy to style it, using popular + frameworks such as Bootstrap or Material Design (checkout the examples on left).

- As a side effect, it also helps rule out issues arising out of using custom frameworks (if something doesn't look right in your app but - looks OK here, you know what is messing things up). + As a side effect, it also helps rule out issues arising out of using custom frameworks (if something doesn't + look right in your app but looks OK here, you know what is messing things up).

- +
) diff --git a/docs/webpack.config.js b/docs/webpack.config.js index f3565352..530f2384 100644 --- a/docs/webpack.config.js +++ b/docs/webpack.config.js @@ -5,32 +5,32 @@ const baseConfig = { mode: 'development', resolve: { extensions: ['.js', '.css'], - modules: ['node_modules'] + modules: ['node_modules'], }, module: { rules: [ { test: /\.(js|jsx)$/, exclude: /node_modules/, - loader: 'babel-loader' + loader: 'babel-loader', }, { test: /\.css$/, - loader: 'style-loader!css-loader!postcss-loader' + loader: 'style-loader!css-loader!postcss-loader', }, { test: /\.(png|woff|woff2|eot|ttf|svg)$/, use: { loader: 'url-loader', - options: { limit: 100000 } - } + options: { limit: 100000 }, + }, }, { test: /\.md$/, - use: 'raw-loader' - } - ] - } + use: 'raw-loader', + }, + ], + }, } module.exports = [ @@ -39,7 +39,7 @@ module.exports = [ entry: path.join(__dirname, 'src'), output: { path: __dirname, - filename: 'bundle.js' - } - } + filename: 'bundle.js', + }, + }, ] diff --git a/package.json b/package.json index 9eabe2c5..458f2833 100644 --- a/package.json +++ b/package.json @@ -27,13 +27,12 @@ "build": "rimraf dist/**/* && cross-env NODE_ENV=production webpack --config webpack.config.js --bail --mode=production", "build:docs": "yarn build && cross-env NODE_ENV=production webpack --config docs/webpack.config.js --bail --mode=production", "commit": "git-cz", - "commitmsg": "commitlint -e $GIT_PARAMS", "coveralls": "nyc npm test && nyc report --reporter=text-lcov | coveralls", "demo": "rimraf ./docs/bundle.js && webpack-serve --content ./docs --port 3000 --open --config docs/webpack.config.js", "prepublishOnly": "npm run build", - "lint": "eslint src docs webpack.config.js && stylelint \"src/**/*.css\" --fix", + "lint": "eslint --fix src docs webpack.config.js && stylelint --fix \"src/**/*.css\"", "lint:nofix": "eslint src webpack.config.js && stylelint \"src/**/*.css\"", - "format": "prettier-eslint \"src/**/*.js\" \"docs/**/*.js\" webpack.config.js", + "format": "prettier-eslint --write \"src/**/*.js\" \"docs/**/*.js\" webpack.config.js", "test": "cross-env NODE_ENV=test ava", "test:cov": "rimraf .nyc_output && nyc npm test && nyc report --reporter=lcov ", "test:watch": "cross-env NODE_ENV=test ava --watch", @@ -56,7 +55,7 @@ "all-contributors-cli": "^5.4.1", "ava": "1.0.0-beta.4", "babel-core": "6.24.1", - "babel-eslint": "8.0.0", + "babel-eslint": "10.0.1", "babel-loader": "7.1.2", "babel-plugin-istanbul": "4.1.3", "babel-plugin-transform-class-properties": "6.24.1", @@ -74,16 +73,20 @@ "enzyme": "^3.9.0", "enzyme-adapter-react-16": "^1.11.2", "enzyme-to-json": "^3.3.5", - "eslint": "^4.19.0", - "eslint-config-airbnb": "^16.1.0", - "eslint-plugin-import": "^2.9.0", - "eslint-plugin-jsx-a11y": "^6.0.3", - "eslint-plugin-react": "^7.7.0", + "eslint": "5.6.0", + "eslint-config-prettier": "4.1.0", + "eslint-config-react-app": "3.0.8", + "eslint-plugin-flowtype": "2.50.3", + "eslint-plugin-import": "2.16.0", + "eslint-plugin-jsx-a11y": "6.2.1", + "eslint-plugin-prettier": "3.0.1", + "eslint-plugin-react": "7.12.4", "github-markdown-css": "^2.10.0", - "husky": "^0.14.3", + "husky": "1.3.1", "ignore-styles": "^5.0.1", "jsdom": "^11.2.0", "jsdom-global": "^3.0.2", + "lint-staged": "8.1.5", "marked": "^0.3.17", "mini-css-extract-plugin": "^0.4.0", "nyc": "^12.0.1", @@ -92,6 +95,7 @@ "postcss-import": "^11.0.0", "postcss-loader": "^2.0.10", "postcss-nested": "^3.0.0", + "prettier": "1.16.4", "prettier-eslint-cli": "^4.7.1", "prettier-stylelint": "^0.4.2", "prop-types": "^15.6.0", @@ -176,5 +180,17 @@ "commitizen": { "path": "cz-conventional-changelog-emoji" } + }, + "lint-staged": { + "*.{js,json,css,md}": [ + "prettier --write", + "git add -f" + ] + }, + "husky": { + "hooks": { + "pre-commit": "lint-staged", + "commit-msg": "commitlint -E HUSKY_GIT_PARAMS" + } } } diff --git a/src/checkbox/index.js b/src/checkbox/index.js index 452db167..11e1360d 100644 --- a/src/checkbox/index.js +++ b/src/checkbox/index.js @@ -14,7 +14,7 @@ class Checkbox extends PureComponent { indeterminate: PropTypes.bool, onChange: PropTypes.func, disabled: PropTypes.bool, - readOnly: PropTypes.bool + readOnly: PropTypes.bool, } // this (stopPropagation) is needed since FireFox wrongly detects inside clicks @@ -31,7 +31,15 @@ class Checkbox extends PureComponent { const isDisabled = disabled || readOnly - return + return ( + + ) } } diff --git a/src/checkbox/index.test.js b/src/checkbox/index.test.js index 32cca444..acd3b5db 100644 --- a/src/checkbox/index.test.js +++ b/src/checkbox/index.test.js @@ -33,7 +33,7 @@ test('call stopPropagation and stopImmediatePropagation when clicked', t => { const wrapper = shallow() const event = { stopPropagation: spy(), - nativeEvent: { stopImmediatePropagation: spy() } + nativeEvent: { stopImmediatePropagation: spy() }, } wrapper.simulate('change', event) t.true(onChange.called) diff --git a/src/index.js b/src/index.js index e5bff6dc..3424d6e0 100644 --- a/src/index.js +++ b/src/index.js @@ -39,26 +39,32 @@ class DropdownTreeSelect extends Component { disabled: PropTypes.bool, readOnly: PropTypes.bool, hierarchical: PropTypes.bool, - id: PropTypes.string + id: PropTypes.string, } static defaultProps = { onFocus: () => {}, onBlur: () => {}, - onChange: () => {} + onChange: () => {}, } constructor(props) { super(props) this.state = { showDropdown: this.props.showDropdown || false, - searchModeOn: false + searchModeOn: false, } this.clientId = props.id || clientIdGenerator.get(this) } createList = ({ data, simpleSelect, showPartiallySelected, hierarchical }) => { - this.treeManager = new TreeManager({ data, simpleSelect, showPartiallySelected, hierarchical, rootPrefixId: this.clientId }) + this.treeManager = new TreeManager({ + data, + simpleSelect, + showPartiallySelected, + hierarchical, + rootPrefixId: this.clientId, + }) return this.treeManager.tree } @@ -68,7 +74,7 @@ class DropdownTreeSelect extends Component { return { tree: this.treeManager.restoreNodes(), // restore the tree to its pre-search state searchModeOn: false, - allNodesHidden: false + allNodesHidden: false, } } @@ -120,13 +126,17 @@ class DropdownTreeSelect extends Component { } onInputChange = value => { - const { allNodesHidden, tree } = this.treeManager.filterTree(value, this.props.keepTreeOnSearch, this.props.keepChildrenOnSearch) + const { allNodesHidden, tree } = this.treeManager.filterTree( + value, + this.props.keepTreeOnSearch, + this.props.keepChildrenOnSearch + ) const searchModeOn = value.length > 0 this.setState({ tree, searchModeOn, - allNodesHidden + allNodesHidden, }) } @@ -155,7 +165,7 @@ class DropdownTreeSelect extends Component { const nextState = { tree, tags, - showDropdown + showDropdown, } if (this.props.simpleSelect || this.props.clearSearchOnChange) { @@ -189,7 +199,7 @@ class DropdownTreeSelect extends Component { disabled: this.props.disabled, readOnly: this.props.readOnly, top: this.state.showDropdown, - bottom: !this.state.showDropdown + bottom: !this.state.showDropdown, }) return ( diff --git a/src/index.test.js b/src/index.test.js index f2dac798..87ee8248 100644 --- a/src/index.test.js +++ b/src/index.test.js @@ -6,7 +6,7 @@ import toJson from 'enzyme-to-json' import DropdownTreeSelect from './index' import { clientIdGenerator } from './utils' -const dropdownId ='rdts' +const dropdownId = 'rdts' const node0 = { _id: `${dropdownId}-0`, @@ -14,7 +14,7 @@ const node0 = { _depth: 0, label: 'item1', value: 'value1', - children: undefined + children: undefined, } test.beforeEach(t => { @@ -26,10 +26,10 @@ test.beforeEach(t => { { label: 'item1-1', value: 'value1-1', - children: [{ label: 'item1-1-1', value: 'value1-1-1' }, { label: 'item1-1-2', value: 'value1-1-2' }] + children: [{ label: 'item1-1-1', value: 'value1-1-1' }, { label: 'item1-1-2', value: 'value1-1-2' }], }, - { label: 'item1-2', value: 'value1-2' } - ] + { label: 'item1-2', value: 'value1-2' }, + ], }, { label: 'item2', @@ -44,13 +44,13 @@ test.beforeEach(t => { { label: 'item2-1-3', value: 'value2-1-3', - children: [{ label: 'item2-1-3-1', value: 'value2-1-3-1' }] - } - ] + children: [{ label: 'item2-1-3-1', value: 'value2-1-3-1' }], + }, + ], }, - { label: 'item2-2', value: 'value2-2' } - ] - } + { label: 'item2-2', value: 'value2-2' }, + ], + }, ] }) @@ -143,7 +143,7 @@ test('sets unique ids on dropdowns', t => { t.notDeepEqual(wrapper1.getDOMNode().id, wrapper2.getDOMNode().id) }) -test('doesn\'t toggle dropdown if it\'s disabled', t => { +test("doesn't toggle dropdown if it's disabled", t => { const { tree } = t.context const wrapper = shallow() t.snapshot(toJson(wrapper)) @@ -190,7 +190,7 @@ test('detects click inside', t => { view: window, bubbles: true, cancelable: true, - target: checkboxItem + target: checkboxItem, }) Object.defineProperty(event, 'target', { value: checkboxItem, enumerable: true }) wrapper.instance().handleOutsideClick(event) @@ -211,7 +211,7 @@ test('detects click outside when other dropdown instance', t => { view: window, bubbles: true, cancelable: true, - target: searchInput + target: searchInput, }) Object.defineProperty(event, 'target', { value: searchInput, enumerable: true }) wrapper1.instance().handleOutsideClick(event) diff --git a/src/input/index.js b/src/input/index.js index a66d286c..32edf9bb 100644 --- a/src/input/index.js +++ b/src/input/index.js @@ -27,7 +27,7 @@ class Input extends PureComponent { onTagRemove: PropTypes.func, inputRef: PropTypes.func, disabled: PropTypes.bool, - readOnly: PropTypes.bool + readOnly: PropTypes.bool, } constructor(props) { @@ -41,7 +41,16 @@ class Input extends PureComponent { } render() { - const { tags, onTagRemove, inputRef, placeholderText = 'Choose...', onFocus, onBlur, disabled, readOnly } = this.props + const { + tags, + onTagRemove, + inputRef, + placeholderText = 'Choose...', + onFocus, + onBlur, + disabled, + readOnly, + } = this.props return (
    diff --git a/src/input/index.test.js b/src/input/index.test.js index d284b3ca..bf54b925 100644 --- a/src/input/index.test.js +++ b/src/input/index.test.js @@ -38,9 +38,9 @@ test('should render data attributes', t => { tagClassName: 'test', dataset: { first: 'john', - last: 'smith' - } - } + last: 'smith', + }, + }, ] const wrapper = toJson(shallow()) diff --git a/src/tag/index.js b/src/tag/index.js index e0baf060..34f24ac4 100644 --- a/src/tag/index.js +++ b/src/tag/index.js @@ -12,7 +12,7 @@ class Tag extends PureComponent { label: PropTypes.string.isRequired, onDelete: PropTypes.func, readOnly: PropTypes.bool, - disabled: PropTypes.bool + disabled: PropTypes.bool, } handleClick = e => { @@ -28,7 +28,11 @@ class Tag extends PureComponent { return ( {label} - diff --git a/src/tag/index.test.js b/src/tag/index.test.js index a4b1dbf2..9c9534e4 100644 --- a/src/tag/index.test.js +++ b/src/tag/index.test.js @@ -19,7 +19,7 @@ test('call stopPropagation and stopImmediatePropagation when pill is closed', t const event = { type: 'click', stopPropagation: spy(), - nativeEvent: { stopImmediatePropagation: spy() } + nativeEvent: { stopImmediatePropagation: spy() }, } wrapper.find('.tag-remove').prop('onClick')(event) t.true(event.stopPropagation.called) @@ -50,9 +50,11 @@ test('should not call onDelete when disabled', t => { test('should not cause form submit', t => { const onSubmit = spy() const onDelete = spy() - const wrapper = mount(
    - - ) + const wrapper = mount( +
    + + + ) wrapper.find('.tag-remove').simulate('click', mockEvent) t.false(onSubmit.called) }) diff --git a/src/tree-manager/flatten-tree.js b/src/tree-manager/flatten-tree.js index 064726e2..68518a3e 100644 --- a/src/tree-manager/flatten-tree.js +++ b/src/tree-manager/flatten-tree.js @@ -106,7 +106,7 @@ function flattenTree({ tree, simple, showPartialState, hierarchical, rootPrefixI simple, showPartialState, hierarchical, - rootPrefixId + rootPrefixId, }) return { list, defaultValues } } @@ -129,7 +129,17 @@ function setInitialStateProps(node, parent = {}) { } } -function walkNodes({ nodes, list = new Map(), parent, depth = 0, simple, showPartialState, defaultValues = [], hierarchical, rootPrefixId }) { +function walkNodes({ + nodes, + list = new Map(), + parent, + depth = 0, + simple, + showPartialState, + defaultValues = [], + hierarchical, + rootPrefixId, +}) { nodes.forEach((node, i) => { node._depth = depth @@ -158,7 +168,7 @@ function walkNodes({ nodes, list = new Map(), parent, depth = 0, simple, showPar depth: depth + 1, showPartialState, defaultValues, - hierarchical + hierarchical, }) if (showPartialState && !node.checked) { diff --git a/src/tree-manager/index.js b/src/tree-manager/index.js index 581c9ba1..fc6c1e5f 100644 --- a/src/tree-manager/index.js +++ b/src/tree-manager/index.js @@ -11,7 +11,7 @@ class TreeManager { simple: simpleSelect, showPartialState: showPartiallySelected, hierarchical, - rootPrefixId + rootPrefixId, }) this.tree = list this.defaultValues = defaultValues diff --git a/src/tree-manager/tests/flatten-tree.test.js b/src/tree-manager/tests/flatten-tree.test.js index 802a3a74..007a5b18 100644 --- a/src/tree-manager/tests/flatten-tree.test.js +++ b/src/tree-manager/tests/flatten-tree.test.js @@ -11,10 +11,10 @@ test('flattens tree with no root', t => { { name: 'item1-1', value: 'value1-1', - children: [{ name: 'item1-1-1', value: 'value1-1-1' }, { name: 'item1-1-2', value: 'value1-1-2' }] + children: [{ name: 'item1-1-1', value: 'value1-1-1' }, { name: 'item1-1-2', value: 'value1-1-2' }], }, - { name: 'item1-2', value: 'value1-2' } - ] + { name: 'item1-2', value: 'value1-2' }, + ], }, { name: 'item2', @@ -29,13 +29,13 @@ test('flattens tree with no root', t => { { name: 'item2-1-3', value: 'value2-1-3', - children: [{ name: 'item2-1-3-1', value: 'value2-1-3-1' }] - } - ] + children: [{ name: 'item2-1-3-1', value: 'value2-1-3-1' }], + }, + ], }, - { name: 'item2-2', value: 'value2-2' } - ] - } + { name: 'item2-2', value: 'value2-2' }, + ], + }, ] const expected = { @@ -45,7 +45,7 @@ test('flattens tree with no root', t => { _depth: 0, children: undefined, name: 'item1', - value: 'value1' + value: 'value1', }, 1: { _id: '1', @@ -53,7 +53,7 @@ test('flattens tree with no root', t => { _depth: 0, children: undefined, name: 'item2', - value: 'value2' + value: 'value2', }, '0-0': { _id: '0-0', @@ -62,28 +62,28 @@ test('flattens tree with no root', t => { _depth: 1, children: undefined, name: 'item1-1', - value: 'value1-1' + value: 'value1-1', }, '0-1': { _id: '0-1', _parent: '0', _depth: 1, name: 'item1-2', - value: 'value1-2' + value: 'value1-2', }, '0-0-0': { _id: '0-0-0', _parent: '0-0', _depth: 2, name: 'item1-1-1', - value: 'value1-1-1' + value: 'value1-1-1', }, '0-0-1': { _id: '0-0-1', _parent: '0-0', _depth: 2, name: 'item1-1-2', - value: 'value1-1-2' + value: 'value1-1-2', }, '1-0': { _id: '1-0', @@ -92,28 +92,28 @@ test('flattens tree with no root', t => { _depth: 1, children: undefined, name: 'item2-1', - value: 'value2-1' + value: 'value2-1', }, '1-1': { _id: '1-1', _parent: '1', _depth: 1, name: 'item2-2', - value: 'value2-2' + value: 'value2-2', }, '1-0-0': { _id: '1-0-0', _parent: '1-0', _depth: 2, name: 'item2-1-1', - value: 'value2-1-1' + value: 'value2-1-1', }, '1-0-1': { _id: '1-0-1', _parent: '1-0', _depth: 2, name: 'item2-1-2', - value: 'value2-1-2' + value: 'value2-1-2', }, '1-0-2': { _id: '1-0-2', @@ -122,15 +122,15 @@ test('flattens tree with no root', t => { _depth: 2, children: undefined, name: 'item2-1-3', - value: 'value2-1-3' + value: 'value2-1-3', }, '1-0-2-0': { _id: '1-0-2-0', _parent: '1-0-2', _depth: 3, name: 'item2-1-3-1', - value: 'value2-1-3-1' - } + value: 'value2-1-3-1', + }, } const { list } = flattenTree({ tree }) @@ -145,10 +145,10 @@ test('flattens tree with root', t => { { name: 'item1-1', value: 'value1-1', - children: [{ name: 'item1-1-1', value: 'value1-1-1' }, { name: 'item1-1-2', value: 'value1-1-2' }] + children: [{ name: 'item1-1-1', value: 'value1-1-1' }, { name: 'item1-1-2', value: 'value1-1-2' }], }, - { name: 'item1-2', value: 'value1-2' } - ] + { name: 'item1-2', value: 'value1-2' }, + ], } const expected = { @@ -158,7 +158,7 @@ test('flattens tree with root', t => { _depth: 0, children: undefined, name: 'item1', - value: 'value1' + value: 'value1', }, '0-0': { _id: '0-0', @@ -167,29 +167,29 @@ test('flattens tree with root', t => { _depth: 1, children: undefined, name: 'item1-1', - value: 'value1-1' + value: 'value1-1', }, '0-1': { _id: '0-1', _parent: '0', _depth: 1, name: 'item1-2', - value: 'value1-2' + value: 'value1-2', }, '0-0-0': { _id: '0-0-0', _parent: '0-0', _depth: 2, name: 'item1-1-1', - value: 'value1-1-1' + value: 'value1-1-1', }, '0-0-1': { _id: '0-0-1', _parent: '0-0', _depth: 2, name: 'item1-1-2', - value: 'value1-1-2' - } + value: 'value1-1-2', + }, } const { list } = flattenTree({ tree }) @@ -205,14 +205,14 @@ test('sets default values', t => { { name: 'item1-1', value: 'value1-1', - children: [{ name: 'item1-1-1', value: 'value1-1-1' }, { name: 'item1-1-2', value: 'value1-1-2' }] + children: [{ name: 'item1-1-1', value: 'value1-1-1' }, { name: 'item1-1-2', value: 'value1-1-2' }], }, { name: 'item1-2', value: 'value1-2', - isDefaultValue: true - } - ] + isDefaultValue: true, + }, + ], }, { name: 'item2', @@ -228,13 +228,13 @@ test('sets default values', t => { { name: 'item2-1-3', value: 'value2-1-3', - children: [{ name: 'item2-1-3-1', value: 'value2-1-3-1' }] - } - ] + children: [{ name: 'item2-1-3-1', value: 'value2-1-3-1' }], + }, + ], }, - { name: 'item2-2', value: 'value2-2' } - ] - } + { name: 'item2-2', value: 'value2-2' }, + ], + }, ] const expectedDefaultValues = ['0-1', '1'] @@ -245,7 +245,7 @@ test('sets default values', t => { _depth: 0, children: undefined, name: 'item1', - value: 'value1' + value: 'value1', }, 1: { _id: '1', @@ -255,7 +255,7 @@ test('sets default values', t => { name: 'item2', value: 'value2', checked: true, - isDefaultValue: true + isDefaultValue: true, }, '0-0': { _id: '0-0', @@ -264,7 +264,7 @@ test('sets default values', t => { _depth: 1, children: undefined, name: 'item1-1', - value: 'value1-1' + value: 'value1-1', }, '0-1': { _id: '0-1', @@ -273,21 +273,21 @@ test('sets default values', t => { name: 'item1-2', value: 'value1-2', checked: true, - isDefaultValue: true + isDefaultValue: true, }, '0-0-0': { _id: '0-0-0', _parent: '0-0', _depth: 2, name: 'item1-1-1', - value: 'value1-1-1' + value: 'value1-1-1', }, '0-0-1': { _id: '0-0-1', _parent: '0-0', _depth: 2, name: 'item1-1-2', - value: 'value1-1-2' + value: 'value1-1-2', }, '1-0': { _id: '1-0', @@ -297,7 +297,7 @@ test('sets default values', t => { children: undefined, name: 'item2-1', value: 'value2-1', - checked: true + checked: true, }, '1-1': { _id: '1-1', @@ -305,7 +305,7 @@ test('sets default values', t => { _depth: 1, name: 'item2-2', value: 'value2-2', - checked: true + checked: true, }, '1-0-0': { _id: '1-0-0', @@ -313,7 +313,7 @@ test('sets default values', t => { _depth: 2, name: 'item2-1-1', value: 'value2-1-1', - checked: true + checked: true, }, '1-0-1': { _id: '1-0-1', @@ -321,7 +321,7 @@ test('sets default values', t => { _depth: 2, name: 'item2-1-2', value: 'value2-1-2', - checked: true + checked: true, }, '1-0-2': { _id: '1-0-2', @@ -331,7 +331,7 @@ test('sets default values', t => { children: undefined, name: 'item2-1-3', value: 'value2-1-3', - checked: true + checked: true, }, '1-0-2-0': { _id: '1-0-2-0', @@ -339,8 +339,8 @@ test('sets default values', t => { _depth: 3, name: 'item2-1-3-1', value: 'value2-1-3-1', - checked: true - } + checked: true, + }, } const { defaultValues, list } = flattenTree({ tree }) @@ -353,18 +353,18 @@ test('does not check parent with empty children when showing partial state', t = { name: 'item1', value: 'value1', - children: [] + children: [], }, { name: 'item2', value: 'value2', - children: [] + children: [], }, { name: 'item3', value: 'value3', - children: [] - } + children: [], + }, ] const expectedTree = { @@ -375,7 +375,7 @@ test('does not check parent with empty children when showing partial state', t = children: undefined, name: 'item1', value: 'value1', - partial: false + partial: false, }, 1: { _id: '1', @@ -384,7 +384,7 @@ test('does not check parent with empty children when showing partial state', t = children: undefined, name: 'item2', value: 'value2', - partial: false + partial: false, }, 2: { _id: '2', @@ -393,8 +393,8 @@ test('does not check parent with empty children when showing partial state', t = children: undefined, name: 'item3', value: 'value3', - partial: false - } + partial: false, + }, } const { list } = flattenTree({ tree, simple: false, showPartialState: true }) diff --git a/src/tree-manager/tests/index.test.js b/src/tree-manager/tests/index.test.js index 040c8bff..8be6a8d3 100644 --- a/src/tree-manager/tests/index.test.js +++ b/src/tree-manager/tests/index.test.js @@ -8,9 +8,9 @@ test('should not mutate input', t => { children: [ { label: 'l1c1', - value: 'l1v1' - } - ] + value: 'l1v1', + }, + ], } const actual = { label: 'l1', @@ -18,9 +18,9 @@ test('should not mutate input', t => { children: [ { label: 'l1c1', - value: 'l1v1' - } - ] + value: 'l1v1', + }, + ], } /* eslint-disable no-new */ new TreeManager({ data: actual }) @@ -36,10 +36,10 @@ test('should set initial check state based on parent check state when node check { id: 'c1', label: 'l1c1', - value: 'l1v1' - } + value: 'l1v1', + }, ], - checked: true + checked: true, } const manager = new TreeManager({ data: tree }) t.true(manager.getNodeById('c1').checked) @@ -55,9 +55,9 @@ test('should set initial check state based on node check state when node check s id: 'c1', label: 'l1c1', value: 'l1v1', - checked: true - } - ] + checked: true, + }, + ], } const manager = new TreeManager({ data: tree }) t.true(manager.getNodeById('c1').checked) @@ -73,9 +73,9 @@ test('should set initial check state based on node check state when node check s id: 'c1', label: 'l1c1', value: 'l1v1', - checked: false - } - ] + checked: false, + }, + ], } const manager = new TreeManager({ data: tree }) t.false(manager.getNodeById('c1').checked) @@ -91,9 +91,9 @@ test('should get tags based on children check state', t => { id: 'c1', label: 'l1c1', value: 'l1v1', - checked: true - } - ] + checked: true, + }, + ], } const manager = new TreeManager({ data: tree }) t.deepEqual(manager.getTags().map(t => t.label), ['l1c1']) @@ -108,9 +108,9 @@ test('should get tags based on parent check state', t => { { label: 'l1c1', value: 'l1v1', - checked: true - } - ] + checked: true, + }, + ], } const manager = new TreeManager({ data: tree }) t.deepEqual(manager.getTags().map(t => t.label), ['l1']) @@ -125,9 +125,9 @@ test('should get tags based on multiple parent check state', t => { children: [ { label: 'l1c1', - value: 'l1v1' - } - ] + value: 'l1v1', + }, + ], }, { label: 'l2', @@ -136,10 +136,10 @@ test('should get tags based on multiple parent check state', t => { children: [ { label: 'l2c2', - value: 'l2v2' - } - ] - } + value: 'l2v2', + }, + ], + }, ] const manager = new TreeManager({ data: tree }) t.deepEqual(manager.getTags().map(t => t.label), ['l1', 'l2']) @@ -154,9 +154,9 @@ test('should get tags based on multiple parent/child check state', t => { children: [ { label: 'l1c1', - value: 'l1v1' - } - ] + value: 'l1v1', + }, + ], }, { label: 'l2', @@ -165,10 +165,10 @@ test('should get tags based on multiple parent/child check state', t => { { label: 'l2c2', value: 'l2v2', - checked: true - } - ] - } + checked: true, + }, + ], + }, ] const manager = new TreeManager({ data: tree }) t.deepEqual(manager.getTags().map(t => t.label), ['l1', 'l2c2']) @@ -183,9 +183,9 @@ test('should toggle children when checked', t => { { id: 'c1', label: 'l1c1', - value: 'l1v1' - } - ] + value: 'l1v1', + }, + ], } const manager = new TreeManager({ data: tree }) manager.setNodeCheckedState('i1', true) @@ -202,9 +202,9 @@ test('should toggle children when unchecked', t => { id: 'c1', label: 'l1c1', value: 'l1v1', - checked: true - } - ] + checked: true, + }, + ], } const manager = new TreeManager({ data: tree }) manager.setNodeCheckedState('i1', false) @@ -221,9 +221,9 @@ test('should uncheck parent when unchecked', t => { { id: 'c1', label: 'l1c1', - value: 'l1v1' - } - ] + value: 'l1v1', + }, + ], } const manager = new TreeManager({ data: tree }) manager.setNodeCheckedState('c1', false) @@ -244,11 +244,11 @@ test('should uncheck all parents when unchecked', t => { { id: 'c2', label: 'l2c1', - value: 'l2v1' - } - ] - } - ] + value: 'l2v1', + }, + ], + }, + ], } const manager = new TreeManager({ data: tree }) manager.setNodeCheckedState('c2', false) @@ -273,11 +273,11 @@ test('should collapse all children when collapsed', t => { id: 'c2', label: 'l2c1', value: 'l2v1', - expanded: true - } - ] - } - ] + expanded: true, + }, + ], + }, + ], } const manager = new TreeManager({ data: tree }) manager.toggleNodeExpandState('i1') @@ -299,11 +299,11 @@ test('should expand node (and not children) when expanded', t => { { id: 'c2', label: 'l2c1', - value: 'l2v1' - } - ] - } - ] + value: 'l2v1', + }, + ], + }, + ], } const manager = new TreeManager({ data: tree }) manager.toggleNodeExpandState('i1') @@ -326,11 +326,11 @@ test('should get matching nodes when searched', t => { { id: 'c2', label: 'No one can get me', - value: 'l2v1' - } - ] - } - ] + value: 'l2v1', + }, + ], + }, + ], } const manager = new TreeManager({ data: tree }) const { allNodesHidden, tree: matchTree } = manager.filterTree('search') @@ -354,11 +354,11 @@ test('should hide all nodes when search term is not found', t => { { id: 'c2', label: 'l2c1', - value: 'l2v1' - } - ] - } - ] + value: 'l2v1', + }, + ], + }, + ], } const manager = new TreeManager({ data: tree }) const { allNodesHidden } = manager.filterTree('bla-bla') @@ -380,17 +380,17 @@ test('should use cached results for subsequent searches', t => { { id: 'c2', label: 'No one can get me', - value: 'l2v1' - } - ] - } - ] + value: 'l2v1', + }, + ], + }, + ], }, { id: 'i2', label: 'sears', - value: 'sears' - } + value: 'sears', + }, ] const manager = new TreeManager({ data: tree }) const { allNodesHidden } = manager.filterTree('sea') @@ -416,17 +416,17 @@ test('should restore nodes', t => { { id: 'c2', label: 'No one can get me', - value: 'l2v1' - } - ] - } - ] + value: 'l2v1', + }, + ], + }, + ], }, { id: 'i2', label: 'sears', - value: 'sears' - } + value: 'sears', + }, ] const manager = new TreeManager({ data: tree }) manager.filterTree('search') @@ -449,11 +449,11 @@ test('should get matching nodes with mixed case when searched', t => { { id: 'c2', label: 'No one can get me', - value: 'l2v1' - } - ] - } - ] + value: 'l2v1', + }, + ], + }, + ], } const manager = new TreeManager({ data: tree }) const { allNodesHidden, tree: matchTree } = manager.filterTree('SearCH') @@ -473,9 +473,9 @@ test('should uncheck previous node in simple select mode', t => { { id: 'c1', label: 'l1c1', - value: 'l1v1' - } - ] + value: 'l1v1', + }, + ], }, { id: 'i2', @@ -485,10 +485,10 @@ test('should uncheck previous node in simple select mode', t => { { id: 'c2', label: 'l2c2', - value: 'l2v2' - } - ] - } + value: 'l2v2', + }, + ], + }, ] const manager = new TreeManager({ data: tree, simpleSelect: true }) manager.setNodeCheckedState('i1', true) @@ -514,9 +514,9 @@ test('should restore default values', t => { id: 'c1', label: 'l1c1', value: 'l1v1', - isDefaultValue: true - } - ] + isDefaultValue: true, + }, + ], }, { id: 'i2', @@ -527,10 +527,10 @@ test('should restore default values', t => { { id: 'c2', label: 'l2c2', - value: 'l2v2' - } - ] - } + value: 'l2v2', + }, + ], + }, ] const manager = new TreeManager({ data: tree }) manager.setNodeCheckedState('c1', false) @@ -559,12 +559,12 @@ test('should return children when search with `keepChildrenOnSearch`', t => { { id: 'c2', label: 'You can see me', - value: 'l2v1' - } - ] - } - ] - } + value: 'l2v1', + }, + ], + }, + ], + }, ] const manager = new TreeManager({ data: tree }) const keepTreeOnSearch = true diff --git a/src/tree-manager/tests/initialState.test.js b/src/tree-manager/tests/initialState.test.js index 48a3b4d7..fd62bda5 100644 --- a/src/tree-manager/tests/initialState.test.js +++ b/src/tree-manager/tests/initialState.test.js @@ -11,10 +11,10 @@ test('should set initial disabled state based on parent disabled state when node { id: 'c1', label: 'l1c1', - value: 'l1v1' - } + value: 'l1v1', + }, ], - disabled: true + disabled: true, } const manager = new TreeManager({ data: tree }) t.true(manager.getNodeById('c1').disabled) @@ -31,10 +31,10 @@ test('should set initial disabled state when node disabled state is not defined { id: 'c1', label: 'l1c1', - value: 'l1v1' - } + value: 'l1v1', + }, ], - disabled: true + disabled: true, } const manager = new TreeManager({ data: tree }) t.true(manager.getNodeById('c1').disabled) @@ -57,12 +57,12 @@ test('should set initial disabled state for grandchild when node disabled state { id: 'gc1', label: 'l2c1', - value: 'l2v1' - } - ] - } + value: 'l2v1', + }, + ], + }, ], - disabled: true + disabled: true, } const manager = new TreeManager({ data: tree }) t.true(manager.getNodeById('c1').disabled) @@ -86,12 +86,12 @@ test('when node disabled state is not defined and grand parent checked is define { id: 'gc1', label: 'l2c1', - value: 'l2v1' - } - ] - } + value: 'l2v1', + }, + ], + }, ], - checked: true + checked: true, } const manager = new TreeManager({ data: tree }) t.true(manager.getNodeById('c1').disabled) @@ -117,13 +117,13 @@ test('when node disabled is not defined, parent checked/disabled is defined and { id: 'gc1', label: 'l2c1', - value: 'l2v1' - } - ] - } + value: 'l2v1', + }, + ], + }, ], checked: true, - disabled: true + disabled: true, } const manager = new TreeManager({ data: tree }) t.false(manager.getNodeById('c1').disabled) @@ -138,13 +138,13 @@ test('should set partial state if at least one child is partial', t => { children: [ { id: '1-1', - children: [{ id: '1-1-1', checked: true }, { id: '1-1-2' }] + children: [{ id: '1-1-1', checked: true }, { id: '1-1-2' }], }, { id: '1-2', - children: [{ id: '1-2-1' }, { id: '1-2-2' }, { id: '1-2-3' }] - } - ] + children: [{ id: '1-2-1' }, { id: '1-2-2' }, { id: '1-2-3' }], + }, + ], } const manager = new TreeManager({ data: tree, simpleSelect: false, showPartiallySelected: true }) diff --git a/src/tree-manager/tests/partialSelect.test.js b/src/tree-manager/tests/partialSelect.test.js index 9d863580..62a36e38 100644 --- a/src/tree-manager/tests/partialSelect.test.js +++ b/src/tree-manager/tests/partialSelect.test.js @@ -1,6 +1,15 @@ import test from 'ava' import TreeManager from '..' -import { grandParent, parent1, parent2, parents, childrenOfParent1, childrenOfParent2, children, assertTreeInExpectedState } from './partial-setup' +import { + grandParent, + parent1, + parent2, + parents, + childrenOfParent1, + childrenOfParent2, + children, + assertTreeInExpectedState, +} from './partial-setup' test.beforeEach(t => { t.context.tree = { @@ -8,13 +17,13 @@ test.beforeEach(t => { children: [ { id: parent1, - children: [{ id: '1-1-1' }, { id: '1-1-2' }] + children: [{ id: '1-1-1' }, { id: '1-1-2' }], }, { id: parent2, - children: [{ id: '1-2-1' }, { id: '1-2-2' }, { id: '1-2-3' }] - } - ] + children: [{ id: '1-2-1' }, { id: '1-2-2' }, { id: '1-2-3' }], + }, + ], } }) @@ -28,7 +37,7 @@ test('should set partial state if first child is checked', t => { checked: [parent1, ...childrenOfParent1], nonPartial: [...parents, ...children], partial: [grandParent], - unchecked: [parent2, ...childrenOfParent2] + unchecked: [parent2, ...childrenOfParent2], } assertTreeInExpectedState(t, manager, expected) }) @@ -43,7 +52,7 @@ test('should set partial state if last child is checked', t => { checked: [parent2, ...childrenOfParent2], nonPartial: [...parents, ...children], partial: [grandParent], - unchecked: [parent1, ...childrenOfParent1] + unchecked: [parent1, ...childrenOfParent1], } assertTreeInExpectedState(t, manager, expected) }) @@ -58,7 +67,7 @@ test('should set partial state if at least one grandchild is partial', t => { checked: [tree.children[1].children[1].id], nonPartial: [parent1, ...childrenOfParent1], partial: [grandParent, parent2], - unchecked: [parent1, ...childrenOfParent1] + unchecked: [parent1, ...childrenOfParent1], } assertTreeInExpectedState(t, manager, expected) }) @@ -72,7 +81,7 @@ test('should not set partial state if all of the children are checked', t => { const expected = { checked: [grandParent, ...parents, ...children], - nonPartial: [grandParent, ...parents, ...children] + nonPartial: [grandParent, ...parents, ...children], } assertTreeInExpectedState(t, manager, expected) }) diff --git a/src/tree-manager/tests/stateTransitions.test.js b/src/tree-manager/tests/stateTransitions.test.js index 95dfec5e..58227a5d 100644 --- a/src/tree-manager/tests/stateTransitions.test.js +++ b/src/tree-manager/tests/stateTransitions.test.js @@ -1,19 +1,28 @@ import test from 'ava' import TreeManager from '..' -import { grandParent, parent1, parent2, parents, childrenOfParent1, childrenOfParent2, children, assertTreeInExpectedState } from './partial-setup' +import { + grandParent, + parent1, + parent2, + parents, + childrenOfParent1, + childrenOfParent2, + children, + assertTreeInExpectedState, +} from './partial-setup' const tree = { id: '1', children: [ { id: '1-1', - children: [{ id: '1-1-1' }, { id: '1-1-2' }] + children: [{ id: '1-1-1' }, { id: '1-1-2' }], }, { id: '1-2', - children: [{ id: '1-2-1' }, { id: '1-2-2' }, { id: '1-2-3' }] - } - ] + children: [{ id: '1-2-1' }, { id: '1-2-2' }, { id: '1-2-3' }], + }, + ], } // gp: grand parent @@ -27,7 +36,7 @@ test('select gp -> everything checked', t => { const expected = { checked: [grandParent, ...parents, ...children], - nonPartial: [grandParent, ...parents, ...children] + nonPartial: [grandParent, ...parents, ...children], } assertTreeInExpectedState(t, manager, expected) }) @@ -43,7 +52,7 @@ test('select gp, unselect child -> gp partial', t => { const expected = { checked: [parent2, ...childrenOfParent2], partial: [grandParent], - unchecked: [parent1, ...childrenOfParent1] + unchecked: [parent1, ...childrenOfParent1], } assertTreeInExpectedState(t, manager, expected) }) @@ -61,7 +70,7 @@ test('select gp, unselect child, reselect child -> all checked', t => { const expected = { checked: [grandParent, ...parents, ...children], - nonPartial: [grandParent, ...parents, ...children] + nonPartial: [grandParent, ...parents, ...children], } assertTreeInExpectedState(t, manager, expected) }) @@ -78,7 +87,7 @@ test('select gp, unselect grandchild -> gp, p1 partial', t => { checked: [parent2, ...childrenOfParent2, childrenOfParent1[1]], nonPartial: [parent2, ...childrenOfParent2], partial: [grandParent, parent1], - unchecked: [childrenOfParent1[0]] + unchecked: [childrenOfParent1[0]], } assertTreeInExpectedState(t, manager, expected) }) @@ -96,7 +105,7 @@ test('select gp, unselect grandchild, reselect grandchild -> all checked', t => const expected = { checked: [grandParent, ...parents, ...children], - nonPartial: [grandParent, ...parents, ...children] + nonPartial: [grandParent, ...parents, ...children], } assertTreeInExpectedState(t, manager, expected) }) @@ -114,7 +123,7 @@ test('select gp, unselect grandchild, reselect p1 -> all checked', t => { const expected = { checked: [grandParent, ...parents, ...children], - nonPartial: [grandParent, ...parents, ...children] + nonPartial: [grandParent, ...parents, ...children], } assertTreeInExpectedState(t, manager, expected) }) @@ -132,7 +141,7 @@ test('select gp, unselect grandchild, reselect gp -> all checked', t => { const expected = { checked: [grandParent, ...parents, ...children], - nonPartial: [grandParent, ...parents, ...children] + nonPartial: [grandParent, ...parents, ...children], } assertTreeInExpectedState(t, manager, expected) }) diff --git a/src/tree-node/action.js b/src/tree-node/action.js index 917b47c7..34dc3382 100644 --- a/src/tree-node/action.js +++ b/src/tree-node/action.js @@ -8,11 +8,11 @@ class Action extends PureComponent { className: PropTypes.string, actionData: PropTypes.object, onAction: PropTypes.func, - readOnly: PropTypes.bool + readOnly: PropTypes.bool, } static defaultProps = { - onAction: () => {} + onAction: () => {}, } handleClick = () => { diff --git a/src/tree-node/action.test.js b/src/tree-node/action.test.js index 1f2a62ed..38e0994d 100644 --- a/src/tree-node/action.test.js +++ b/src/tree-node/action.test.js @@ -11,7 +11,7 @@ test('renders action with given props', t => { title: 'action', className: 'cn0-0-0', text: 'hello', - junk: '1' + junk: '1', } const wrapper = toJson(shallow()) @@ -25,7 +25,7 @@ test('notifies clicks if handler is passed', t => { title: 'action', className: 'cn0-0-0', onAction: onClick, - actionData: { id: 'actionA' } + actionData: { id: 'actionA' }, } const wrapper = shallow() diff --git a/src/tree-node/actions.js b/src/tree-node/actions.js index 0847e5b2..7ba888ed 100644 --- a/src/tree-node/actions.js +++ b/src/tree-node/actions.js @@ -7,7 +7,7 @@ import { isEmpty } from '../utils' class Actions extends PureComponent { static propTypes = { id: PropTypes.string.isRequired, - actions: PropTypes.array + actions: PropTypes.array, } render() { diff --git a/src/tree-node/actions.test.js b/src/tree-node/actions.test.js index 1131c528..d728ecc6 100644 --- a/src/tree-node/actions.test.js +++ b/src/tree-node/actions.test.js @@ -11,8 +11,8 @@ test('renders actions', t => { title: 'action', className: 'cn0-0-0', text: 'hello', - junk: '1' - } + junk: '1', + }, ] const wrapper = toJson(shallow()) diff --git a/src/tree-node/index.js b/src/tree-node/index.js index 7ad49dda..2998b572 100644 --- a/src/tree-node/index.js +++ b/src/tree-node/index.js @@ -15,8 +15,17 @@ const isLeaf = children => isEmpty(children) const getNodeCx = props => { const { - keepTreeOnSearch, keepChildrenOnSearch, _children, matchInChildren, matchInParent, - disabled, partial, hide, className, showPartiallySelected, readOnly + keepTreeOnSearch, + keepChildrenOnSearch, + _children, + matchInChildren, + matchInParent, + disabled, + partial, + hide, + className, + showPartiallySelected, + readOnly, } = props return cx( @@ -29,7 +38,7 @@ const getNodeCx = props => { 'match-in-children': keepTreeOnSearch && matchInChildren, 'match-in-parent': keepTreeOnSearch && keepChildrenOnSearch && matchInParent, partial: showPartiallySelected && partial, - readOnly + readOnly, }, className ) @@ -58,7 +67,7 @@ class TreeNode extends PureComponent { onCheckboxChange: PropTypes.func, simpleSelect: PropTypes.bool, showPartiallySelected: PropTypes.bool, - readOnly: PropTypes.bool + readOnly: PropTypes.bool, } render() { @@ -82,7 +91,7 @@ class TreeNode extends PureComponent { onNodeToggle, onCheckboxChange, showPartiallySelected, - readOnly + readOnly, } = this.props const liCx = getNodeCx(this.props) const style = keepTreeOnSearch || !searchModeOn ? { paddingLeft: `${(_depth || 0) * 20}px` } : {} diff --git a/src/tree-node/index.test.js b/src/tree-node/index.test.js index eea39351..368dea61 100644 --- a/src/tree-node/index.test.js +++ b/src/tree-node/index.test.js @@ -23,9 +23,9 @@ test('renders tree node', t => { { id: 'NOT', title: 'NOT', - className: 'fa fa-ban' - } - ] + className: 'fa fa-ban', + }, + ], } const wrapper = shallow() @@ -39,7 +39,7 @@ test('notifies node toggle changes', t => { _parent: '0-0', label: 'item0-0-0', value: 'value0-0-0', - className: 'cn0-0-0' + className: 'cn0-0-0', } const onChange = spy() @@ -47,7 +47,7 @@ test('notifies node toggle changes', t => { const wrapper = mount() const event = { stopPropagation: spy(), - nativeEvent: { stopImmediatePropagation: spy() } + nativeEvent: { stopImmediatePropagation: spy() }, } wrapper.find('.toggle').simulate('click', event) t.true(onChange.calledWith('0-0-0')) @@ -59,7 +59,7 @@ test('remove gap during search', t => { _parent: '0-0', label: 'item0-0-0', value: 'value0-0-0', - className: 'cn0-0-0' + className: 'cn0-0-0', } const wrapper = shallow() @@ -74,7 +74,7 @@ test('disable checkbox if the node has disabled status', t => { disabled: true, label: 'item0-0-0', value: 'value0-0-0', - className: 'cn0-0-0' + className: 'cn0-0-0', } const wrapper = shallow() @@ -90,8 +90,8 @@ test('should render data attributes', t => { value: 'value0-0-0', dataset: { first: 'john', - last: 'smith' - } + last: 'smith', + }, } const wrapper = shallow() diff --git a/src/tree-node/node-label.js b/src/tree-node/node-label.js index bffc2731..90b200fd 100644 --- a/src/tree-node/node-label.js +++ b/src/tree-node/node-label.js @@ -22,7 +22,7 @@ class NodeLabel extends PureComponent { simpleSelect: PropTypes.bool, showPartiallySelected: PropTypes.bool, onCheckboxChange: PropTypes.func, - readOnly: PropTypes.bool + readOnly: PropTypes.bool, } handleCheckboxChange = e => { @@ -31,7 +31,9 @@ class NodeLabel extends PureComponent { if (simpleSelect) { onCheckboxChange(id, true) } else { - const { target: { checked } } = e + const { + target: { checked }, + } = e onCheckboxChange(id, checked) } } diff --git a/src/tree-node/node-label.test.js b/src/tree-node/node-label.test.js index aaa4041d..4a854b8e 100644 --- a/src/tree-node/node-label.test.js +++ b/src/tree-node/node-label.test.js @@ -17,9 +17,9 @@ test('renders node label', t => { { id: 'NOT', title: 'NOT', - className: 'fa fa-ban' - } - ] + className: 'fa fa-ban', + }, + ], } const wrapper = shallow() @@ -34,7 +34,7 @@ test('notifies checkbox changes', t => { label: 'item0-0-0', value: 'value0-0-0', className: 'cn0-0-0', - checked: false + checked: false, } const onChange = spy() @@ -51,7 +51,7 @@ test('disable checkbox if the node has disabled status', t => { disabled: true, label: 'item0-0-0', value: 'value0-0-0', - className: 'cn0-0-0' + className: 'cn0-0-0', } const wrapper = shallow() @@ -66,7 +66,7 @@ test('notifies clicks in simple mode', t => { label: 'item0-0-0', value: 'value0-0-0', className: 'cn0-0-0', - checked: false + checked: false, } const onChange = spy() diff --git a/src/tree-node/toggle.js b/src/tree-node/toggle.js index 97e388c8..d98c428a 100644 --- a/src/tree-node/toggle.js +++ b/src/tree-node/toggle.js @@ -10,7 +10,7 @@ class Toggle extends PureComponent { expanded: PropTypes.bool, isLeaf: PropTypes.bool, onNodeToggle: PropTypes.func, - id: PropTypes.string + id: PropTypes.string, } onToggle = e => { diff --git a/src/tree/index.js b/src/tree/index.js index dd46ab58..b254774c 100644 --- a/src/tree/index.js +++ b/src/tree/index.js @@ -26,11 +26,11 @@ class Tree extends Component { simpleSelect: PropTypes.bool, showPartiallySelected: PropTypes.bool, pageSize: PropTypes.number, - readOnly: PropTypes.bool + readOnly: PropTypes.bool, } static defaultProps = { - pageSize: 100 + pageSize: 100, } constructor(props) { @@ -39,7 +39,7 @@ class Tree extends Component { this.computeInstanceProps(props) this.state = { - items: this.allVisibleNodes.slice(0, this.props.pageSize) + items: this.allVisibleNodes.slice(0, this.props.pageSize), } } @@ -60,27 +60,37 @@ class Tree extends Component { getNodes = props => { const { - data, keepTreeOnSearch, keepChildrenOnSearch, searchModeOn, simpleSelect, - showPartiallySelected, readOnly, onAction, onChange, onCheckboxChange, - onNodeToggle + data, + keepTreeOnSearch, + keepChildrenOnSearch, + searchModeOn, + simpleSelect, + showPartiallySelected, + readOnly, + onAction, + onChange, + onCheckboxChange, + onNodeToggle, } = props const items = [] data.forEach(node => { if (shouldRenderNode(node, searchModeOn, data)) { - items.push() + items.push( + + ) } }) return items diff --git a/src/tree/index.test.js b/src/tree/index.test.js index fa4b2f0d..7aace795 100644 --- a/src/tree/index.test.js +++ b/src/tree/index.test.js @@ -14,10 +14,10 @@ test.skip('renders tree nodes when search mode is on', t => { { label: 'item1-1', value: 'value1-1', - children: [{ label: 'item1-1-1', value: 'value1-1-1' }, { label: 'item1-1-2', value: 'value1-1-2' }] + children: [{ label: 'item1-1-1', value: 'value1-1-1' }, { label: 'item1-1-2', value: 'value1-1-2' }], }, - { label: 'item1-2', value: 'value1-2' } - ] + { label: 'item1-2', value: 'value1-2' }, + ], }, { label: 'item2', @@ -32,13 +32,13 @@ test.skip('renders tree nodes when search mode is on', t => { { label: 'item2-1-3', value: 'value2-1-3', - children: [{ label: 'item2-1-3-1', value: 'value2-1-3-1' }] - } - ] + children: [{ label: 'item2-1-3-1', value: 'value2-1-3-1' }], + }, + ], }, - { label: 'item2-2', value: 'value2-2' } - ] - } + { label: 'item2-2', value: 'value2-2' }, + ], + }, ] const treeManager = new TreeManager(tree) const wrapper = shallow() @@ -61,21 +61,21 @@ test.skip('renders only expanded tree nodes when search mode is off', t => { { label: 'item1-1-1', value: 'value1-1-1', - className: 'should-not-be-rendered' + className: 'should-not-be-rendered', }, { label: 'item1-1-2', value: 'value1-1-2', - className: 'should-not-be-rendered' - } - ] + className: 'should-not-be-rendered', + }, + ], }, { label: 'item1-2', value: 'value1-2', - className: 'should-be-rendered' - } - ] + className: 'should-be-rendered', + }, + ], }, { label: 'item2', @@ -90,12 +90,12 @@ test.skip('renders only expanded tree nodes when search mode is off', t => { { label: 'item2-1-1', value: 'value2-1-1', - className: 'should-not-be-rendered' + className: 'should-not-be-rendered', }, { label: 'item2-1-2', value: 'value2-1-2', - className: 'should-not-be-rendered' + className: 'should-not-be-rendered', }, { label: 'item2-1-3', @@ -105,19 +105,19 @@ test.skip('renders only expanded tree nodes when search mode is off', t => { { label: 'item2-1-3-1', value: 'value2-1-3-1', - className: 'should-not-be-rendered' - } - ] - } - ] + className: 'should-not-be-rendered', + }, + ], + }, + ], }, { label: 'item2-2', value: 'value2-2', - className: 'should-not-be-rendered' - } - ] - } + className: 'should-not-be-rendered', + }, + ], + }, ] const treeManager = new TreeManager(tree) diff --git a/webpack.config.js b/webpack.config.js index 3b5444d7..db92273d 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -13,15 +13,15 @@ module.exports = { libraryTarget: 'umd', library: 'ReactDropdownTreeSelect', umdNamedDefine: true, - globalObject: 'this' + globalObject: 'this', }, externals: { react: { root: 'React', commonjs2: 'react', commonjs: 'react', - amd: 'react' - } + amd: 'react', + }, }, plugins: [ new webpack.DefinePlugin({ 'process.env.NODE_ENV': JSON.stringify('production') }), @@ -29,16 +29,14 @@ module.exports = { // Options similar to the same options in webpackOptions.output // both options are optional filename: 'styles.css', - chunkFilename: '[id].css' + chunkFilename: '[id].css', }), new BundleAnalyzerPlugin({ analyzerMode: 'static', openAnalyzer: false, - generateStatsFile: true + generateStatsFile: true, }), - new CopyPlugin([ - { from: path.join(__dirname, 'types'), to: path.join(__dirname, 'dist') } - ]) + new CopyPlugin([{ from: path.join(__dirname, 'types'), to: path.join(__dirname, 'dist') }]), ], module: { rules: [ @@ -46,7 +44,7 @@ module.exports = { test: /\.js$/, loaders: ['babel-loader'], include: path.join(__dirname, 'src'), - exclude: /node_modules/ + exclude: /node_modules/, }, { test: /\.css$/, @@ -59,12 +57,12 @@ module.exports = { options: { localIdentName: 'react-dropdown-tree-select__[local]--[hash:base64:5]', importLoaders: 1, - minimize: true - } + minimize: true, + }, }, - { loader: 'postcss-loader' } - ] - } - ] - } + { loader: 'postcss-loader' }, + ], + }, + ], + }, } diff --git a/yarn.lock b/yarn.lock index 8c58bb8d..2ad8250a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -50,6 +50,13 @@ dependencies: "@babel/highlight" "7.0.0-beta.49" +"@babel/code-frame@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0.tgz#06e2ab19bdb535385559aabb5ba59729482800f8" + integrity sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA== + dependencies: + "@babel/highlight" "^7.0.0" + "@babel/core@7.0.0-beta.44": version "7.0.0-beta.44" resolved "http://registry.npmjs.org/@babel/core/-/core-7.0.0-beta.44.tgz#90bb9e897427e7ebec2a1b857f458ff74ca28057" @@ -110,6 +117,17 @@ source-map "^0.5.0" trim-right "^1.0.1" +"@babel/generator@^7.4.0": + version "7.4.0" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.4.0.tgz#c230e79589ae7a729fd4631b9ded4dc220418196" + integrity sha512-/v5I+a1jhGSKLgZDcmAUZ4K/VePi43eRkUs3yePW1HB1iANOD5tqJXwGSG4BZhSksP8J9ejSlwGeTiiOFZOrXQ== + dependencies: + "@babel/types" "^7.4.0" + jsesc "^2.5.1" + lodash "^4.17.11" + source-map "^0.5.0" + trim-right "^1.0.1" + "@babel/helper-annotate-as-pure@7.0.0-beta.44": version "7.0.0-beta.44" resolved "http://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0-beta.44.tgz#8ecf33cc5235295afcc7f160a63cab17ce7776f4" @@ -160,6 +178,15 @@ "@babel/template" "7.0.0-beta.49" "@babel/types" "7.0.0-beta.49" +"@babel/helper-function-name@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz#a0ceb01685f73355d4360c1247f582bfafc8ff53" + integrity sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw== + dependencies: + "@babel/helper-get-function-arity" "^7.0.0" + "@babel/template" "^7.1.0" + "@babel/types" "^7.0.0" + "@babel/helper-get-function-arity@7.0.0-beta.44": version "7.0.0-beta.44" resolved "http://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0-beta.44.tgz#d03ca6dd2b9f7b0b1e6b32c56c72836140db3a15" @@ -178,6 +205,13 @@ dependencies: "@babel/types" "7.0.0-beta.49" +"@babel/helper-get-function-arity@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz#83572d4320e2a4657263734113c42868b64e49c3" + integrity sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ== + dependencies: + "@babel/types" "^7.0.0" + "@babel/helper-member-expression-to-functions@7.0.0-beta.46": version "7.0.0-beta.46" resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.0.0-beta.46.tgz#736344c1d68fb2c4b75cbe62370eb610c0578427" @@ -283,6 +317,13 @@ dependencies: "@babel/types" "7.0.0-beta.49" +"@babel/helper-split-export-declaration@^7.4.0": + version "7.4.0" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.0.tgz#571bfd52701f492920d63b7f735030e9a3e10b55" + integrity sha512-7Cuc6JZiYShaZnybDmfwhY4UYHzI6rlqhWjaIqbsJGsIqPimEYy5uh3akSRLMg65LSdSEnJ8a8/bWQN6u2oMGw== + dependencies: + "@babel/types" "^7.4.0" + "@babel/helper-wrap-function@7.0.0-beta.44": version "7.0.0-beta.44" resolved "http://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.0.0-beta.44.tgz#d128718a543f313264dff7cb386957e3e465c95d" @@ -333,10 +374,24 @@ esutils "^2.0.2" js-tokens "^3.0.0" +"@babel/highlight@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0.tgz#f710c38c8d458e6dd9a201afb637fcb781ce99e4" + integrity sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw== + dependencies: + chalk "^2.0.0" + esutils "^2.0.2" + js-tokens "^4.0.0" + "@babel/parser@7.0.0-beta.49": version "7.0.0-beta.49" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.0.0-beta.49.tgz#944d0c5ba2812bb159edbd226743afd265179bdc" +"@babel/parser@^7.0.0", "@babel/parser@^7.4.0": + version "7.4.2" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.4.2.tgz#b4521a400cb5a871eab3890787b4bc1326d38d91" + integrity sha512-9fJTDipQFvlfSVdD/JBtkiY0br9BtfvW2R8wo6CX/Ej2eMuV0gWPk1M67Mt3eggQvBqYW1FCEk8BN7WvGm/g5g== + "@babel/plugin-proposal-async-generator-functions@7.0.0-beta.44": version "7.0.0-beta.44" resolved "http://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.0.0-beta.44.tgz#b08d90cd0f6a82e11cb5ae64eee4fba7d0d7999e" @@ -489,6 +544,13 @@ "@babel/plugin-syntax-dynamic-import" "7.0.0-beta.46" "@babel/plugin-syntax-import-meta" "7.0.0-beta.46" +"@babel/runtime@7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.0.0.tgz#adeb78fedfc855aa05bc041640f3f6f98e85424c" + integrity sha512-7hGhzlcmg01CvH1EHdSPVXYX1aJ8KCEyz6I9xYIi/asDtzBPMyMhVibhM/K6g/5qnKBwjZtp10bNZIEFTRW1MA== + dependencies: + regenerator-runtime "^0.12.0" + "@babel/template@7.0.0-beta.44": version "7.0.0-beta.44" resolved "http://registry.npmjs.org/@babel/template/-/template-7.0.0-beta.44.tgz#f8832f4fdcee5d59bf515e595fc5106c529b394f" @@ -516,6 +578,15 @@ "@babel/types" "7.0.0-beta.49" lodash "^4.17.5" +"@babel/template@^7.1.0": + version "7.4.0" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.4.0.tgz#12474e9c077bae585c5d835a95c0b0b790c25c8b" + integrity sha512-SOWwxxClTTh5NdbbYZ0BmaBVzxzTh2tO/TeLTbF6MO6EzVhHTnff8CdBXx3mEtazFBoysmEM6GU/wF+SuSx4Fw== + dependencies: + "@babel/code-frame" "^7.0.0" + "@babel/parser" "^7.4.0" + "@babel/types" "^7.4.0" + "@babel/traverse@7.0.0-beta.44": version "7.0.0-beta.44" resolved "http://registry.npmjs.org/@babel/traverse/-/traverse-7.0.0-beta.44.tgz#a970a2c45477ad18017e2e465a0606feee0d2966" @@ -561,6 +632,21 @@ invariant "^2.2.0" lodash "^4.17.5" +"@babel/traverse@^7.0.0": + version "7.4.0" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.4.0.tgz#14006967dd1d2b3494cdd650c686db9daf0ddada" + integrity sha512-/DtIHKfyg2bBKnIN+BItaIlEg5pjAnzHOIQe5w+rHAw/rg9g0V7T4rqPX8BJPfW11kt3koyjAnTNwCzb28Y1PA== + dependencies: + "@babel/code-frame" "^7.0.0" + "@babel/generator" "^7.4.0" + "@babel/helper-function-name" "^7.1.0" + "@babel/helper-split-export-declaration" "^7.4.0" + "@babel/parser" "^7.4.0" + "@babel/types" "^7.4.0" + debug "^4.1.0" + globals "^11.1.0" + lodash "^4.17.11" + "@babel/types@7.0.0-beta.44": version "7.0.0-beta.44" resolved "http://registry.npmjs.org/@babel/types/-/types-7.0.0-beta.44.tgz#6b1b164591f77dec0a0342aca995f2d046b3a757" @@ -585,6 +671,15 @@ lodash "^4.17.5" to-fast-properties "^2.0.0" +"@babel/types@^7.0.0", "@babel/types@^7.4.0": + version "7.4.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.4.0.tgz#670724f77d24cce6cc7d8cf64599d511d164894c" + integrity sha512-aPvkXyU2SPOnztlgo8n9cEiXW755mgyvueUPcpStqdzoSPm0fjO0vQBjLkt3JKJW7ufikfcnMTTPsN1xaTsBPA== + dependencies: + esutils "^2.0.2" + lodash "^4.17.11" + to-fast-properties "^2.0.0" + "@babel/types@^7.1.3": version "7.1.3" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.1.3.tgz#3a767004567060c2f40fca49a304712c525ee37d" @@ -738,6 +833,13 @@ mkdirp "^0.5.1" rimraf "^2.5.2" +"@samverschueren/stream-to-observable@^0.3.0": + version "0.3.0" + resolved "https://registry.yarnpkg.com/@samverschueren/stream-to-observable/-/stream-to-observable-0.3.0.tgz#ecdf48d532c58ea477acfcab80348424f8d0662f" + integrity sha512-MI4Xx6LHs4Webyvi6EbspgyAb4D2Q2VtnCQ1blOJcoLS6mVa8lNN2rkIy1CVxfTUpoyIbCTkXES1rLXztFD1lg== + dependencies: + any-observable "^0.3.0" + "@shellscape/koa-send@^4.1.0": version "4.1.3" resolved "https://registry.yarnpkg.com/@shellscape/koa-send/-/koa-send-4.1.3.tgz#1a7c8df21f63487e060b7bfd8ed82e1d3c4ae0b0" @@ -829,6 +931,11 @@ acorn-jsx@^3.0.0: dependencies: acorn "^3.0.4" +acorn-jsx@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.0.1.tgz#32a064fd925429216a09b141102bfdd185fae40e" + integrity sha512-HJ7CfNHrfJLlNTzIEUTj43LNWGkqpRLxm3YjAlcD0ACydk9XynzYsCBHxut+iqt+1aBXkx9UP/w/ZqMr13XIzg== + acorn@^3.0.4: version "3.3.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-3.3.0.tgz#45e37fb39e8da3f25baee3ff5369e2bb5f22017a" @@ -841,6 +948,11 @@ acorn@^5.3.0: version "5.7.3" resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.3.tgz#67aa231bf8812974b85235a96771eb6bd07ea279" +acorn@^6.0.2: + version "6.1.1" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.1.1.tgz#7d25ae05bb8ad1f9b699108e1094ecd7884adc1f" + integrity sha512-jPTiwtOxaHNaAPg/dmrJ/beuzLRnXtB0kQPQ8JpotKJgTB6rX6c8mlf315941pyjBSaPg8NHXS9fhP4u17DpGA== + add-stream@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/add-stream/-/add-stream-1.0.0.tgz#6a7990437ca736d5e1288db92bd3266d5f5cb2aa" @@ -894,6 +1006,16 @@ ajv@^6.1.0: json-schema-traverse "^0.4.1" uri-js "^4.2.2" +ajv@^6.5.3: + version "6.10.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.10.0.tgz#90d0d54439da587cd7e843bfb7045f50bd22bdf1" + integrity sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg== + dependencies: + fast-deep-equal "^2.0.1" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.4.1" + uri-js "^4.2.2" + align-text@^0.1.1, align-text@^0.1.3: version "0.1.4" resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117" @@ -940,6 +1062,11 @@ ansi-escapes@^3.0.0, ansi-escapes@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.1.0.tgz#f73207bb81207d75fd6c83f125af26eea378ca30" +ansi-escapes@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b" + integrity sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ== + ansi-regex@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" @@ -948,6 +1075,11 @@ ansi-regex@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" +ansi-regex@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" + integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== + ansi-styles@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" @@ -962,6 +1094,11 @@ ansi-styles@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-1.0.0.tgz#cb102df1c56f5123eab8b67cd7b98027a0279178" +any-observable@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/any-observable/-/any-observable-0.3.0.tgz#af933475e5806a67d0d7df090dd5e8bef65d119b" + integrity sha512-/FQM1EDkTsf63Ub2C6O7GuYFDsSXUwsaZDurV0np41ocwq0jthUAYCmhBX9f+KwlaCgIuWyr/4WlUQUBfKfZog== + any-promise@^1.0.0, any-promise@^1.1.0: version "1.3.0" resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f" @@ -1008,9 +1145,10 @@ argparse@^1.0.7: dependencies: sprintf-js "~1.0.2" -aria-query@^0.7.0: - version "0.7.1" - resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-0.7.1.tgz#26cbb5aff64144b0a825be1846e0b16cfa00b11e" +aria-query@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-3.0.0.tgz#65b3fcc1ca1155a8c9ae64d6eee297f15d5133cc" + integrity sha1-ZbP8wcoRVajJrmTW7uKX8V1RM8w= dependencies: ast-types-flow "0.0.7" commander "^2.11.0" @@ -1041,6 +1179,11 @@ array-equal@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" +array-filter@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/array-filter/-/array-filter-1.0.0.tgz#baf79e62e6ef4c2a4c0b831232daffec251f9d83" + integrity sha1-uveeYubvTCpMC4MSMtr/7CUfnYM= + array-find-index@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" @@ -1086,6 +1229,15 @@ array.partial@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/array.partial/-/array.partial-1.0.4.tgz#a88c8372953d8a8d495b24b8c94bdb285084d2a6" +array.prototype.flat@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.1.tgz#812db8f02cad24d3fab65dd67eabe3b8903494a4" + integrity sha512-rVqIs330nLJvfC7JqYvEWwqVr5QjYF1ib02i3YJtR/fICO6527Tjpc/e4Mvmxh3GIePPreRXMdaGyC99YphWEw== + dependencies: + define-properties "^1.1.2" + es-abstract "^1.10.0" + function-bind "^1.1.1" + arrify@^1.0.0, arrify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" @@ -1124,7 +1276,7 @@ assign-symbols@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" -ast-types-flow@0.0.7: +ast-types-flow@0.0.7, ast-types-flow@^0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/ast-types-flow/-/ast-types-flow-0.0.7.tgz#f70b735c6bca1a5c9c22d982c3e39e7feba3bdad" @@ -1302,20 +1454,13 @@ aws4@^1.8.0: version "1.8.0" resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.8.0.tgz#f0e003d9ca9e7f59c7a508945d7b2ef9a04a542f" -axobject-query@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-0.1.0.tgz#62f59dbc59c9f9242759ca349960e7a2fe3c36c0" +axobject-query@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-2.0.2.tgz#ea187abe5b9002b377f925d8bf7d1c561adf38f9" + integrity sha512-MCeek8ZH7hKyO1rWUbKNQBbl4l2eY0ntk7OGi+q0RlafrCnfPxC06WZA+uebCfmYp4mNU9jRBP1AhGyf8+W3ww== dependencies: ast-types-flow "0.0.7" -babel-code-frame@7.0.0-beta.0: - version "7.0.0-beta.0" - resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-7.0.0-beta.0.tgz#418a7b5f3f7dc9a4670e61b1158b4c5661bec98d" - dependencies: - chalk "^2.0.0" - esutils "^2.0.2" - js-tokens "^3.0.0" - babel-code-frame@^6.11.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.22.0.tgz#027620bee567a88c32561574e7fd0801d33118e4" @@ -1380,14 +1525,17 @@ babel-core@^6.26.0: slash "^1.0.0" source-map "^0.5.7" -babel-eslint@8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-8.0.0.tgz#ce06f385bdfb5b6d7e603f06222f891abd14c240" +babel-eslint@10.0.1: + version "10.0.1" + resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-10.0.1.tgz#919681dc099614cd7d31d45c8908695092a1faed" + integrity sha512-z7OT1iNV+TjOwHNLLyJk+HN+YVWX+CLE6fPD2SymJZOZQBs+QIexFjhm4keGTm8MW9xr4EC9Q0PbaLB24V5GoQ== dependencies: - babel-code-frame "7.0.0-beta.0" - babel-traverse "7.0.0-beta.0" - babel-types "7.0.0-beta.0" - babylon "7.0.0-beta.22" + "@babel/code-frame" "^7.0.0" + "@babel/parser" "^7.0.0" + "@babel/traverse" "^7.0.0" + "@babel/types" "^7.0.0" + eslint-scope "3.7.1" + eslint-visitor-keys "^1.0.0" babel-generator@^6.18.0, babel-generator@^6.24.1, babel-generator@^6.26.0: version "6.26.1" @@ -1461,15 +1609,6 @@ babel-helper-explode-class@^6.24.1: babel-traverse "^6.24.1" babel-types "^6.24.1" -babel-helper-function-name@7.0.0-beta.0: - version "7.0.0-beta.0" - resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-7.0.0-beta.0.tgz#d1b6779b647e5c5c31ebeb05e13b998e4d352d56" - dependencies: - babel-helper-get-function-arity "7.0.0-beta.0" - babel-template "7.0.0-beta.0" - babel-traverse "7.0.0-beta.0" - babel-types "7.0.0-beta.0" - babel-helper-function-name@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz#d3475b8c03ed98242a25b48351ab18399d3580a9" @@ -1480,12 +1619,6 @@ babel-helper-function-name@^6.24.1: babel-traverse "^6.24.1" babel-types "^6.24.1" -babel-helper-get-function-arity@7.0.0-beta.0: - version "7.0.0-beta.0" - resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-7.0.0-beta.0.tgz#9d1ab7213bb5efe1ef1638a8ea1489969b5a8b6e" - dependencies: - babel-types "7.0.0-beta.0" - babel-helper-get-function-arity@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz#8f7782aa93407c41d3aa50908f89b031b1b6853d" @@ -1551,10 +1684,6 @@ babel-loader@7.1.2: loader-utils "^1.0.2" mkdirp "^0.5.1" -babel-messages@7.0.0-beta.0: - version "7.0.0-beta.0" - resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-7.0.0-beta.0.tgz#6df01296e49fc8fbd0637394326a167f36da817b" - babel-messages@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" @@ -2050,15 +2179,6 @@ babel-runtime@6.26.0, babel-runtime@^6.18.0, babel-runtime@^6.22.0, babel-runtim core-js "^2.4.0" regenerator-runtime "^0.11.0" -babel-template@7.0.0-beta.0: - version "7.0.0-beta.0" - resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-7.0.0-beta.0.tgz#85083cf9e4395d5e48bf5154d7a8d6991cafecfb" - dependencies: - babel-traverse "7.0.0-beta.0" - babel-types "7.0.0-beta.0" - babylon "7.0.0-beta.22" - lodash "^4.2.0" - babel-template@^6.16.0, babel-template@^6.24.1, babel-template@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" @@ -2069,20 +2189,6 @@ babel-template@^6.16.0, babel-template@^6.24.1, babel-template@^6.26.0: babylon "^6.18.0" lodash "^4.17.4" -babel-traverse@7.0.0-beta.0: - version "7.0.0-beta.0" - resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-7.0.0-beta.0.tgz#da14be9b762f62a2f060db464eaafdd8cd072a41" - dependencies: - babel-code-frame "7.0.0-beta.0" - babel-helper-function-name "7.0.0-beta.0" - babel-messages "7.0.0-beta.0" - babel-types "7.0.0-beta.0" - babylon "7.0.0-beta.22" - debug "^3.0.1" - globals "^10.0.0" - invariant "^2.2.0" - lodash "^4.2.0" - babel-traverse@^6.18.0, babel-traverse@^6.24.1, babel-traverse@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" @@ -2097,14 +2203,6 @@ babel-traverse@^6.18.0, babel-traverse@^6.24.1, babel-traverse@^6.26.0: invariant "^2.2.2" lodash "^4.17.4" -babel-types@7.0.0-beta.0: - version "7.0.0-beta.0" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-7.0.0-beta.0.tgz#eb8b6e556470e6dcc4aef982d79ad229469b5169" - dependencies: - esutils "^2.0.2" - lodash "^4.2.0" - to-fast-properties "^2.0.0" - babel-types@^6.18.0, babel-types@^6.19.0, babel-types@^6.24.1, babel-types@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" @@ -2114,10 +2212,6 @@ babel-types@^6.18.0, babel-types@^6.19.0, babel-types@^6.24.1, babel-types@^6.26 lodash "^4.17.4" to-fast-properties "^1.0.3" -babylon@7.0.0-beta.22: - version "7.0.0-beta.22" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-7.0.0-beta.22.tgz#74f0ad82ed7c7c3cfeab74cf684f815104161b65" - babylon@7.0.0-beta.44: version "7.0.0-beta.44" resolved "http://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.44.tgz#89159e15e6e30c5096e22d738d8c0af8a0e8ca1d" @@ -2202,6 +2296,11 @@ bluebird@^3.5.1: version "3.5.2" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.2.tgz#1be0908e054a751754549c270489c1505d4ab15a" +bluebird@^3.5.3: + version "3.5.3" + resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.3.tgz#7d01c6f9616c9a51ab0f8c549a79dfe6ec33efa7" + integrity sha512-/qKPUQlaW1OyR51WeCPBvRnAlnZFUJkCSG5HzGnuIqhgyJtF+T94lFnn33eiazjRm2LAHVy2guNnaq48X9SJuw== + bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: version "4.11.8" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f" @@ -2396,7 +2495,7 @@ buffer@^4.3.0: ieee754 "^1.1.4" isarray "^1.0.0" -builtin-modules@^1.0.0, builtin-modules@^1.1.1: +builtin-modules@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" @@ -2426,6 +2525,26 @@ cacache@^10.0.4: unique-filename "^1.1.0" y18n "^4.0.0" +cacache@^11.3.1: + version "11.3.2" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-11.3.2.tgz#2d81e308e3d258ca38125b676b98b2ac9ce69bfa" + integrity sha512-E0zP4EPGDOaT2chM08Als91eYnf8Z+eH1awwwVsngUmgppfM5jjJ8l3z5vO5p5w/I3LsiXawb1sW0VY65pQABg== + dependencies: + bluebird "^3.5.3" + chownr "^1.1.1" + figgy-pudding "^3.5.1" + glob "^7.1.3" + graceful-fs "^4.1.15" + lru-cache "^5.1.1" + mississippi "^3.0.0" + mkdirp "^0.5.1" + move-concurrently "^1.0.1" + promise-inflight "^1.0.1" + rimraf "^2.6.2" + ssri "^6.0.1" + unique-filename "^1.1.1" + y18n "^4.0.0" + cache-base@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" @@ -2474,16 +2593,35 @@ call-signature@0.0.2: version "0.0.2" resolved "https://registry.yarnpkg.com/call-signature/-/call-signature-0.0.2.tgz#a84abc825a55ef4cb2b028bd74e205a65b9a4996" +caller-callsite@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" + integrity sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ= + dependencies: + callsites "^2.0.0" + caller-path@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f" dependencies: callsites "^0.2.0" +caller-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-2.0.0.tgz#468f83044e369ab2010fac5f06ceee15bb2cb1f4" + integrity sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ= + dependencies: + caller-callsite "^2.0.0" + callsites@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/callsites/-/callsites-0.2.0.tgz#afab96262910a7f33c19a5775825c69f34e350ca" +callsites@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" + integrity sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA= + camelcase-keys@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" @@ -2614,6 +2752,15 @@ chalk@^2.3.1: escape-string-regexp "^1.0.5" supports-color "^5.3.0" +chalk@^2.4.2: + version "2.4.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + character-entities-html4@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/character-entities-html4/-/character-entities-html4-1.1.1.tgz#359a2a4a0f7e29d3dc2ac99bdbe21ee39438ea50" @@ -2634,6 +2781,11 @@ chardet@^0.4.0: version "0.4.2" resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.4.2.tgz#b5473b33dc97c424e5d98dc87d55d4d8a29c8bf2" +chardet@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" + integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== + check-types@^7.3.0: version "7.4.0" resolved "https://registry.yarnpkg.com/check-types/-/check-types-7.4.0.tgz#0378ec1b9616ec71f774931a3c6516fad8c152f4" @@ -2690,6 +2842,11 @@ chownr@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.0.1.tgz#e2a75042a9551908bebd25b8523d5f9769d79181" +chownr@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.1.tgz#54726b8b8fff4df053c42187e801fb4412df1494" + integrity sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g== + chrome-trace-event@^0.1.1: version "0.1.3" resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-0.1.3.tgz#d395af2d31c87b90a716c831fe326f69768ec084" @@ -2702,6 +2859,11 @@ ci-info@^1.5.0: version "1.6.0" resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.6.0.tgz#2ca20dbb9ceb32d4524a683303313f0304b1e497" +ci-info@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" + integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== + cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" @@ -2750,7 +2912,7 @@ cli-cursor@^1.0.1: dependencies: restore-cursor "^1.0.1" -cli-cursor@^2.1.0: +cli-cursor@^2.0.0, cli-cursor@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" dependencies: @@ -2760,6 +2922,14 @@ cli-spinners@^1.1.0: version "1.3.1" resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-1.3.1.tgz#002c1990912d0d59580c93bd36c056de99e4259a" +cli-truncate@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-0.2.1.tgz#9f15cfbb0705005369216c626ac7d05ab90dd574" + integrity sha1-nxXPuwcFAFNpIWxiasfQWrkN1XQ= + dependencies: + slice-ansi "0.0.4" + string-width "^1.0.1" + cli-truncate@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-1.1.0.tgz#2b2dfd83c53cfd3572b87fc4d430a808afb04086" @@ -2947,7 +3117,7 @@ commander@^2.11.0: version "2.15.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.15.0.tgz#ad2a23a1c3b036e392469b8012cec6b33b4c1322" -commander@^2.13.0: +commander@^2.13.0, commander@^2.14.1, commander@^2.9.0: version "2.19.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.19.0.tgz#f6198aa84e5b83c46054b94ddedbfed5ee9ff12a" @@ -3060,6 +3230,11 @@ configstore@^3.0.0: write-file-atomic "^2.0.0" xdg-basedir "^3.0.0" +confusing-browser-globals@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/confusing-browser-globals/-/confusing-browser-globals-1.0.6.tgz#5918188e8244492cdd46d6be1cab60edef3063ce" + integrity sha512-GzyX86c2TvaagAOR+lHL2Yq4T4EnoBcnojZBcNbxVKSunxmGTnioXHR5Mo2ha/XnCoQw8eurvj6Ta+SwPEPkKg== + console-browserify@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10" @@ -3293,6 +3468,23 @@ copy-descriptor@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" +copy-webpack-plugin@^5.0.1: + version "5.0.2" + resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-5.0.2.tgz#56186dfddbf9aa1b29c97fa4c796c1be98870da4" + integrity sha512-7nC7EynPrnBTtBwwbG1aTqrfNS1aTb9eEjSmQDqFtKAsJrR3uDb+pCDIFT2LzhW+SgGJxQcYzThrmXzzZ720uw== + dependencies: + cacache "^11.3.1" + find-cache-dir "^2.0.0" + glob-parent "^3.1.0" + globby "^7.1.1" + is-glob "^4.0.0" + loader-utils "^1.1.0" + minimatch "^3.0.4" + normalize-path "^3.0.0" + p-limit "^2.1.0" + serialize-javascript "^1.4.0" + webpack-log "^2.0.0" + core-js@^1.0.0: version "1.2.7" resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636" @@ -3335,6 +3527,16 @@ cosmiconfig@^5.0.2: js-yaml "^3.9.0" parse-json "^4.0.0" +cosmiconfig@^5.0.7: + version "5.2.0" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.2.0.tgz#45038e4d28a7fe787203aede9c25bca4a08b12c8" + integrity sha512-nxt+Nfc3JAqf4WIWd0jXLjTJZmsPLrA9DDc4nRw2KFJQJK7DNooqSXrNI7tzLG50CF8axczly5UV929tBmh/7g== + dependencies: + import-fresh "^2.0.0" + is-directory "^0.3.1" + js-yaml "^3.13.0" + parse-json "^4.0.0" + coveralls@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/coveralls/-/coveralls-3.0.0.tgz#22ef730330538080d29b8c151dc9146afde88a99" @@ -3608,9 +3810,10 @@ d@1: dependencies: es5-ext "^0.10.9" -damerau-levenshtein@^1.0.0: +damerau-levenshtein@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.4.tgz#03191c432cb6eea168bb77f3a55ffdccb8978514" + integrity sha1-AxkcQyy27qFou3fzpV/9zLiXhRQ= dargs@^4.0.1: version "4.1.0" @@ -3624,6 +3827,11 @@ dashdash@^1.12.0: dependencies: assert-plus "^1.0.0" +date-fns@^1.27.2: + version "1.30.1" + resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-1.30.1.tgz#2e71bf0b119153dbb4cc4e88d9ea5acfb50dc05c" + integrity sha512-hBSVCvSmWC+QypYObzwGOd9wqdDpOt+0wl0KbU+R+uuZBS1jN8VsD1ss3irQDknRj5NvxiTF6oj/nDRnN/UQNw== + date-now@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b" @@ -3664,6 +3872,13 @@ debug@^3.1.0: dependencies: ms "^2.1.1" +debug@^4.0.1, debug@^4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" + integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== + dependencies: + ms "^2.1.1" + decamelize-keys@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9" @@ -3689,6 +3904,11 @@ dedent@0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.6.0.tgz#0e6da8f0ce52838ef5cec5c8f9396b0c1b64a3cb" +dedent@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" + integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw= + deep-equal@^1.0.0, deep-equal@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" @@ -3711,7 +3931,7 @@ default-require-extensions@^1.0.0: dependencies: strip-bom "^2.0.0" -define-properties@^1.1.2: +define-properties@^1.1.2, define-properties@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" dependencies: @@ -3752,6 +3972,18 @@ del@^2.0.2: pinkie-promise "^2.0.0" rimraf "^2.2.8" +del@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/del/-/del-3.0.0.tgz#53ecf699ffcbcb39637691ab13baf160819766e5" + integrity sha1-U+z2mf/LyzljdpGrE7rxYIGXZuU= + dependencies: + globby "^6.1.0" + is-path-cwd "^1.0.0" + is-path-in-cwd "^1.0.0" + p-map "^1.1.1" + pify "^3.0.0" + rimraf "^2.2.8" + delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" @@ -3825,7 +4057,7 @@ doctrine@1.5.0: esutils "^2.0.2" isarray "^1.0.0" -doctrine@^2.0.2, doctrine@^2.1.0: +doctrine@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" dependencies: @@ -3927,6 +4159,11 @@ electron-to-chromium@^1.3.30, electron-to-chromium@^1.3.36: version "1.3.39" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.39.tgz#d7a4696409ca0995e2750156da612c221afad84d" +elegant-spinner@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/elegant-spinner/-/elegant-spinner-1.0.1.tgz#db043521c95d7e303fd8f345bedc3349cfb0729e" + integrity sha1-2wQ1IcldfjA/2PNFvtwzSc+wcp4= + elliptic@^6.0.0: version "6.4.0" resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.0.tgz#cac9af8762c85836187003c8dfe193e5e2eae5df" @@ -3939,9 +4176,10 @@ elliptic@^6.0.0: minimalistic-assert "^1.0.0" minimalistic-crypto-utils "^1.0.0" -emoji-regex@^6.1.0: - version "6.5.1" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-6.5.1.tgz#9baea929b155565c11ea41c6626eaa65cef992c2" +emoji-regex@^7.0.2: + version "7.0.3" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" + integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== emojis-list@^2.0.0: version "2.1.0" @@ -3982,52 +4220,63 @@ entities@^1.1.1, entities@~1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.1.tgz#6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0" -enzyme-adapter-react-16@^1.0.4: - version "1.1.1" - resolved "https://registry.yarnpkg.com/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.1.1.tgz#a8f4278b47e082fbca14f5bfb1ee50ee650717b4" +enzyme-adapter-react-16@^1.11.2: + version "1.11.2" + resolved "https://registry.yarnpkg.com/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.11.2.tgz#8efeafb27e96873a5492fdef3f423693182eb9d4" + integrity sha512-2ruTTCPRb0lPuw/vKTXGVZVBZqh83MNDnakMhzxhpJcIbneEwNy2Cv0KvL97pl57/GOazJHflWNLjwWhex5AAA== dependencies: - enzyme-adapter-utils "^1.3.0" - lodash "^4.17.4" - object.assign "^4.0.4" - object.values "^1.0.4" - prop-types "^15.6.0" - react-reconciler "^0.7.0" + enzyme-adapter-utils "^1.10.1" + object.assign "^4.1.0" + object.values "^1.1.0" + prop-types "^15.7.2" + react-is "^16.8.4" react-test-renderer "^16.0.0-0" + semver "^5.6.0" -enzyme-adapter-utils@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/enzyme-adapter-utils/-/enzyme-adapter-utils-1.3.0.tgz#d6c85756826c257a8544d362cc7a67e97ea698c7" +enzyme-adapter-utils@^1.10.1: + version "1.10.1" + resolved "https://registry.yarnpkg.com/enzyme-adapter-utils/-/enzyme-adapter-utils-1.10.1.tgz#58264efa19a7befdbf964fb7981a108a5452ac96" + integrity sha512-oasinhhLoBuZsIkTe8mx0HiudtfErUtG0Ooe1FOplu/t4c9rOmyG5gtrBASK6u4whHIRWvv0cbZMElzNTR21SA== dependencies: - lodash "^4.17.4" - object.assign "^4.0.4" - prop-types "^15.6.0" + function.prototype.name "^1.1.0" + object.assign "^4.1.0" + object.fromentries "^2.0.0" + prop-types "^15.7.2" + semver "^5.6.0" -enzyme-to-json@^3.3.3: - version "3.3.3" - resolved "https://registry.yarnpkg.com/enzyme-to-json/-/enzyme-to-json-3.3.3.tgz#ede45938fb309cd87ebd4386f60c754525515a07" +enzyme-to-json@^3.3.5: + version "3.3.5" + resolved "https://registry.yarnpkg.com/enzyme-to-json/-/enzyme-to-json-3.3.5.tgz#f8eb82bd3d5941c9d8bc6fd9140030777d17d0af" + integrity sha512-DmH1wJ68HyPqKSYXdQqB33ZotwfUhwQZW3IGXaNXgR69Iodaoj8TF/D9RjLdz4pEhGq2Tx2zwNUIjBuqoZeTgA== dependencies: lodash "^4.17.4" -enzyme@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/enzyme/-/enzyme-3.3.0.tgz#0971abd167f2d4bf3f5bd508229e1c4b6dc50479" +enzyme@^3.9.0: + version "3.9.0" + resolved "https://registry.yarnpkg.com/enzyme/-/enzyme-3.9.0.tgz#2b491f06ca966eb56b6510068c7894a7e0be3909" + integrity sha512-JqxI2BRFHbmiP7/UFqvsjxTirWoM1HfeaJrmVSZ9a1EADKkZgdPcAuISPMpoUiHlac9J4dYt81MC5BBIrbJGMg== dependencies: + array.prototype.flat "^1.2.1" cheerio "^1.0.0-rc.2" - function.prototype.name "^1.0.3" - has "^1.0.1" + function.prototype.name "^1.1.0" + has "^1.0.3" + html-element-map "^1.0.0" is-boolean-object "^1.0.0" - is-callable "^1.1.3" + is-callable "^1.1.4" is-number-object "^1.0.3" + is-regex "^1.0.4" is-string "^1.0.4" is-subset "^0.1.1" - lodash "^4.17.4" - object-inspect "^1.5.0" + lodash.escape "^4.0.1" + lodash.isequal "^4.5.0" + object-inspect "^1.6.0" object-is "^1.0.1" object.assign "^4.1.0" object.entries "^1.0.4" object.values "^1.0.4" raf "^3.4.0" rst-selector-parser "^2.2.3" + string.prototype.trim "^1.1.2" equal-length@^1.0.0: version "1.0.1" @@ -4049,6 +4298,18 @@ error-inject@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/error-inject/-/error-inject-1.0.0.tgz#e2b3d91b54aed672f309d950d154850fa11d4f37" +es-abstract@^1.10.0, es-abstract@^1.11.0, es-abstract@^1.12.0, es-abstract@^1.5.0: + version "1.13.0" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.13.0.tgz#ac86145fdd5099d8dd49558ccba2eaf9b88e24e9" + integrity sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg== + dependencies: + es-to-primitive "^1.2.0" + function-bind "^1.1.1" + has "^1.0.3" + is-callable "^1.1.4" + is-regex "^1.0.4" + object-keys "^1.0.12" + es-abstract@^1.6.1: version "1.10.0" resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.10.0.tgz#1ecb36c197842a00d8ee4c2dfd8646bb97d60864" @@ -4077,6 +4338,15 @@ es-to-primitive@^1.1.1: is-date-object "^1.0.1" is-symbol "^1.0.1" +es-to-primitive@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.0.tgz#edf72478033456e8dda8ef09e00ad9650707f377" + integrity sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg== + dependencies: + is-callable "^1.1.4" + is-date-object "^1.0.1" + is-symbol "^1.0.2" + es5-ext@^0.10.35, es5-ext@^0.10.9, es5-ext@~0.10.14: version "0.10.46" resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.46.tgz#efd99f67c5a7ec789baa3daa7f79870388f7f572" @@ -4123,129 +4393,165 @@ escodegen@^1.9.0: optionalDependencies: source-map "~0.6.1" -eslint-config-airbnb-base@^12.1.0: - version "12.1.0" - resolved "https://registry.yarnpkg.com/eslint-config-airbnb-base/-/eslint-config-airbnb-base-12.1.0.tgz#386441e54a12ccd957b0a92564a4bafebd747944" +eslint-config-prettier@4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-4.1.0.tgz#181364895899fff9fd3605fecb5c4f20e7d5f395" + integrity sha512-zILwX9/Ocz4SV2vX7ox85AsrAgXV3f2o2gpIicdMIOra48WYqgUnWNH/cR/iHtmD2Vb3dLSC3LiEJnS05Gkw7w== dependencies: - eslint-restricted-globals "^0.1.1" + get-stdin "^6.0.0" -eslint-config-airbnb@^16.1.0: - version "16.1.0" - resolved "https://registry.yarnpkg.com/eslint-config-airbnb/-/eslint-config-airbnb-16.1.0.tgz#2546bfb02cc9fe92284bf1723ccf2e87bc45ca46" +eslint-config-react-app@3.0.8: + version "3.0.8" + resolved "https://registry.yarnpkg.com/eslint-config-react-app/-/eslint-config-react-app-3.0.8.tgz#6f606828ba30bafee7d744c41cd07a3fea8f3035" + integrity sha512-Ovi6Bva67OjXrom9Y/SLJRkrGqKhMAL0XCH8BizPhjEVEhYczl2ZKiNZI2CuqO5/CJwAfMwRXAVGY0KToWr1aA== dependencies: - eslint-config-airbnb-base "^12.1.0" + confusing-browser-globals "^1.0.6" -eslint-import-resolver-node@^0.3.1: +eslint-import-resolver-node@^0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz#58f15fb839b8d0576ca980413476aab2472db66a" + integrity sha512-sfmTqJfPSizWu4aymbPr4Iidp5yKm8yDkHp+Ir3YiTHiiDfxh69mOUsmiqW6RZ9zRXFaF64GtYmN7e+8GHBv6Q== dependencies: debug "^2.6.9" resolve "^1.5.0" -eslint-module-utils@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.1.1.tgz#abaec824177613b8a95b299639e1b6facf473449" +eslint-module-utils@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.3.0.tgz#546178dab5e046c8b562bbb50705e2456d7bda49" + integrity sha512-lmDJgeOOjk8hObTysjqH7wyMi+nsHwwvfBykwfhjR1LNdd7C2uFJBvx4OpWYpXOw4df1yE1cDEVd1yLHitk34w== dependencies: debug "^2.6.8" - pkg-dir "^1.0.0" + pkg-dir "^2.0.0" -eslint-plugin-import@^2.9.0: - version "2.9.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.9.0.tgz#26002efbfca5989b7288ac047508bd24f217b169" +eslint-plugin-flowtype@2.50.3: + version "2.50.3" + resolved "https://registry.yarnpkg.com/eslint-plugin-flowtype/-/eslint-plugin-flowtype-2.50.3.tgz#61379d6dce1d010370acd6681740fd913d68175f" + integrity sha512-X+AoKVOr7Re0ko/yEXyM5SSZ0tazc6ffdIOocp2fFUlWoDt7DV0Bz99mngOkAFLOAWjqRA5jPwqUCbrx13XoxQ== + dependencies: + lodash "^4.17.10" + +eslint-plugin-import@2.16.0: + version "2.16.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.16.0.tgz#97ac3e75d0791c4fac0e15ef388510217be7f66f" + integrity sha512-z6oqWlf1x5GkHIFgrSvtmudnqM6Q60KM4KvpWi5ubonMjycLjndvd5+8VAZIsTlHC03djdgJuyKG6XO577px6A== dependencies: - builtin-modules "^1.1.1" contains-path "^0.1.0" - debug "^2.6.8" + debug "^2.6.9" doctrine "1.5.0" - eslint-import-resolver-node "^0.3.1" - eslint-module-utils "^2.1.1" - has "^1.0.1" - lodash "^4.17.4" - minimatch "^3.0.3" + eslint-import-resolver-node "^0.3.2" + eslint-module-utils "^2.3.0" + has "^1.0.3" + lodash "^4.17.11" + minimatch "^3.0.4" read-pkg-up "^2.0.0" + resolve "^1.9.0" -eslint-plugin-jsx-a11y@^6.0.3: - version "6.0.3" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.0.3.tgz#54583d1ae442483162e040e13cc31865465100e5" +eslint-plugin-jsx-a11y@6.2.1: + version "6.2.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.2.1.tgz#4ebba9f339b600ff415ae4166e3e2e008831cf0c" + integrity sha512-cjN2ObWrRz0TTw7vEcGQrx+YltMvZoOEx4hWU8eEERDnBIU00OTq7Vr+jA7DFKxiwLNv4tTh5Pq2GUNEa8b6+w== dependencies: - aria-query "^0.7.0" + aria-query "^3.0.0" array-includes "^3.0.3" - ast-types-flow "0.0.7" - axobject-query "^0.1.0" - damerau-levenshtein "^1.0.0" - emoji-regex "^6.1.0" - jsx-ast-utils "^2.0.0" + ast-types-flow "^0.0.7" + axobject-query "^2.0.2" + damerau-levenshtein "^1.0.4" + emoji-regex "^7.0.2" + has "^1.0.3" + jsx-ast-utils "^2.0.1" -eslint-plugin-react@^7.7.0: - version "7.7.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.7.0.tgz#f606c719dbd8a1a2b3d25c16299813878cca0160" +eslint-plugin-prettier@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-3.0.1.tgz#19d521e3981f69dd6d14f64aec8c6a6ac6eb0b0d" + integrity sha512-/PMttrarPAY78PLvV3xfWibMOdMDl57hmlQ2XqFeA37wd+CJ7WSxV7txqjVPHi/AAFKd2lX0ZqfsOc/i5yFCSQ== dependencies: - doctrine "^2.0.2" - has "^1.0.1" - jsx-ast-utils "^2.0.1" - prop-types "^15.6.0" + prettier-linter-helpers "^1.0.0" -eslint-restricted-globals@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/eslint-restricted-globals/-/eslint-restricted-globals-0.1.1.tgz#35f0d5cbc64c2e3ed62e93b4b1a7af05ba7ed4d7" +eslint-plugin-react@7.12.4: + version "7.12.4" + resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.12.4.tgz#b1ecf26479d61aee650da612e425c53a99f48c8c" + integrity sha512-1puHJkXJY+oS1t467MjbqjvX53uQ05HXwjqDgdbGBqf5j9eeydI54G3KwiJmWciQ0HTBacIKw2jgwSBSH3yfgQ== + dependencies: + array-includes "^3.0.3" + doctrine "^2.1.0" + has "^1.0.3" + jsx-ast-utils "^2.0.1" + object.fromentries "^2.0.0" + prop-types "^15.6.2" + resolve "^1.9.0" -eslint-scope@^3.7.1: +eslint-scope@3.7.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: esrecurse "^4.1.0" estraverse "^4.1.1" +eslint-scope@^4.0.0: + version "4.0.3" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848" + integrity sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg== + dependencies: + esrecurse "^4.1.0" + estraverse "^4.1.1" + +eslint-utils@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.3.1.tgz#9a851ba89ee7c460346f97cf8939c7298827e512" + integrity sha512-Z7YjnIldX+2XMcjr7ZkgEsOj/bREONV60qYeB/bjMAqqqZ4zxKyWX+BOUkdmRmA9riiIPVvo5x86m5elviOk0Q== + eslint-visitor-keys@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#3f3180fb2e291017716acb4c9d6d5b5c34a6a81d" -eslint@^4.0.0, eslint@^4.5.0: - version "4.19.1" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-4.19.1.tgz#32d1d653e1d90408854bfb296f076ec7e186a300" +eslint@5.6.0: + version "5.6.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-5.6.0.tgz#b6f7806041af01f71b3f1895cbb20971ea4b6223" + integrity sha512-/eVYs9VVVboX286mBK7bbKnO1yamUy2UCRjiY6MryhQL2PaaXCExsCQ2aO83OeYRhU2eCU/FMFP+tVMoOrzNrA== dependencies: - ajv "^5.3.0" - babel-code-frame "^6.22.0" + "@babel/code-frame" "^7.0.0" + ajv "^6.5.3" chalk "^2.1.0" - concat-stream "^1.6.0" - cross-spawn "^5.1.0" + cross-spawn "^6.0.5" debug "^3.1.0" doctrine "^2.1.0" - eslint-scope "^3.7.1" + eslint-scope "^4.0.0" + eslint-utils "^1.3.1" eslint-visitor-keys "^1.0.0" - espree "^3.5.4" - esquery "^1.0.0" + espree "^4.0.0" + esquery "^1.0.1" esutils "^2.0.2" file-entry-cache "^2.0.0" functional-red-black-tree "^1.0.1" glob "^7.1.2" - globals "^11.0.1" - ignore "^3.3.3" + globals "^11.7.0" + ignore "^4.0.6" imurmurhash "^0.1.4" - inquirer "^3.0.6" - is-resolvable "^1.0.0" - js-yaml "^3.9.1" + inquirer "^6.1.0" + is-resolvable "^1.1.0" + js-yaml "^3.12.0" json-stable-stringify-without-jsonify "^1.0.1" levn "^0.3.0" - lodash "^4.17.4" - minimatch "^3.0.2" + lodash "^4.17.5" + minimatch "^3.0.4" mkdirp "^0.5.1" natural-compare "^1.4.0" optionator "^0.8.2" path-is-inside "^1.0.2" pluralize "^7.0.0" progress "^2.0.0" - regexpp "^1.0.1" + regexpp "^2.0.0" require-uncached "^1.0.3" - semver "^5.3.0" + semver "^5.5.1" strip-ansi "^4.0.0" - strip-json-comments "~2.0.1" - table "4.0.2" - text-table "~0.2.0" + strip-json-comments "^2.0.1" + table "^4.0.3" + text-table "^0.2.0" -eslint@^4.19.0: - version "4.19.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-4.19.0.tgz#9e900efb5506812ac374557034ef6f5c3642fc4c" +eslint@^4.0.0, eslint@^4.5.0: + version "4.19.1" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-4.19.1.tgz#32d1d653e1d90408854bfb296f076ec7e186a300" + integrity sha512-bT3/1x1EbZB7phzYu7vCr1v3ONuzDtX8WjuM9c0iYxe+cq+pwcKEoQjl7zd3RpC6YOLgnSy3cTN58M2jcoPDIQ== dependencies: ajv "^5.3.0" babel-code-frame "^6.22.0" @@ -4302,6 +4608,15 @@ espree@^3.5.4: acorn "^5.5.0" acorn-jsx "^3.0.0" +espree@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/espree/-/espree-4.1.0.tgz#728d5451e0fd156c04384a7ad89ed51ff54eb25f" + integrity sha512-I5BycZW6FCVIub93TeVY1s7vjhP9CY6cXCznIRfiig7nRviKZYdRnj/sHEWC6A7WE9RDWOFq9+7OsWSYz8qv2w== + dependencies: + acorn "^6.0.2" + acorn-jsx "^5.0.0" + eslint-visitor-keys "^1.0.0" + esprima@^2.6.0: version "2.7.3" resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581" @@ -4326,6 +4641,13 @@ esquery@^1.0.0: dependencies: estraverse "^4.0.0" +esquery@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.1.tgz#406c51658b1f5991a5f9b62b1dc25b00e3e5c708" + integrity sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA== + dependencies: + estraverse "^4.0.0" + esrecurse@^4.1.0: version "4.2.1" resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf" @@ -4391,6 +4713,19 @@ execa@^0.8.0: signal-exit "^3.0.0" strip-eof "^1.0.0" +execa@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" + integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== + dependencies: + cross-spawn "^6.0.0" + get-stream "^4.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" + execall@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/execall/-/execall-1.0.0.tgz#73d0904e395b3cab0658b08d09ec25307f29bb73" @@ -4511,6 +4846,15 @@ external-editor@^2.1.0: iconv-lite "^0.4.17" tmp "^0.0.33" +external-editor@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.0.3.tgz#5866db29a97826dbe4bf3afd24070ead9ea43a27" + integrity sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA== + dependencies: + chardet "^0.7.0" + iconv-lite "^0.4.24" + tmp "^0.0.33" + extglob@^0.3.1: version "0.3.2" resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1" @@ -4550,6 +4894,11 @@ fast-diff@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.1.1.tgz#0aea0e4e605b6a2189f0e936d4b7fbaf1b7cfd9b" +fast-diff@^1.1.2: + version "1.2.0" + resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03" + integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w== + fast-json-stable-stringify@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" @@ -4590,7 +4939,12 @@ fbjs@^0.8.16: setimmediate "^1.0.5" ua-parser-js "^0.7.18" -figures@^1.3.5: +figgy-pudding@^3.5.1: + version "3.5.1" + resolved "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.1.tgz#862470112901c727a0e495a80744bd5baa1d6790" + integrity sha512-vNKxJHTEKNThjfrdJwHc7brvM6eVevuO5nTj6ez8ZQ1qbXTvGthucRF7S4vf2cr71QVnT70V34v0S1DyQsti0w== + +figures@^1.3.5, figures@^1.7.0: version "1.7.0" resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e" dependencies: @@ -4665,6 +5019,15 @@ find-cache-dir@^1.0.0: make-dir "^1.0.0" pkg-dir "^2.0.0" +find-cache-dir@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.1.0.tgz#8d0f94cd13fe43c6c7c261a0d86115ca918c05f7" + integrity sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ== + dependencies: + commondir "^1.0.1" + make-dir "^2.0.0" + pkg-dir "^3.0.0" + find-node-modules@1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/find-node-modules/-/find-node-modules-1.0.4.tgz#b6deb3cccb699c87037677bcede2c5f5862b2550" @@ -4672,6 +5035,11 @@ find-node-modules@1.0.4: findup-sync "0.4.2" merge "^1.2.0" +find-parent-dir@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/find-parent-dir/-/find-parent-dir-0.3.0.tgz#33c44b429ab2b2f0646299c5f9f718f376ff8d54" + integrity sha1-M8RLQpqysvBkYpnF+fcY83b/jVQ= + find-root@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.0.0.tgz#962ff211aab25c6520feeeb8d6287f8f6e95807a" @@ -4724,6 +5092,11 @@ flush-write-stream@^1.0.0: inherits "^2.0.1" readable-stream "^2.0.4" +fn-name@~2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/fn-name/-/fn-name-2.0.1.tgz#5214d7537a4d06a4a301c0cc262feb84188002e7" + integrity sha1-UhTXU3pNBqSjAcDMJi/rhBiAAuc= + for-in@^1.0.1, for-in@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" @@ -4866,9 +5239,10 @@ function-name-support@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/function-name-support/-/function-name-support-0.2.0.tgz#55d3bfaa6eafd505a50f9bc81fdf57564a0bb071" -function.prototype.name@^1.0.3: +function.prototype.name@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.0.tgz#8bd763cc0af860a859cc5d49384d74b932cd2327" + integrity sha512-Bs0VRrTz4ghD8pTmbJQD1mZ8A/mN0ur/jGz+A6FBxPDUPkm1tNfF6bhTYPA7i7aF4lZJVr+OXTNNrnnIl58Wfg== dependencies: define-properties "^1.1.2" function-bind "^1.1.1" @@ -4878,6 +5252,15 @@ functional-red-black-tree@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" +g-status@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/g-status/-/g-status-2.0.2.tgz#270fd32119e8fc9496f066fe5fe88e0a6bc78b97" + integrity sha512-kQoE9qH+T1AHKgSSD0Hkv98bobE90ILQcXAF4wvGgsr7uFqNvwmh8j+Lq3l0RVt3E3HjSbv2B9biEGcEtpHLCA== + dependencies: + arrify "^1.0.1" + matcher "^1.0.0" + simple-git "^1.85.0" + gauge@~2.7.3: version "2.7.4" resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" @@ -4895,6 +5278,11 @@ get-caller-file@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a" +get-own-enumerable-property-symbols@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.0.tgz#b877b49a5c16aefac3655f2ed2ea5b684df8d203" + integrity sha512-CIJYJC4GGF06TakLg8z4GQKvDsx9EMspVxOYih7LerEL/WosUnFIww45CGfxfeKHqlg3twgUrYRT1O3WQqjGCg== + get-pkg-repo@^1.0.0: version "1.4.0" resolved "https://registry.yarnpkg.com/get-pkg-repo/-/get-pkg-repo-1.4.0.tgz#c73b489c06d80cc5536c2c853f9e05232056972d" @@ -4917,10 +5305,22 @@ get-stdin@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" +get-stdin@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-6.0.0.tgz#9e09bf712b360ab9225e812048f71fde9c89657b" + integrity sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g== + get-stream@^3.0.0: version "3.0.0" resolved "http://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" +get-stream@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" + integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== + dependencies: + pump "^3.0.0" + get-value@^2.0.3, get-value@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" @@ -5037,6 +5437,18 @@ glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.0.6, glob@^7.1.1, glob@^7.1.2: once "^1.3.0" path-is-absolute "^1.0.0" +glob@^7.1.3: + version "7.1.3" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" + integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" + glob@~7.0.6: version "7.0.6" resolved "https://registry.yarnpkg.com/glob/-/glob-7.0.6.tgz#211bafaf49e525b8cd93260d14ab136152b3f57a" @@ -5074,10 +5486,6 @@ global-prefix@^0.1.4: is-windows "^0.2.0" which "^1.2.12" -globals@^10.0.0: - version "10.4.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-10.4.0.tgz#5c477388b128a9e4c5c5d01c7a2aca68c68b2da7" - globals@^11.0.1: version "11.3.0" resolved "https://registry.yarnpkg.com/globals/-/globals-11.3.0.tgz#e04fdb7b9796d8adac9c8f64c14837b2313378b0" @@ -5086,6 +5494,11 @@ globals@^11.1.0: version "11.8.0" resolved "https://registry.yarnpkg.com/globals/-/globals-11.8.0.tgz#c1ef45ee9bed6badf0663c5cb90e8d1adec1321d" +globals@^11.7.0: + version "11.11.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-11.11.0.tgz#dcf93757fa2de5486fbeed7118538adf789e9c2e" + integrity sha512-WHq43gS+6ufNOEqlrDBxVEbb8ntfXrfAUU2ZOpCxrBdGKW3gyv8mCxAfIBD0DroPKGrJ2eSsXsLtY9MPntsyTw== + globals@^9.18.0: version "9.18.0" resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" @@ -5152,6 +5565,11 @@ graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.6, version "4.1.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" +graceful-fs@^4.1.15: + version "4.1.15" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.15.tgz#ffb703e1066e8a0eeaa4c8b80ba9253eeefbfb00" + integrity sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA== + gzip-size@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-4.1.0.tgz#8ae096257eabe7d69c45be2b67c448124ffb517c" @@ -5271,6 +5689,13 @@ has@^1.0.1: dependencies: function-bind "^1.0.2" +has@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== + dependencies: + function-bind "^1.1.1" + hash-base@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-2.0.2.tgz#66ea1d856db4e8a5470cadf6fce23ae5244ef2e1" @@ -5364,6 +5789,13 @@ html-element-attributes@^1.0.0: version "1.3.0" resolved "https://registry.yarnpkg.com/html-element-attributes/-/html-element-attributes-1.3.0.tgz#f06ebdfce22de979db82020265cac541fb17d4fc" +html-element-map@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/html-element-map/-/html-element-map-1.0.1.tgz#3c4fcb4874ebddfe4283b51c8994e7713782b592" + integrity sha512-BZSfdEm6n706/lBfXKWa4frZRZcT5k1cOusw95ijZsHlI+GdgY0v95h6IzO3iIDf2ROwq570YTwqNPqHcNMozw== + dependencies: + array-filter "^1.0.0" + html-encoding-sniffer@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz#e70d84b94da53aa375e11fe3a351be6642ca46f8" @@ -5451,13 +5883,21 @@ hullabaloo-config-manager@2.0.0-beta.4: pkg-dir "^2.0.0" resolve-from "^4.0.0" -husky@^0.14.3: - version "0.14.3" - resolved "https://registry.yarnpkg.com/husky/-/husky-0.14.3.tgz#c69ed74e2d2779769a17ba8399b54ce0b63c12c3" +husky@1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/husky/-/husky-1.3.1.tgz#26823e399300388ca2afff11cfa8a86b0033fae0" + integrity sha512-86U6sVVVf4b5NYSZ0yvv88dRgBSSXXmHaiq5pP4KDj5JVzdwKgBjEtUPOm8hcoytezFwbU+7gotXNhpHdystlg== dependencies: - is-ci "^1.0.10" - normalize-path "^1.0.0" - strip-indent "^2.0.0" + cosmiconfig "^5.0.7" + execa "^1.0.0" + find-up "^3.0.0" + get-stdin "^6.0.0" + is-ci "^2.0.0" + pkg-dir "^3.0.0" + please-upgrade-node "^3.1.1" + read-pkg "^4.0.1" + run-node "^1.0.0" + slash "^2.0.0" hyphenate-style-name@^1.0.2: version "1.0.2" @@ -5473,7 +5913,7 @@ iconv-lite@0.4.23: dependencies: safer-buffer ">= 2.1.2 < 3" -iconv-lite@^0.4.17, iconv-lite@~0.4.13: +iconv-lite@^0.4.17, iconv-lite@^0.4.24, iconv-lite@~0.4.13: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" dependencies: @@ -5515,12 +5955,25 @@ ignore@^3.2.7, ignore@^3.3.3, ignore@^3.3.5: version "3.3.7" resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.7.tgz#612289bfb3c220e186a58118618d5be8c1bab021" +ignore@^4.0.6: + version "4.0.6" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" + integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== + import-cwd@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/import-cwd/-/import-cwd-2.1.0.tgz#aa6cf36e722761285cb371ec6519f53e2435b0a9" dependencies: import-from "^2.1.0" +import-fresh@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-2.0.0.tgz#d81355c15612d386c61f9ddd3922d4304822a546" + integrity sha1-2BNVwVYS04bGH53dOSLUMEgipUY= + dependencies: + caller-path "^2.0.0" + resolve-from "^3.0.0" + import-from@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/import-from/-/import-from-2.1.0.tgz#335db7f2a7affd53aaa471d4b8021dee36b7f3b1" @@ -5661,6 +6114,25 @@ inquirer@^4.0.0: strip-ansi "^4.0.0" through "^2.3.6" +inquirer@^6.1.0: + version "6.2.2" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.2.2.tgz#46941176f65c9eb20804627149b743a218f25406" + integrity sha512-Z2rREiXA6cHRR9KBOarR3WuLlFzlIfAEIiB45ll5SSadMg7WqOh1MKEjjndfuH5ewXdixWCxqnVfGOQzPeiztA== + dependencies: + ansi-escapes "^3.2.0" + chalk "^2.4.2" + cli-cursor "^2.1.0" + cli-width "^2.0.0" + external-editor "^3.0.3" + figures "^2.0.0" + lodash "^4.17.11" + mute-stream "0.0.7" + run-async "^2.2.0" + rxjs "^6.4.0" + string-width "^2.1.0" + strip-ansi "^5.0.0" + through "^2.3.6" + interpret@^1.0.0, interpret@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.1.0.tgz#7ed1b1410c6a0e0f78cf95d3b8440c63f78b8614" @@ -5756,6 +6228,11 @@ 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-callable@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75" + integrity sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA== + is-ci@^1.0.10: version "1.1.0" resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.1.0.tgz#247e4162e7860cebbdaf30b774d6b0ac7dcfe7a5" @@ -5768,6 +6245,13 @@ is-ci@^1.1.0: dependencies: ci-info "^1.5.0" +is-ci@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" + integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w== + dependencies: + ci-info "^2.0.0" + is-data-descriptor@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" @@ -5917,7 +6401,7 @@ is-number@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-4.0.0.tgz#0026e37f5454d73e356dfe6564699867c6a7f0ff" -is-obj@^1.0.0: +is-obj@^1.0.0, is-obj@^1.0.1: version "1.0.1" resolved "http://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" @@ -5991,9 +6475,10 @@ is-regexp@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" -is-resolvable@^1.0.0: +is-resolvable@^1.0.0, is-resolvable@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" + integrity sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg== is-retry-allowed@^1.0.0: version "1.1.0" @@ -6025,6 +6510,13 @@ is-symbol@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572" +is-symbol@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.2.tgz#a055f6ae57192caee329e7a860118b497a950f38" + integrity sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw== + dependencies: + has-symbols "^1.0.0" + is-text-path@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/is-text-path/-/is-text-path-1.0.1.tgz#4e1aa0fb51bfbcb3e92688001397202c1775b66e" @@ -6183,7 +6675,7 @@ js-tokens@^3.0.0, js-tokens@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" -"js-tokens@^3.0.0 || ^4.0.0": +"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" @@ -6194,6 +6686,14 @@ js-yaml@^3.10.0: argparse "^1.0.7" esprima "^4.0.0" +js-yaml@^3.12.0, js-yaml@^3.13.0: + version "3.13.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.0.tgz#38ee7178ac0eea2c97ff6d96fff4b18c7d8cf98e" + integrity sha512-pZZoSxcCYco+DIKBTimr67J6Hy+EYGZDY/HCWC+iAEA9h1ByhMXAIVUXMcMFpOCxQ/xjXmPI2MkDL5HRm5eFrQ== + dependencies: + argparse "^1.0.7" + esprima "^4.0.0" + js-yaml@^3.6.1: version "3.8.3" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.8.3.tgz#33a05ec481c850c8875929166fe1beb61c728766" @@ -6336,7 +6836,7 @@ jsprim@^1.2.2: json-schema "0.2.3" verror "1.10.0" -jsx-ast-utils@^2.0.0, jsx-ast-utils@^2.0.1: +jsx-ast-utils@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.0.1.tgz#e801b1b39985e20fffc87b40e3748080e2dcac7f" dependencies: @@ -6491,6 +6991,81 @@ levn@^0.3.0, levn@~0.3.0: prelude-ls "~1.1.2" type-check "~0.3.2" +lint-staged@8.1.5: + version "8.1.5" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-8.1.5.tgz#372476fe1a58b8834eb562ed4c99126bd60bdd79" + integrity sha512-e5ZavfnSLcBJE1BTzRTqw6ly8OkqVyO3GL2M6teSmTBYQ/2BuueD5GIt2RPsP31u/vjKdexUyDCxSyK75q4BDA== + dependencies: + chalk "^2.3.1" + commander "^2.14.1" + cosmiconfig "^5.0.2" + debug "^3.1.0" + dedent "^0.7.0" + del "^3.0.0" + execa "^1.0.0" + find-parent-dir "^0.3.0" + g-status "^2.0.2" + is-glob "^4.0.0" + is-windows "^1.0.2" + listr "^0.14.2" + listr-update-renderer "^0.5.0" + lodash "^4.17.11" + log-symbols "^2.2.0" + micromatch "^3.1.8" + npm-which "^3.0.1" + p-map "^1.1.1" + path-is-inside "^1.0.2" + pify "^3.0.0" + please-upgrade-node "^3.0.2" + staged-git-files "1.1.2" + string-argv "^0.0.2" + stringify-object "^3.2.2" + yup "^0.26.10" + +listr-silent-renderer@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/listr-silent-renderer/-/listr-silent-renderer-1.1.1.tgz#924b5a3757153770bf1a8e3fbf74b8bbf3f9242e" + integrity sha1-kktaN1cVN3C/Go4/v3S4u/P5JC4= + +listr-update-renderer@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/listr-update-renderer/-/listr-update-renderer-0.5.0.tgz#4ea8368548a7b8aecb7e06d8c95cb45ae2ede6a2" + integrity sha512-tKRsZpKz8GSGqoI/+caPmfrypiaq+OQCbd+CovEC24uk1h952lVj5sC7SqyFUm+OaJ5HN/a1YLt5cit2FMNsFA== + dependencies: + chalk "^1.1.3" + cli-truncate "^0.2.1" + elegant-spinner "^1.0.1" + figures "^1.7.0" + indent-string "^3.0.0" + log-symbols "^1.0.2" + log-update "^2.3.0" + strip-ansi "^3.0.1" + +listr-verbose-renderer@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/listr-verbose-renderer/-/listr-verbose-renderer-0.5.0.tgz#f1132167535ea4c1261102b9f28dac7cba1e03db" + integrity sha512-04PDPqSlsqIOaaaGZ+41vq5FejI9auqTInicFRndCBgE3bXG8D6W1I+mWhk+1nqbHmyhla/6BUrd5OSiHwKRXw== + dependencies: + chalk "^2.4.1" + cli-cursor "^2.1.0" + date-fns "^1.27.2" + figures "^2.0.0" + +listr@^0.14.2: + version "0.14.3" + resolved "https://registry.yarnpkg.com/listr/-/listr-0.14.3.tgz#2fea909604e434be464c50bddba0d496928fa586" + integrity sha512-RmAl7su35BFd/xoMamRjpIE4j3v+L28o8CT5YhAXQJm1fD+1l9ngXY8JAQRJ+tFK2i5njvi0iRUKV09vPwA0iA== + dependencies: + "@samverschueren/stream-to-observable" "^0.3.0" + is-observable "^1.1.0" + is-promise "^2.1.0" + is-stream "^1.1.0" + listr-silent-renderer "^1.1.1" + listr-update-renderer "^0.5.0" + listr-verbose-renderer "^0.5.0" + p-map "^2.0.0" + rxjs "^6.3.3" + load-json-file@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" @@ -6573,6 +7148,11 @@ lodash.difference@^4.3.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.difference/-/lodash.difference-4.5.0.tgz#9ccb4e505d486b91651345772885a2df27fd017c" +lodash.escape@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/lodash.escape/-/lodash.escape-4.0.1.tgz#c9044690c21e04294beaa517712fded1fa88de98" + integrity sha1-yQRGkMIeBClL6qUXcS/e0fqI3pg= + lodash.every@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/lodash.every/-/lodash.every-4.6.0.tgz#eb89984bebc4364279bb3aefbbd1ca19bfa6c6a7" @@ -6694,7 +7274,7 @@ lodash@4.17.2: version "4.17.2" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.2.tgz#34a3055babe04ce42467b607d700072c7ff6bf42" -lodash@^4.11.2, lodash@^4.17.10, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.0, lodash@^4.3.0: +lodash@^4.11.2, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.0, lodash@^4.3.0: version "4.17.11" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d" @@ -6706,12 +7286,28 @@ log-driver@^1.2.5: version "1.2.5" resolved "https://registry.yarnpkg.com/log-driver/-/log-driver-1.2.5.tgz#7ae4ec257302fd790d557cb10c97100d857b0056" -log-symbols@^2.0.0, log-symbols@^2.1.0: +log-symbols@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-1.0.2.tgz#376ff7b58ea3086a0f09facc74617eca501e1a18" + integrity sha1-N2/3tY6jCGoPCfrMdGF+ylAeGhg= + dependencies: + chalk "^1.0.0" + +log-symbols@^2.0.0, log-symbols@^2.1.0, log-symbols@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.2.0.tgz#5740e1c5d6f0dfda4ad9323b5332107ef6b4c40a" dependencies: chalk "^2.0.1" +log-update@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/log-update/-/log-update-2.3.0.tgz#88328fd7d1ce7938b29283746f0b1bc126b24708" + integrity sha1-iDKP19HOeTiykoN0bwsbwSayRwg= + dependencies: + ansi-escapes "^3.0.0" + cli-cursor "^2.0.0" + wrap-ansi "^3.0.1" + loglevel-colored-level-prefix@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/loglevel-colored-level-prefix/-/loglevel-colored-level-prefix-1.0.0.tgz#6a40218fdc7ae15fc76c3d0f3e676c465388603e" @@ -6742,7 +7338,7 @@ longest@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097" -loose-envify@^1.0.0, loose-envify@^1.3.1: +loose-envify@^1.0.0, loose-envify@^1.3.1, loose-envify@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" dependencies: @@ -6779,6 +7375,13 @@ lru-cache@^4.1.1: pseudomap "^1.0.2" yallist "^2.1.2" +lru-cache@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" + integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== + dependencies: + yallist "^3.0.2" + macaddress@^0.2.8: version "0.2.8" resolved "https://registry.yarnpkg.com/macaddress/-/macaddress-0.2.8.tgz#5904dc537c39ec6dbefeae902327135fa8511f12" @@ -6789,6 +7392,14 @@ make-dir@^1.0.0, make-dir@^1.2.0: dependencies: pify "^3.0.0" +make-dir@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" + integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA== + dependencies: + pify "^4.0.1" + semver "^5.6.0" + make-plural@^4.1.1: version "4.2.0" resolved "https://registry.yarnpkg.com/make-plural/-/make-plural-4.2.0.tgz#03edfc34a2aee630a57e209369ef26ee3ca69590" @@ -6831,7 +7442,7 @@ marked@^0.3.17: version "0.3.17" resolved "https://registry.yarnpkg.com/marked/-/marked-0.3.17.tgz#607f06668b3c6b1246b28f13da76116ac1aa2d2b" -matcher@^1.1.0: +matcher@^1.0.0, matcher@^1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/matcher/-/matcher-1.1.1.tgz#51d8301e138f840982b338b116bb0c09af62c1c2" dependencies: @@ -7109,7 +7720,7 @@ minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" -minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4: +minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" dependencies: @@ -7166,6 +7777,22 @@ mississippi@^2.0.0: stream-each "^1.1.0" through2 "^2.0.0" +mississippi@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-3.0.0.tgz#ea0a3291f97e0b5e8776b363d5f0a12d94c67022" + integrity sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA== + dependencies: + concat-stream "^1.5.0" + duplexify "^3.4.2" + end-of-stream "^1.1.0" + flush-write-stream "^1.0.0" + from2 "^2.1.0" + parallel-transform "^1.1.0" + pump "^3.0.0" + pumpify "^1.3.3" + stream-each "^1.1.0" + through2 "^2.0.0" + mixin-deep@^1.2.0: version "1.3.1" resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.1.tgz#a49e7268dce1a0d9698e45326c5626df3543d0fe" @@ -7419,16 +8046,17 @@ normalize-package-data@^2.3.0, normalize-package-data@^2.3.2, normalize-package- semver "2 || 3 || 4 || 5" validate-npm-package-license "^3.0.1" -normalize-path@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-1.0.0.tgz#32d0e472f91ff345701c15a8311018d3b0a90379" - normalize-path@^2.0.1, normalize-path@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" dependencies: remove-trailing-separator "^1.0.1" +normalize-path@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== + normalize-range@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" @@ -7457,12 +8085,28 @@ npm-packlist@^1.1.6: ignore-walk "^3.0.1" npm-bundled "^1.0.1" +npm-path@^2.0.2: + version "2.0.4" + resolved "https://registry.yarnpkg.com/npm-path/-/npm-path-2.0.4.tgz#c641347a5ff9d6a09e4d9bce5580c4f505278e64" + integrity sha512-IFsj0R9C7ZdR5cP+ET342q77uSRdtWOlWpih5eC+lu29tIDbNEgDbzgVJ5UFvYHWhxDZ5TFkJafFioO0pPQjCw== + dependencies: + which "^1.2.10" + npm-run-path@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" dependencies: path-key "^2.0.0" +npm-which@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/npm-which/-/npm-which-3.0.1.tgz#9225f26ec3a285c209cae67c3b11a6b4ab7140aa" + integrity sha1-kiXybsOihcIJyuZ8OxGmtKtxQKo= + dependencies: + commander "^2.9.0" + npm-path "^2.0.2" + which "^1.2.10" + npmlog@^4.0.2: version "4.1.2" resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" @@ -7542,9 +8186,10 @@ object-copy@^0.1.0: define-property "^0.2.5" kind-of "^3.0.3" -object-inspect@^1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.5.0.tgz#9d876c11e40f485c79215670281b767488f9bfe3" +object-inspect@^1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.6.0.tgz#c70b6cbf72f274aab4c34c0c82f5167bf82cf15b" + integrity sha512-GJzfBZ6DgDAmnuaM3104jR4s1Myxr3Y3zfIyN4z3UdqN69oSRacNK8UhnobDdC+7J2AHCjGwxQubNJfE70SXXQ== object-is@^1.0.1: version "1.0.1" @@ -7560,7 +8205,7 @@ object-visit@^1.0.0: dependencies: isobject "^3.0.0" -object.assign@^4.0.4, object.assign@^4.1.0: +object.assign@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" dependencies: @@ -7578,6 +8223,16 @@ object.entries@^1.0.4: function-bind "^1.1.0" has "^1.0.1" +object.fromentries@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.0.tgz#49a543d92151f8277b3ac9600f1e930b189d30ab" + integrity sha512-9iLiI6H083uiqUuvzyY6qrlmc/Gz8hLQFOcb/Ri/0xXFkSNS3ctV+CbE6yM2+AnkYfOB3dGjdzC0wrMLIhQICA== + dependencies: + define-properties "^1.1.2" + es-abstract "^1.11.0" + function-bind "^1.1.1" + has "^1.0.1" + object.omit@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa" @@ -7600,6 +8255,16 @@ object.values@^1.0.4: function-bind "^1.1.0" has "^1.0.1" +object.values@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.0.tgz#bf6810ef5da3e5325790eaaa2be213ea84624da9" + integrity sha512-8mf0nKLAoFX6VlNVdhGj31SVYpaNFtUnuoOXWyFEstsWRgU837AK+JYM0iAxwkSzGRbwn8cbFmgbyxj1j4VbXg== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.12.0" + function-bind "^1.1.1" + has "^1.0.3" + observable-to-promise@^0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/observable-to-promise/-/observable-to-promise-0.5.0.tgz#c828f0f0dc47e9f86af8a4977c5d55076ce7a91f" @@ -7728,6 +8393,13 @@ p-limit@^2.0.0: dependencies: p-try "^2.0.0" +p-limit@^2.1.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.0.tgz#417c9941e6027a9abcba5092dd2904e255b5fbc2" + integrity sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ== + dependencies: + p-try "^2.0.0" + p-locate@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" @@ -7740,6 +8412,16 @@ p-locate@^3.0.0: dependencies: p-limit "^2.0.0" +p-map@^1.1.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-1.2.0.tgz#e4e94f311eabbc8633a1e79908165fca26241b6b" + integrity sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA== + +p-map@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.0.0.tgz#be18c5a5adeb8e156460651421aceca56c213a50" + integrity sha512-GO107XdrSUmtHxVoi60qc9tUl/KkNKm+X2CF4P9amalpGxv5YqVPJNfSb0wcA+syCopkZvYYIzW8OVTQW59x/w== + p-try@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" @@ -7897,7 +8579,7 @@ path-key@^2.0.0, path-key@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" -path-parse@^1.0.5: +path-parse@^1.0.5, path-parse@^1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" @@ -7957,6 +8639,11 @@ pify@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" +pify@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" + integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== + pinkie-promise@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-1.0.0.tgz#d1da67f5482563bb7cf57f286ae2822ecfbf3670" @@ -8016,6 +8703,13 @@ pkg-dir@^3.0.0: dependencies: find-up "^3.0.0" +please-upgrade-node@^3.0.2, please-upgrade-node@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/please-upgrade-node/-/please-upgrade-node-3.1.1.tgz#ed320051dfcc5024fae696712c8288993595e8ac" + integrity sha512-KY1uHnQ2NlQHqIJQpnh/i54rKkuxCEBx+voJIS/Mvb+L2iYd2NMotwduhKTMjfC1uKoX3VXOxLjIYG66dfJTVQ== + dependencies: + semver-compare "^1.0.0" + pleeease-filters@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/pleeease-filters/-/pleeease-filters-4.0.0.tgz#6632b2fb05648d2758d865384fbced79e1ccaec7" @@ -8692,6 +9386,13 @@ prettier-eslint@^8.5.0: typescript "^2.5.1" typescript-eslint-parser "^11.0.0" +prettier-linter-helpers@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz#d23d41fe1375646de2d0104d3454a3008802cf7b" + integrity sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w== + dependencies: + fast-diff "^1.1.2" + prettier-stylelint@^0.4.2: version "0.4.2" resolved "https://registry.yarnpkg.com/prettier-stylelint/-/prettier-stylelint-0.4.2.tgz#62845e342f786218b008da69eef14f0a5c05bcfb" @@ -8711,6 +9412,11 @@ prettier-stylelint@^0.4.2: tempy "^0.2.1" update-notifier "^2.2.0" +prettier@1.16.4: + version "1.16.4" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.16.4.tgz#73e37e73e018ad2db9c76742e2647e21790c9717" + integrity sha512-ZzWuos7TI5CKUeQAtFd6Zhm2s6EpAD/ZLApIhsF9pRvRtM1RFo61dM/4MSRUA0SuLugA/zgrZD8m0BaY46Og7g== + prettier@^1.7.0: version "1.11.1" resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.11.1.tgz#61e43fc4cd44e68f2b0dfc2c38cd4bb0fccdcc75" @@ -8775,6 +9481,20 @@ prop-types@^15.6.0: loose-envify "^1.3.1" object-assign "^4.1.1" +prop-types@^15.6.2, prop-types@^15.7.2: + version "15.7.2" + resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5" + integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ== + dependencies: + loose-envify "^1.4.0" + object-assign "^4.1.1" + react-is "^16.8.1" + +property-expr@^1.5.0: + version "1.5.1" + resolved "https://registry.yarnpkg.com/property-expr/-/property-expr-1.5.1.tgz#22e8706894a0c8e28d58735804f6ba3a3673314f" + integrity sha512-CGuc0VUTGthpJXL36ydB6jnbyOf/rAHFvmVrJlH+Rg0DqqLFQGAP6hIaxD/G0OAmBJPhXDHuEJigrp0e0wFV6g== + proxy-addr@~2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.4.tgz#ecfc733bf22ff8c6f407fa275327b9ab67e48b93" @@ -8811,6 +9531,14 @@ pump@^2.0.0, pump@^2.0.1: end-of-stream "^1.1.0" once "^1.3.1" +pump@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" + integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + pumpify@^1.3.3: version "1.4.0" resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.4.0.tgz#80b7c5df7e24153d03f0e7ac8a05a5d068bd07fb" @@ -8965,14 +9693,15 @@ react-infinite-scroll-component@^4.0.2: version "4.2.0" resolved "https://registry.yarnpkg.com/react-infinite-scroll-component/-/react-infinite-scroll-component-4.2.0.tgz#605227dd213987c8d785157a87178acc26d465e1" -react-reconciler@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/react-reconciler/-/react-reconciler-0.7.0.tgz#9614894103e5f138deeeb5eabaf3ee80eb1d026d" - dependencies: - fbjs "^0.8.16" - loose-envify "^1.1.0" - object-assign "^4.1.1" - prop-types "^15.6.0" +react-is@^16.8.1: + version "16.8.5" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.8.5.tgz#c54ac229dd66b5afe0de5acbe47647c3da692ff8" + integrity sha512-sudt2uq5P/2TznPV4Wtdi+Lnq3yaYW8LfvPKLM9BKD8jJNBkxMVyB0C9/GmVhLw7Jbdmndk/73n7XQGeN9A3QQ== + +react-is@^16.8.4: + version "16.8.6" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.8.6.tgz#5bbc1e2d29141c9fbdfed456343fe2bc430a6a16" + integrity sha512-aUk3bHfZ2bRSVFFbbeVS4i+lNPZr3/WM5jT2J5omUVV1zzcs1nAaf3l51ctA5FFvCRbhrH0bdAsRRQddFJZPtA== react-router-dom@^4.1.1: version "4.2.2" @@ -9077,6 +9806,15 @@ read-pkg@^3.0.0: normalize-package-data "^2.3.2" path-type "^3.0.0" +read-pkg@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-4.0.1.tgz#963625378f3e1c4d48c85872b5a6ec7d5d093237" + integrity sha1-ljYlN48+HE1IyFhytabsfV0JMjc= + dependencies: + normalize-package-data "^2.3.2" + parse-json "^4.0.0" + pify "^3.0.0" + "readable-stream@1 || 2", readable-stream@^2.0.1, readable-stream@^2.0.4: version "2.3.6" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" @@ -9173,6 +9911,11 @@ regenerator-runtime@^0.11.0: version "0.11.1" resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" +regenerator-runtime@^0.12.0: + version "0.12.1" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.12.1.tgz#fa1a71544764c036f8c49b13a08b2594c9f8a0de" + integrity sha512-odxIc1/vDlo4iZcfXqRYFj0vpXFNoGdKMAUieAlFYO6m/nl5e9KR/beGf41z4a1FI+aQgtjhuaSlDxQ0hmkrHg== + regenerator-transform@^0.10.0: version "0.10.1" resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.10.1.tgz#1e4996837231da8b7f3cf4114d71b5691a0680dd" @@ -9198,6 +9941,11 @@ regexpp@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-1.0.1.tgz#d857c3a741dce075c2848dcb019a0a975b190d43" +regexpp@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-2.0.1.tgz#8d19d31cf632482b589049f8281f93dbcba4d07f" + integrity sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw== + regexpu-core@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-1.0.0.tgz#86a763f58ee4d7c2f6b102e4764050de7ed90c6b" @@ -9582,6 +10330,13 @@ resolve@^1.5.0: dependencies: path-parse "^1.0.5" +resolve@^1.9.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.10.0.tgz#3bdaaeaf45cc07f375656dfd2e54ed0810b101ba" + integrity sha512-3sUr9aq5OfSg2S9pNtPA9hL1FVEAjvfOC4leW0SNf/mpnaakz2a9femSd6LqAww2RaFctwyf1lCqnTHuF1rxDg== + dependencies: + path-parse "^1.0.6" + restore-cursor@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-1.0.1.tgz#34661f46886327fed2991479152252df92daa541" @@ -9650,6 +10405,11 @@ run-async@^2.2.0: dependencies: is-promise "^2.1.0" +run-node@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/run-node/-/run-node-1.0.0.tgz#46b50b946a2aa2d4947ae1d886e9856fd9cabe5e" + integrity sha512-kc120TBlQ3mih1LSzdAJXo4xn/GWS2ec0l3S+syHDXP9uRr0JAT8Qd3mdMuyjqCzeZktgP3try92cEgf9Nks8A== + run-queue@^1.0.0, run-queue@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" @@ -9676,6 +10436,13 @@ rxjs@^5.3.0: dependencies: symbol-observable "1.0.1" +rxjs@^6.3.3, rxjs@^6.4.0: + version "6.4.0" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.4.0.tgz#f3bb0fe7bda7fb69deac0c16f17b50b0b8790504" + integrity sha512-Z9Yfa11F6B9Sg/BK9MnqnQ+aQYicPLtilXBp2yUtDt2JRCE0h26d33EnfO3ZxoNxG0T92OUucP3Ct7cpfkdFfw== + dependencies: + tslib "^1.9.0" + safe-buffer@5.1.2, safe-buffer@^5.0.1, safe-buffer@^5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" @@ -9728,6 +10495,11 @@ schema-utils@^1.0.0: ajv-errors "^1.0.0" ajv-keywords "^3.1.0" +semver-compare@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc" + integrity sha1-De4hahyUGrN+nvsXiPavxf9VN/w= + semver-diff@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-2.1.0.tgz#4bbb8437c8d37e4b0cf1a68fd726ec6d645d6d36" @@ -9746,6 +10518,11 @@ semver@5.5.0, semver@^5.3.0, semver@^5.4.1: version "5.5.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab" +semver@^5.5.1, semver@^5.6.0: + version "5.7.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.0.tgz#790a7cf6fea5459bac96110b29b60412dc8ff96b" + integrity sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA== + send@0.16.2: version "0.16.2" resolved "https://registry.yarnpkg.com/send/-/send-0.16.2.tgz#6ecca1e0f8c156d141597559848df64730a6bbc1" @@ -9844,6 +10621,13 @@ signal-exit@^3.0.0, signal-exit@^3.0.1, signal-exit@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" +simple-git@^1.85.0: + version "1.110.0" + resolved "https://registry.yarnpkg.com/simple-git/-/simple-git-1.110.0.tgz#54eb179089d055a7783d32399246cebc9d9933e9" + integrity sha512-UYY0rQkknk0P5eb+KW+03F4TevZ9ou0H+LoGaj7iiVgpnZH4wdj/HTViy/1tNNkmIPcmtxuBqXWiYt2YwlRKOQ== + dependencies: + debug "^4.0.1" + simple-swizzle@^0.2.2: version "0.2.2" resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" @@ -9870,6 +10654,11 @@ slash@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44" +slice-ansi@0.0.4: + version "0.0.4" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35" + integrity sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU= + slice-ansi@1.0.0, slice-ansi@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-1.0.0.tgz#044f1a49d8842ff307aad6b505ed178bd950134d" @@ -10060,10 +10849,22 @@ ssri@^5.2.4: dependencies: safe-buffer "^5.1.1" +ssri@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-6.0.1.tgz#2a3c41b28dd45b62b63676ecb74001265ae9edd8" + integrity sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA== + dependencies: + figgy-pudding "^3.5.1" + stack-utils@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-1.0.1.tgz#d4f33ab54e8e38778b0ca5cfd3b3afb12db68620" +staged-git-files@1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/staged-git-files/-/staged-git-files-1.1.2.tgz#4326d33886dc9ecfa29a6193bf511ba90a46454b" + integrity sha512-0Eyrk6uXW6tg9PYkhi/V/J4zHp33aNyi2hOCmhFLqLTIhbgqWn5jlSzI+IU0VqrZq6+DbHcabQl/WP6P3BG0QA== + state-toggle@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/state-toggle/-/state-toggle-1.0.0.tgz#d20f9a616bb4f0c3b98b91922d25b640aa2bc425" @@ -10119,6 +10920,11 @@ strict-uri-encode@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" +string-argv@^0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/string-argv/-/string-argv-0.0.2.tgz#dac30408690c21f3c3630a3ff3a05877bdcbd736" + integrity sha1-2sMECGkMIfPDYwo/86BYd73L1zY= + string-width@^1.0.1, string-width@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" @@ -10134,6 +10940,15 @@ string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1: is-fullwidth-code-point "^2.0.0" strip-ansi "^4.0.0" +string.prototype.trim@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.1.2.tgz#d04de2c89e137f4d7d206f086b5ed2fae6be8cea" + integrity sha1-0E3iyJ4Tf019IG8Ia17S+ua+jOo= + dependencies: + define-properties "^1.1.2" + es-abstract "^1.5.0" + function-bind "^1.0.2" + string_decoder@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.0.tgz#384f322ee8a848e500effde99901bba849c5d403" @@ -10161,6 +10976,15 @@ stringify-entities@^1.0.1: is-alphanumerical "^1.0.0" is-hexadecimal "^1.0.0" +stringify-object@^3.2.2: + version "3.3.0" + resolved "https://registry.yarnpkg.com/stringify-object/-/stringify-object-3.3.0.tgz#703065aefca19300d3ce88af4f5b3956d7556629" + integrity sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw== + dependencies: + get-own-enumerable-property-symbols "^3.0.0" + is-obj "^1.0.1" + is-regexp "^1.0.0" + stringstream@~0.0.4, stringstream@~0.0.5: version "0.0.5" resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878" @@ -10177,6 +11001,13 @@ strip-ansi@^4.0.0: dependencies: ansi-regex "^3.0.0" +strip-ansi@^5.0.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" + integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== + dependencies: + ansi-regex "^4.1.0" + strip-ansi@~0.1.0: version "0.1.1" resolved "http://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz#39e8a98d044d150660abe4a6808acf70bb7bc991" @@ -10211,7 +11042,7 @@ strip-indent@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-2.0.0.tgz#5ef8db295d01e6ed6cbf7aab96998d7822527b68" -strip-json-comments@2.0.1, strip-json-comments@~2.0.1: +strip-json-comments@2.0.1, strip-json-comments@^2.0.1, strip-json-comments@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" @@ -10409,6 +11240,11 @@ symbol-tree@^3.2.2: version "3.2.2" resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.2.tgz#ae27db38f660a7ae2e1c3b7d1bc290819b8519e6" +synchronous-promise@^2.0.5: + version "2.0.6" + resolved "https://registry.yarnpkg.com/synchronous-promise/-/synchronous-promise-2.0.6.tgz#de76e0ea2b3558c1e673942e47e714a930fa64aa" + integrity sha512-TyOuWLwkmtPL49LHCX1caIwHjRzcVd62+GF6h8W/jHOeZUFHpnd2XJDVuUlaTaLPH1nuu2M69mfHr5XbQJnf/g== + table@4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/table/-/table-4.0.2.tgz#a33447375391e766ad34d3486e6e2aedc84d2e36" @@ -10420,9 +11256,10 @@ table@4.0.2: slice-ansi "1.0.0" string-width "^2.1.1" -table@^4.0.1: +table@^4.0.1, table@^4.0.3: version "4.0.3" resolved "https://registry.yarnpkg.com/table/-/table-4.0.3.tgz#00b5e2b602f1794b9acaf9ca908a76386a7813bc" + integrity sha512-S7rnFITmBH1EnyKcvxBh1LjYeQMmnZtCXSEbHcH6S0NoKit24ZuFO/T1vDcLdYsLQkM188PVVhQmzKIuThNkKg== dependencies: ajv "^6.0.1" ajv-keywords "^3.0.0" @@ -10626,6 +11463,11 @@ toidentifier@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553" +toposort@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/toposort/-/toposort-2.0.2.tgz#ae21768175d1559d48bef35420b2f4962f09c330" + integrity sha1-riF2gXXRVZ1IvvNUILL0li8JwzA= + tough-cookie@>=2.3.3, tough-cookie@^2.3.3, tough-cookie@~2.3.0, tough-cookie@~2.3.3: version "2.3.4" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.4.tgz#ec60cee38ac675063ffc97a5c18970578ee83655" @@ -10677,6 +11519,11 @@ tryer@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/tryer/-/tryer-1.0.1.tgz#f2c85406800b9b0f74c9f7465b81eaad241252f8" +tslib@^1.9.0: + version "1.9.3" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286" + integrity sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ== + tty-browserify@0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" @@ -10846,6 +11693,13 @@ unique-filename@^1.1.0: dependencies: unique-slug "^2.0.0" +unique-filename@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" + integrity sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ== + dependencies: + unique-slug "^2.0.0" + unique-slug@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.0.tgz#db6676e7c7cc0629878ff196097c78855ae9f4ab" @@ -11267,15 +12121,15 @@ which-module@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" -which@^1.2.12, which@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a" +which@^1.2.10, which@^1.2.9: + version "1.3.1" + resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" dependencies: isexe "^2.0.0" -which@^1.2.9: - version "1.3.1" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" +which@^1.2.12, which@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a" dependencies: isexe "^2.0.0" @@ -11338,6 +12192,14 @@ wrap-ansi@^2.0.0: string-width "^1.0.1" strip-ansi "^3.0.1" +wrap-ansi@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-3.0.1.tgz#288a04d87eda5c286e060dfe8f135ce8d007f8ba" + integrity sha1-KIoE2H7aXChuBg3+jxNc6NAH+Lo= + dependencies: + string-width "^2.1.1" + strip-ansi "^4.0.0" + wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" @@ -11509,3 +12371,15 @@ yargs@~3.10.0: ylru@^1.2.0: version "1.2.1" resolved "https://registry.yarnpkg.com/ylru/-/ylru-1.2.1.tgz#f576b63341547989c1de7ba288760923b27fe84f" + +yup@^0.26.10: + version "0.26.10" + resolved "https://registry.yarnpkg.com/yup/-/yup-0.26.10.tgz#3545839663289038faf25facfc07e11fd67c0cb1" + integrity sha512-keuNEbNSnsOTOuGCt3UJW69jDE3O4P+UHAakO7vSeFMnjaitcmlbij/a3oNb9g1Y1KvSKH/7O1R2PQ4m4TRylw== + dependencies: + "@babel/runtime" "7.0.0" + fn-name "~2.0.1" + lodash "^4.17.10" + property-expr "^1.5.0" + synchronous-promise "^2.0.5" + toposort "^2.0.2"