diff --git a/.babelrc.js b/.babelrc.js
index 1c1b8889..c9878103 100755
--- a/.babelrc.js
+++ b/.babelrc.js
@@ -7,6 +7,7 @@ module.exports = {
},
],
'@babel/preset-react',
+ '@babel/preset-typescript',
],
env: {
test: {
diff --git a/.prettierrc b/.prettierrc
index 0ebf6b9e..7615c2b9 100644
--- a/.prettierrc
+++ b/.prettierrc
@@ -1,12 +1,6 @@
{
- "printWidth": 80,
- "tabWidth": 2,
- "useTabs": false,
- "semi": true,
"singleQuote": true,
"trailingComma": "es5",
- "bracketSpacing": true,
- "jsxBracketSameLine": false,
"overrides": [
{
"files": ".prettierrc",
diff --git a/package.json b/package.json
index bdb4eb9c..efbb9600 100644
--- a/package.json
+++ b/package.json
@@ -3,7 +3,7 @@
"version": "2.7.1",
"description": "Drag-and-drop sortable component for nested data and hierarchies",
"scripts": {
- "start": "parcel website/index.html",
+ "start": "./start.sh",
"prebuild": "yarn run lint && yarn run clean",
"build": "rollup -c",
"buildOnly": "rollup -c",
@@ -13,7 +13,7 @@
"clean:storybook": "rimraf build/storybook",
"clean:website": "rimraf build",
"lint": "eslint src website",
- "prettier": "prettier --write \"{src,example/src,stories}/**/*.{js,css,md}\"",
+ "prettier": "prettier --write \"{src,website,stories}/**/*.{js,jsx,ts,tsx,css,md}\"",
"prepublishOnly": "yarn run test && yarn run build",
"release": "standard-version",
"test": "jest",
@@ -34,7 +34,8 @@
"homepage": "https://frontend-collective.github.io/react-sortable-tree/",
"bugs": "https://github.com/frontend-collective/react-sortable-tree/issues",
"authors": [
- "Chris Fritz"
+ "Fritz",
+ "Wei Wei Wu"
],
"license": "MIT",
"jest": {
@@ -48,6 +49,8 @@
"moduleFileExtensions": [
"js",
"jsx",
+ "ts",
+ "tsx",
"json"
],
"moduleDirectories": [
@@ -69,64 +72,65 @@
"> 1%"
],
"dependencies": {
- "frontend-collective-react-dnd-scrollzone": "^1.0.2",
"lodash.isequal": "^4.5.0",
+ "memoize-one": "^5.1.1",
"prop-types": "^15.6.1",
- "react-dnd": "^9.4.0",
"react-dnd-html5-backend": "^10.0.2",
- "react-lifecycles-compat": "^3.0.4",
+ "react-dnd-scrollzone": "^5.0.0",
"react-virtualized": "^9.21.2"
},
"peerDependencies": {
- "react": "^16.3.0",
- "react-dnd": "^7.3.0",
- "react-dom": "^16.3.0"
+ "react": "^16.11.0",
+ "react-dnd": "^10.0.2",
+ "react-dom": "^16.11.0"
},
"devDependencies": {
- "@babel/cli": "^7.7.0",
- "@babel/core": "^7.7.2",
+ "@babel/cli": "^7.8.4",
+ "@babel/core": "^7.8.4",
"@babel/plugin-transform-modules-commonjs": "^7.1.0",
- "@babel/preset-env": "^7.7.1",
- "@babel/preset-react": "^7.7.0",
- "@storybook/addon-options": "^5.2.6",
- "@storybook/addon-storyshots": "^5.2.6",
- "@storybook/react": "^5.2.6",
+ "@babel/preset-env": "^7.8.4",
+ "@babel/preset-react": "^7.8.3",
+ "@babel/preset-typescript": "^7.8.3",
+ "@rollup/plugin-commonjs": "^11.0.2",
+ "@rollup/plugin-node-resolve": "^7.1.1",
+ "@storybook/addon-options": "^5.3.13",
+ "@storybook/addon-storyshots": "^5.3.13",
+ "@storybook/react": "^5.3.13",
+ "@types/react": "^16.9.19",
"autoprefixer": "^9.7.1",
- "babel-core": "^7.0.0-bridge.0",
- "babel-eslint": "^10.0.3",
- "babel-jest": "^24.9.0",
- "babel-loader": "^8.0.4",
- "codesandbox": "~2.1.10",
+ "babel-loader": "8",
+ "codesandbox": "~2.1.12",
"coveralls": "^3.0.1",
- "cross-env": "^6.0.3",
- "enzyme": "^3.10.0",
+ "cross-env": "^7.0.0",
+ "enzyme": "^3.11.0",
"enzyme-adapter-react-16": "^1.14.0",
- "eslint": "^6.6.0",
+ "eslint": "^6.8.0",
"eslint-config-airbnb": "^18.0.1",
- "eslint-config-prettier": "^6.5.0",
- "eslint-plugin-import": "^2.18.2",
+ "eslint-config-prettier": "^6.10.0",
+ "eslint-plugin-import": "^2.20.1",
"eslint-plugin-jsx-a11y": "^6.2.3",
- "eslint-plugin-react": "^7.16.0",
- "gh-pages": "^2.1.1",
- "jest": "^24.9.0",
+ "eslint-plugin-react": "^7.18.3",
+ "eslint-plugin-react-hooks": "^1.7.0",
+ "gh-pages": "^2.2.0",
+ "jest": "^25.1.0",
"jest-enzyme": "^7.1.2",
"parcel-bundler": "^1.12.4",
"prettier": "^1.19.1",
"react": "^16.11.0",
"react-addons-shallow-compare": "^15.6.2",
+ "react-dnd": "^10.0.2",
"react-dnd-test-backend": "^10.0.2",
- "react-dnd-touch-backend": "^9.4.0",
+ "react-dnd-touch-backend": "^10.0.2",
"react-dom": "^16.11.0",
"react-hot-loader": "^4.12.17",
"react-sortable-tree-theme-file-explorer": "^2.0.0",
"react-test-renderer": "^16.11.0",
- "rimraf": "^3.0.0",
- "rollup": "^1.27.0",
+ "rimraf": "^3.0.2",
+ "rollup": "^1.31.1",
"rollup-plugin-babel": "^4.0.3",
- "rollup-plugin-commonjs": "^10.1.0",
- "rollup-plugin-node-resolve": "^5.2.0",
- "rollup-plugin-postcss": "^2.0.3",
- "standard-version": "^7.0.0"
+ "rollup-plugin-postcss": "^2.0.6",
+ "standard-version": "^7.1.0",
+ "typescript": "^3.7.5"
},
"keywords": [
"react",
diff --git a/src/__snapshots__/react-sortable-tree.test.js.snap b/src/__snapshots__/react-sortable-tree.test.js.snap
deleted file mode 100644
index e8454cbe..00000000
--- a/src/__snapshots__/react-sortable-tree.test.js.snap
+++ /dev/null
@@ -1,121 +0,0 @@
-// Jest Snapshot v1, https://goo.gl/fbAQLP
-
-exports[` should render tree correctly 1`] = `
-
-`;
diff --git a/src/index.js b/src/index.ts
similarity index 100%
rename from src/index.js
rename to src/index.ts
diff --git a/src/utils/classnames.js b/src/legacy/classnames.js
similarity index 100%
rename from src/utils/classnames.js
rename to src/legacy/classnames.js
diff --git a/src/utils/dnd-manager.js b/src/legacy/dnd-manager.js
similarity index 100%
rename from src/utils/dnd-manager.js
rename to src/legacy/dnd-manager.js
diff --git a/src/node-renderer-default.css b/src/legacy/node-renderer-default.css
similarity index 100%
rename from src/node-renderer-default.css
rename to src/legacy/node-renderer-default.css
diff --git a/src/node-renderer-default.js b/src/legacy/node-renderer-default.js
similarity index 100%
rename from src/node-renderer-default.js
rename to src/legacy/node-renderer-default.js
diff --git a/src/placeholder-renderer-default.css b/src/legacy/placeholder-renderer-default.css
similarity index 100%
rename from src/placeholder-renderer-default.css
rename to src/legacy/placeholder-renderer-default.css
diff --git a/src/placeholder-renderer-default.js b/src/legacy/placeholder-renderer-default.js
similarity index 100%
rename from src/placeholder-renderer-default.js
rename to src/legacy/placeholder-renderer-default.js
diff --git a/src/react-sortable-tree.css b/src/legacy/react-sortable-tree.css
similarity index 100%
rename from src/react-sortable-tree.css
rename to src/legacy/react-sortable-tree.css
diff --git a/src/react-sortable-tree.js b/src/legacy/react-sortable-tree.js
similarity index 95%
rename from src/react-sortable-tree.js
rename to src/legacy/react-sortable-tree.js
index b83e16a0..5839c8b1 100644
--- a/src/react-sortable-tree.js
+++ b/src/legacy/react-sortable-tree.js
@@ -2,14 +2,8 @@ import React, { Component } from 'react';
import PropTypes from 'prop-types';
import { AutoSizer, List } from 'react-virtualized';
import isEqual from 'lodash.isequal';
-import withScrolling, {
- createScrollingComponent,
- createVerticalStrength,
- createHorizontalStrength,
-} from 'frontend-collective-react-dnd-scrollzone';
import { DndProvider, DndContext } from 'react-dnd';
import HTML5Backend from 'react-dnd-html5-backend';
-import { polyfill } from 'react-lifecycles-compat';
import 'react-virtualized/styles.css';
import TreeNode from './tree-node';
import NodeRendererDefault from './node-renderer-default';
@@ -82,7 +76,6 @@ class ReactSortableTree extends Component {
nodeContentRenderer,
treeNodeRenderer,
isVirtualized,
- slideRegionSize,
} = mergeTheme(props);
this.dndManager = new DndManager(this);
@@ -99,11 +92,7 @@ class ReactSortableTree extends Component {
// Prepare scroll-on-drag options for this list
if (isVirtualized) {
- this.scrollZoneVirtualList = (createScrollingComponent || withScrolling)(
- List
- );
- this.vStrength = createVerticalStrength(slideRegionSize);
- this.hStrength = createHorizontalStrength(slideRegionSize);
+ this.scrollZoneVirtualList = List;
}
this.state = {
@@ -130,7 +119,7 @@ class ReactSortableTree extends Component {
this.dragHover = this.dragHover.bind(this);
this.endDrag = this.endDrag.bind(this);
this.drop = this.drop.bind(this);
- this.handleDndMonitorChange = this.handleDndMonitorChange.bind(this);
+ // this.handleDndMonitorChange = this.handleDndMonitorChange.bind(this);
}
componentDidMount() {
@@ -144,12 +133,12 @@ class ReactSortableTree extends Component {
);
this.setState(stateUpdate);
- // Hook into react-dnd state changes to detect when the drag ends
- // TODO: This is very brittle, so it needs to be replaced if react-dnd
- // offers a more official way to detect when a drag ends
- this.clearMonitorSubscription = this.props.dragDropManager
- .getMonitor()
- .subscribeToStateChange(this.handleDndMonitorChange);
+ // // Hook into react-dnd state changes to detect when the drag ends
+ // // TODO: This is very brittle, so it needs to be replaced if react-dnd
+ // // offers a more official way to detect when a drag ends
+ // this.clearMonitorSubscription = this.props.dragDropManager
+ // .getMonitor()
+ // .subscribeToStateChange(this.handleDndMonitorChange);
}
static getDerivedStateFromProps(nextProps, prevState) {
@@ -212,9 +201,9 @@ class ReactSortableTree extends Component {
}
}
- componentWillUnmount() {
- this.clearMonitorSubscription();
- }
+ // componentWillUnmount() {
+ // this.clearMonitorSubscription();
+ // }
getRows(treeData) {
return memoizedGetFlatDataFromTree({
@@ -684,23 +673,22 @@ class ReactSortableTree extends Component {
} else if (isVirtualized) {
containerStyle = { height: '100%', ...containerStyle };
- const ScrollZoneVirtualList = this.scrollZoneVirtualList;
// Render list with react-virtualized
list = (
{({ height, width }) => (
- {
- this.scrollTop = scrollTop;
- }}
+ // onScroll={({ scrollTop }) => {
+ // this.scrollTop = scrollTop;
+ // }}
height={height}
style={innerStyle}
rowCount={rows.length}
@@ -936,8 +924,6 @@ ReactSortableTree.defaultProps = {
rowDirection: 'ltr',
};
-polyfill(ReactSortableTree);
-
const SortableTreeWithoutDndContext = props => (
{({ dragDropManager }) =>
@@ -950,9 +936,9 @@ const SortableTreeWithoutDndContext = props => (
const SortableTree = props => (
-
+
-)
+);
// Export the tree component without the react-dnd DragDropContext,
// for when component is used with other components using react-dnd.
diff --git a/src/react-sortable-tree.test.js b/src/legacy/react-sortable-tree.test.js
similarity index 100%
rename from src/react-sortable-tree.test.js
rename to src/legacy/react-sortable-tree.test.js
diff --git a/src/tests.js b/src/legacy/tests.js
similarity index 100%
rename from src/tests.js
rename to src/legacy/tests.js
diff --git a/src/tree-node.css b/src/legacy/tree-node.css
similarity index 100%
rename from src/tree-node.css
rename to src/legacy/tree-node.css
diff --git a/src/legacy/tree-node.js b/src/legacy/tree-node.js
new file mode 100644
index 00000000..73823b86
--- /dev/null
+++ b/src/legacy/tree-node.js
@@ -0,0 +1,196 @@
+import React, { Children, cloneElement } from 'react';
+import PropTypes from 'prop-types';
+import classnames from './utils/classnames';
+import './tree-node.css';
+
+const TreeNode = ({
+ children,
+ listIndex,
+ swapFrom,
+ swapLength,
+ swapDepth,
+ scaffoldBlockPxWidth,
+ lowerSiblingCounts,
+ connectDropTarget,
+ isOver,
+ draggedNode,
+ canDrop,
+ treeIndex,
+ treeId, // Delete from otherProps
+ getPrevRow, // Delete from otherProps
+ node, // Delete from otherProps
+ path, // Delete from otherProps
+ rowDirection,
+ ...otherProps
+}) => {
+ const rowDirectionClass = rowDirection === 'rtl' ? 'rst__rtl' : null;
+
+ // Construct the scaffold representing the structure of the tree
+ const scaffoldBlockCount = lowerSiblingCounts.length;
+ const scaffold = [];
+ lowerSiblingCounts.forEach((lowerSiblingCount, i) => {
+ let lineClass = '';
+ if (lowerSiblingCount > 0) {
+ // At this level in the tree, the nodes had sibling nodes further down
+
+ if (listIndex === 0) {
+ // Top-left corner of the tree
+ // +-----+
+ // | |
+ // | +--+
+ // | | |
+ // +--+--+
+ lineClass = 'rst__lineHalfHorizontalRight rst__lineHalfVerticalBottom';
+ } else if (i === scaffoldBlockCount - 1) {
+ // Last scaffold block in the row, right before the row content
+ // +--+--+
+ // | | |
+ // | +--+
+ // | | |
+ // +--+--+
+ lineClass = 'rst__lineHalfHorizontalRight rst__lineFullVertical';
+ } else {
+ // Simply connecting the line extending down to the next sibling on this level
+ // +--+--+
+ // | | |
+ // | | |
+ // | | |
+ // +--+--+
+ lineClass = 'rst__lineFullVertical';
+ }
+ } else if (listIndex === 0) {
+ // Top-left corner of the tree, but has no siblings
+ // +-----+
+ // | |
+ // | +--+
+ // | |
+ // +-----+
+ lineClass = 'rst__lineHalfHorizontalRight';
+ } else if (i === scaffoldBlockCount - 1) {
+ // The last or only node in this level of the tree
+ // +--+--+
+ // | | |
+ // | +--+
+ // | |
+ // +-----+
+ lineClass = 'rst__lineHalfVerticalTop rst__lineHalfHorizontalRight';
+ }
+
+ scaffold.push(
+
+ );
+
+ if (treeIndex !== listIndex && i === swapDepth) {
+ // This row has been shifted, and is at the depth of
+ // the line pointing to the new destination
+ let highlightLineClass = '';
+
+ if (listIndex === swapFrom + swapLength - 1) {
+ // This block is on the bottom (target) line
+ // This block points at the target block (where the row will go when released)
+ highlightLineClass = 'rst__highlightBottomLeftCorner';
+ } else if (treeIndex === swapFrom) {
+ // This block is on the top (source) line
+ highlightLineClass = 'rst__highlightTopLeftCorner';
+ } else {
+ // This block is between the bottom and top
+ highlightLineClass = 'rst__highlightLineVertical';
+ }
+
+ let style;
+ if (rowDirection === 'rtl') {
+ style = {
+ width: scaffoldBlockPxWidth,
+ right: scaffoldBlockPxWidth * i,
+ };
+ } else {
+ // Default ltr
+ style = {
+ width: scaffoldBlockPxWidth,
+ left: scaffoldBlockPxWidth * i,
+ };
+ }
+
+ scaffold.push(
+
+ );
+ }
+ });
+
+ let style;
+ if (rowDirection === 'rtl') {
+ style = { right: scaffoldBlockPxWidth * scaffoldBlockCount };
+ } else {
+ // Default ltr
+ style = { left: scaffoldBlockPxWidth * scaffoldBlockCount };
+ }
+
+ return connectDropTarget(
+
+ {scaffold}
+
+
+ {Children.map(children, child =>
+ cloneElement(child, {
+ isOver,
+ canDrop,
+ draggedNode,
+ })
+ )}
+
+
+ );
+};
+
+TreeNode.defaultProps = {
+ swapFrom: null,
+ swapDepth: null,
+ swapLength: null,
+ canDrop: false,
+ draggedNode: null,
+ rowDirection: 'ltr',
+};
+
+TreeNode.propTypes = {
+ treeIndex: PropTypes.number.isRequired,
+ treeId: PropTypes.string.isRequired,
+ swapFrom: PropTypes.number,
+ swapDepth: PropTypes.number,
+ swapLength: PropTypes.number,
+ scaffoldBlockPxWidth: PropTypes.number.isRequired,
+ lowerSiblingCounts: PropTypes.arrayOf(PropTypes.number).isRequired,
+
+ listIndex: PropTypes.number.isRequired,
+ children: PropTypes.node.isRequired,
+
+ // Drop target
+ connectDropTarget: PropTypes.func.isRequired,
+ isOver: PropTypes.bool.isRequired,
+ canDrop: PropTypes.bool,
+ draggedNode: PropTypes.shape({}),
+
+ // used in dndManager
+ getPrevRow: PropTypes.func.isRequired,
+ node: PropTypes.shape({}).isRequired,
+ path: PropTypes.arrayOf(
+ PropTypes.oneOfType([PropTypes.string, PropTypes.number])
+ ).isRequired,
+
+ // rtl support
+ rowDirection: PropTypes.string,
+};
+
+export default TreeNode;
diff --git a/src/tree-placeholder.js b/src/legacy/tree-placeholder.js
similarity index 100%
rename from src/tree-placeholder.js
rename to src/legacy/tree-placeholder.js
diff --git a/src/tree-node.js b/src/tree-node.js
deleted file mode 100644
index 11c9f29a..00000000
--- a/src/tree-node.js
+++ /dev/null
@@ -1,204 +0,0 @@
-import React, { Component, Children, cloneElement } from 'react';
-import PropTypes from 'prop-types';
-import classnames from './utils/classnames';
-import './tree-node.css';
-
-class TreeNode extends Component {
- render() {
- const {
- children,
- listIndex,
- swapFrom,
- swapLength,
- swapDepth,
- scaffoldBlockPxWidth,
- lowerSiblingCounts,
- connectDropTarget,
- isOver,
- draggedNode,
- canDrop,
- treeIndex,
- treeId, // Delete from otherProps
- getPrevRow, // Delete from otherProps
- node, // Delete from otherProps
- path, // Delete from otherProps
- rowDirection,
- ...otherProps
- } = this.props;
-
- const rowDirectionClass = rowDirection === 'rtl' ? 'rst__rtl' : null;
-
- // Construct the scaffold representing the structure of the tree
- const scaffoldBlockCount = lowerSiblingCounts.length;
- const scaffold = [];
- lowerSiblingCounts.forEach((lowerSiblingCount, i) => {
- let lineClass = '';
- if (lowerSiblingCount > 0) {
- // At this level in the tree, the nodes had sibling nodes further down
-
- if (listIndex === 0) {
- // Top-left corner of the tree
- // +-----+
- // | |
- // | +--+
- // | | |
- // +--+--+
- lineClass =
- 'rst__lineHalfHorizontalRight rst__lineHalfVerticalBottom';
- } else if (i === scaffoldBlockCount - 1) {
- // Last scaffold block in the row, right before the row content
- // +--+--+
- // | | |
- // | +--+
- // | | |
- // +--+--+
- lineClass = 'rst__lineHalfHorizontalRight rst__lineFullVertical';
- } else {
- // Simply connecting the line extending down to the next sibling on this level
- // +--+--+
- // | | |
- // | | |
- // | | |
- // +--+--+
- lineClass = 'rst__lineFullVertical';
- }
- } else if (listIndex === 0) {
- // Top-left corner of the tree, but has no siblings
- // +-----+
- // | |
- // | +--+
- // | |
- // +-----+
- lineClass = 'rst__lineHalfHorizontalRight';
- } else if (i === scaffoldBlockCount - 1) {
- // The last or only node in this level of the tree
- // +--+--+
- // | | |
- // | +--+
- // | |
- // +-----+
- lineClass = 'rst__lineHalfVerticalTop rst__lineHalfHorizontalRight';
- }
-
- scaffold.push(
-
- );
-
- if (treeIndex !== listIndex && i === swapDepth) {
- // This row has been shifted, and is at the depth of
- // the line pointing to the new destination
- let highlightLineClass = '';
-
- if (listIndex === swapFrom + swapLength - 1) {
- // This block is on the bottom (target) line
- // This block points at the target block (where the row will go when released)
- highlightLineClass = 'rst__highlightBottomLeftCorner';
- } else if (treeIndex === swapFrom) {
- // This block is on the top (source) line
- highlightLineClass = 'rst__highlightTopLeftCorner';
- } else {
- // This block is between the bottom and top
- highlightLineClass = 'rst__highlightLineVertical';
- }
-
- let style;
- if (rowDirection === 'rtl') {
- style = {
- width: scaffoldBlockPxWidth,
- right: scaffoldBlockPxWidth * i,
- };
- } else {
- // Default ltr
- style = {
- width: scaffoldBlockPxWidth,
- left: scaffoldBlockPxWidth * i,
- };
- }
-
- scaffold.push(
-
- );
- }
- });
-
- let style;
- if (rowDirection === 'rtl') {
- style = { right: scaffoldBlockPxWidth * scaffoldBlockCount };
- } else {
- // Default ltr
- style = { left: scaffoldBlockPxWidth * scaffoldBlockCount };
- }
-
- return connectDropTarget(
-
- {scaffold}
-
-
- {Children.map(children, child =>
- cloneElement(child, {
- isOver,
- canDrop,
- draggedNode,
- })
- )}
-
-
- );
- }
-}
-
-TreeNode.defaultProps = {
- swapFrom: null,
- swapDepth: null,
- swapLength: null,
- canDrop: false,
- draggedNode: null,
- rowDirection: 'ltr',
-};
-
-TreeNode.propTypes = {
- treeIndex: PropTypes.number.isRequired,
- treeId: PropTypes.string.isRequired,
- swapFrom: PropTypes.number,
- swapDepth: PropTypes.number,
- swapLength: PropTypes.number,
- scaffoldBlockPxWidth: PropTypes.number.isRequired,
- lowerSiblingCounts: PropTypes.arrayOf(PropTypes.number).isRequired,
-
- listIndex: PropTypes.number.isRequired,
- children: PropTypes.node.isRequired,
-
- // Drop target
- connectDropTarget: PropTypes.func.isRequired,
- isOver: PropTypes.bool.isRequired,
- canDrop: PropTypes.bool,
- draggedNode: PropTypes.shape({}),
-
- // used in dndManager
- getPrevRow: PropTypes.func.isRequired,
- node: PropTypes.shape({}).isRequired,
- path: PropTypes.arrayOf(
- PropTypes.oneOfType([PropTypes.string, PropTypes.number])
- ).isRequired,
-
- // rtl support
- rowDirection: PropTypes.string,
-};
-
-export default TreeNode;
diff --git a/src/types.ts b/src/types.ts
new file mode 100644
index 00000000..4895568d
--- /dev/null
+++ b/src/types.ts
@@ -0,0 +1,7 @@
+export type Path = string[];
+export type TreeNode = {
+ nodeId: string;
+ children?: TreeNode[] | Function;
+ expanded?: boolean;
+};
+export type TreeData = TreeNode[];
diff --git a/src/utils/default-handlers.js b/src/utils/default-handlers.js
deleted file mode 100644
index faf15fa9..00000000
--- a/src/utils/default-handlers.js
+++ /dev/null
@@ -1,53 +0,0 @@
-export function defaultGetNodeKey({ treeIndex }) {
- return treeIndex;
-}
-
-// Cheap hack to get the text of a react object
-function getReactElementText(parent) {
- if (typeof parent === 'string') {
- return parent;
- }
-
- if (
- parent === null ||
- typeof parent !== 'object' ||
- !parent.props ||
- !parent.props.children ||
- (typeof parent.props.children !== 'string' &&
- typeof parent.props.children !== 'object')
- ) {
- return '';
- }
-
- if (typeof parent.props.children === 'string') {
- return parent.props.children;
- }
-
- return parent.props.children
- .map(child => getReactElementText(child))
- .join('');
-}
-
-// Search for a query string inside a node property
-function stringSearch(key, searchQuery, node, path, treeIndex) {
- if (typeof node[key] === 'function') {
- // Search within text after calling its function to generate the text
- return (
- String(node[key]({ node, path, treeIndex })).indexOf(searchQuery) > -1
- );
- }
- if (typeof node[key] === 'object') {
- // Search within text inside react elements
- return getReactElementText(node[key]).indexOf(searchQuery) > -1;
- }
-
- // Search within string
- return node[key] && String(node[key]).indexOf(searchQuery) > -1;
-}
-
-export function defaultSearchMethod({ node, path, treeIndex, searchQuery }) {
- return (
- stringSearch('title', searchQuery, node, path, treeIndex) ||
- stringSearch('subtitle', searchQuery, node, path, treeIndex)
- );
-}
diff --git a/src/utils/generic-utils.test.js b/src/utils/generic-utils.spec.ts
similarity index 100%
rename from src/utils/generic-utils.test.js
rename to src/utils/generic-utils.spec.ts
diff --git a/src/utils/generic-utils.js b/src/utils/generic-utils.ts
similarity index 68%
rename from src/utils/generic-utils.js
rename to src/utils/generic-utils.ts
index b7424565..8de28eb9 100644
--- a/src/utils/generic-utils.js
+++ b/src/utils/generic-utils.ts
@@ -1,6 +1,9 @@
-/* eslint-disable import/prefer-default-export */
-
-export function slideRows(rows, fromIndex, toIndex, count = 1) {
+export function slideRows(
+ rows: T[],
+ fromIndex: number,
+ toIndex: number,
+ count = 1
+): T[] {
const rowsWithoutMoved = [
...rows.slice(0, fromIndex),
...rows.slice(fromIndex + count),
diff --git a/src/utils/memoized-tree-data-utils.js b/src/utils/memoized-tree-data-utils.js
deleted file mode 100644
index 8ab555ce..00000000
--- a/src/utils/memoized-tree-data-utils.js
+++ /dev/null
@@ -1,34 +0,0 @@
-import {
- insertNode,
- getDescendantCount,
- getFlatDataFromTree,
-} from './tree-data-utils';
-
-const memoize = f => {
- let savedArgsArray = [];
- let savedKeysArray = [];
- let savedResult = null;
-
- return args => {
- const keysArray = Object.keys(args).sort();
- const argsArray = keysArray.map(key => args[key]);
-
- // If the arguments for the last insert operation are different than this time,
- // recalculate the result
- if (
- argsArray.length !== savedArgsArray.length ||
- argsArray.some((arg, index) => arg !== savedArgsArray[index]) ||
- keysArray.some((key, index) => key !== savedKeysArray[index])
- ) {
- savedArgsArray = argsArray;
- savedKeysArray = keysArray;
- savedResult = f(args);
- }
-
- return savedResult;
- };
-};
-
-export const memoizedInsertNode = memoize(insertNode);
-export const memoizedGetFlatDataFromTree = memoize(getFlatDataFromTree);
-export const memoizedGetDescendantCount = memoize(getDescendantCount);
diff --git a/src/utils/memoized-tree-data-utils.spec.ts b/src/utils/memoized-tree-data-utils.spec.ts
new file mode 100644
index 00000000..dc63e430
--- /dev/null
+++ b/src/utils/memoized-tree-data-utils.spec.ts
@@ -0,0 +1,24 @@
+import { insertNode } from './tree-data-utils';
+import { memoizedInsertNode } from './memoized-tree-data-utils';
+
+describe('insertNode', () => {
+ it('should handle empty data', () => {
+ type InsertParams = Parameters;
+ const params: InsertParams = [[], { nodeId: 'a' }, 0, 0];
+
+ let firstCall = insertNode(...params);
+ let secondCall = insertNode(...params);
+ expect(firstCall === secondCall).toEqual(false);
+
+ firstCall = memoizedInsertNode(...params);
+ secondCall = memoizedInsertNode(...params);
+ expect(firstCall === secondCall).toEqual(true);
+
+ expect(
+ memoizedInsertNode(...params) ===
+ memoizedInsertNode(
+ ...([[{ nodeId: 'a' }], ...params.slice(1)] as InsertParams)
+ )
+ ).toEqual(false);
+ });
+});
diff --git a/src/utils/memoized-tree-data-utils.test.js b/src/utils/memoized-tree-data-utils.test.js
deleted file mode 100644
index e0e3afd4..00000000
--- a/src/utils/memoized-tree-data-utils.test.js
+++ /dev/null
@@ -1,28 +0,0 @@
-import { insertNode } from './tree-data-utils';
-
-import { memoizedInsertNode } from './memoized-tree-data-utils';
-
-describe('insertNode', () => {
- it('should handle empty data', () => {
- const params = {
- treeData: [],
- depth: 0,
- minimumTreeIndex: 0,
- newNode: {},
- getNodeKey: ({ treeIndex }) => treeIndex,
- };
-
- let firstCall = insertNode(params);
- let secondCall = insertNode(params);
- expect(firstCall === secondCall).toEqual(false);
-
- firstCall = memoizedInsertNode(params);
- secondCall = memoizedInsertNode(params);
- expect(firstCall === secondCall).toEqual(true);
-
- expect(
- memoizedInsertNode(params) ===
- memoizedInsertNode({ ...params, treeData: [{}] })
- ).toEqual(false);
- });
-});
diff --git a/src/utils/memoized-tree-data-utils.ts b/src/utils/memoized-tree-data-utils.ts
new file mode 100644
index 00000000..c3695e3e
--- /dev/null
+++ b/src/utils/memoized-tree-data-utils.ts
@@ -0,0 +1,10 @@
+import memoize from 'memoize-one';
+import {
+ insertNode,
+ getDescendantCount,
+ getFlatDataFromTree,
+} from './tree-data-utils';
+
+export const memoizedInsertNode = memoize(insertNode);
+export const memoizedGetFlatDataFromTree = memoize(getFlatDataFromTree);
+export const memoizedGetDescendantCount = memoize(getDescendantCount);
diff --git a/src/utils/tree-data-utils.js b/src/utils/tree-data-utils.js
deleted file mode 100644
index 09cb4dd5..00000000
--- a/src/utils/tree-data-utils.js
+++ /dev/null
@@ -1,1205 +0,0 @@
-/**
- * Performs a depth-first traversal over all of the node descendants,
- * incrementing currentIndex by 1 for each
- */
-function getNodeDataAtTreeIndexOrNextIndex({
- targetIndex,
- node,
- currentIndex,
- getNodeKey,
- path = [],
- lowerSiblingCounts = [],
- ignoreCollapsed = true,
- isPseudoRoot = false,
-}) {
- // The pseudo-root is not considered in the path
- const selfPath = !isPseudoRoot
- ? [...path, getNodeKey({ node, treeIndex: currentIndex })]
- : [];
-
- // Return target node when found
- if (currentIndex === targetIndex) {
- return {
- node,
- lowerSiblingCounts,
- path: selfPath,
- };
- }
-
- // Add one and continue for nodes with no children or hidden children
- if (!node.children || (ignoreCollapsed && node.expanded !== true)) {
- return { nextIndex: currentIndex + 1 };
- }
-
- // Iterate over each child and their descendants and return the
- // target node if childIndex reaches the targetIndex
- let childIndex = currentIndex + 1;
- const childCount = node.children.length;
- for (let i = 0; i < childCount; i += 1) {
- const result = getNodeDataAtTreeIndexOrNextIndex({
- ignoreCollapsed,
- getNodeKey,
- targetIndex,
- node: node.children[i],
- currentIndex: childIndex,
- lowerSiblingCounts: [...lowerSiblingCounts, childCount - i - 1],
- path: selfPath,
- });
-
- if (result.node) {
- return result;
- }
-
- childIndex = result.nextIndex;
- }
-
- // If the target node is not found, return the farthest traversed index
- return { nextIndex: childIndex };
-}
-
-export function getDescendantCount({ node, ignoreCollapsed = true }) {
- return (
- getNodeDataAtTreeIndexOrNextIndex({
- getNodeKey: () => {},
- ignoreCollapsed,
- node,
- currentIndex: 0,
- targetIndex: -1,
- }).nextIndex - 1
- );
-}
-
-/**
- * Walk all descendants of the given node, depth-first
- *
- * @param {Object} args - Function parameters
- * @param {function} args.callback - Function to call on each node
- * @param {function} args.getNodeKey - Function to get the key from the nodeData and tree index
- * @param {boolean} args.ignoreCollapsed - Ignore children of nodes without `expanded` set to `true`
- * @param {boolean=} args.isPseudoRoot - If true, this node has no real data, and only serves
- * as the parent of all the nodes in the tree
- * @param {Object} args.node - A tree node
- * @param {Object=} args.parentNode - The parent node of `node`
- * @param {number} args.currentIndex - The treeIndex of `node`
- * @param {number[]|string[]} args.path - Array of keys leading up to node to be changed
- * @param {number[]} args.lowerSiblingCounts - An array containing the count of siblings beneath the
- * previous nodes in this path
- *
- * @return {number|false} nextIndex - Index of the next sibling of `node`,
- * or false if the walk should be terminated
- */
-function walkDescendants({
- callback,
- getNodeKey,
- ignoreCollapsed,
- isPseudoRoot = false,
- node,
- parentNode = null,
- currentIndex,
- path = [],
- lowerSiblingCounts = [],
-}) {
- // The pseudo-root is not considered in the path
- const selfPath = isPseudoRoot
- ? []
- : [...path, getNodeKey({ node, treeIndex: currentIndex })];
- const selfInfo = isPseudoRoot
- ? null
- : {
- node,
- parentNode,
- path: selfPath,
- lowerSiblingCounts,
- treeIndex: currentIndex,
- };
-
- if (!isPseudoRoot) {
- const callbackResult = callback(selfInfo);
-
- // Cut walk short if the callback returned false
- if (callbackResult === false) {
- return false;
- }
- }
-
- // Return self on nodes with no children or hidden children
- if (
- !node.children ||
- (node.expanded !== true && ignoreCollapsed && !isPseudoRoot)
- ) {
- return currentIndex;
- }
-
- // Get all descendants
- let childIndex = currentIndex;
- const childCount = node.children.length;
- if (typeof node.children !== 'function') {
- for (let i = 0; i < childCount; i += 1) {
- childIndex = walkDescendants({
- callback,
- getNodeKey,
- ignoreCollapsed,
- node: node.children[i],
- parentNode: isPseudoRoot ? null : node,
- currentIndex: childIndex + 1,
- lowerSiblingCounts: [...lowerSiblingCounts, childCount - i - 1],
- path: selfPath,
- });
-
- // Cut walk short if the callback returned false
- if (childIndex === false) {
- return false;
- }
- }
- }
-
- return childIndex;
-}
-
-/**
- * Perform a change on the given node and all its descendants, traversing the tree depth-first
- *
- * @param {Object} args - Function parameters
- * @param {function} args.callback - Function to call on each node
- * @param {function} args.getNodeKey - Function to get the key from the nodeData and tree index
- * @param {boolean} args.ignoreCollapsed - Ignore children of nodes without `expanded` set to `true`
- * @param {boolean=} args.isPseudoRoot - If true, this node has no real data, and only serves
- * as the parent of all the nodes in the tree
- * @param {Object} args.node - A tree node
- * @param {Object=} args.parentNode - The parent node of `node`
- * @param {number} args.currentIndex - The treeIndex of `node`
- * @param {number[]|string[]} args.path - Array of keys leading up to node to be changed
- * @param {number[]} args.lowerSiblingCounts - An array containing the count of siblings beneath the
- * previous nodes in this path
- *
- * @return {number|false} nextIndex - Index of the next sibling of `node`,
- * or false if the walk should be terminated
- */
-function mapDescendants({
- callback,
- getNodeKey,
- ignoreCollapsed,
- isPseudoRoot = false,
- node,
- parentNode = null,
- currentIndex,
- path = [],
- lowerSiblingCounts = [],
-}) {
- const nextNode = { ...node };
-
- // The pseudo-root is not considered in the path
- const selfPath = isPseudoRoot
- ? []
- : [...path, getNodeKey({ node: nextNode, treeIndex: currentIndex })];
- const selfInfo = {
- node: nextNode,
- parentNode,
- path: selfPath,
- lowerSiblingCounts,
- treeIndex: currentIndex,
- };
-
- // Return self on nodes with no children or hidden children
- if (
- !nextNode.children ||
- (nextNode.expanded !== true && ignoreCollapsed && !isPseudoRoot)
- ) {
- return {
- treeIndex: currentIndex,
- node: callback(selfInfo),
- };
- }
-
- // Get all descendants
- let childIndex = currentIndex;
- const childCount = nextNode.children.length;
- if (typeof nextNode.children !== 'function') {
- nextNode.children = nextNode.children.map((child, i) => {
- const mapResult = mapDescendants({
- callback,
- getNodeKey,
- ignoreCollapsed,
- node: child,
- parentNode: isPseudoRoot ? null : nextNode,
- currentIndex: childIndex + 1,
- lowerSiblingCounts: [...lowerSiblingCounts, childCount - i - 1],
- path: selfPath,
- });
- childIndex = mapResult.treeIndex;
-
- return mapResult.node;
- });
- }
-
- return {
- node: callback(selfInfo),
- treeIndex: childIndex,
- };
-}
-
-/**
- * Count all the visible (expanded) descendants in the tree data.
- *
- * @param {!Object[]} treeData - Tree data
- *
- * @return {number} count
- */
-export function getVisibleNodeCount({ treeData }) {
- const traverse = node => {
- if (
- !node.children ||
- node.expanded !== true ||
- typeof node.children === 'function'
- ) {
- return 1;
- }
-
- return (
- 1 +
- node.children.reduce(
- (total, currentNode) => total + traverse(currentNode),
- 0
- )
- );
- };
-
- return treeData.reduce(
- (total, currentNode) => total + traverse(currentNode),
- 0
- );
-}
-
-/**
- * Get the th visible node in the tree data.
- *
- * @param {!Object[]} treeData - Tree data
- * @param {!number} targetIndex - The index of the node to search for
- * @param {!function} getNodeKey - Function to get the key from the nodeData and tree index
- *
- * @return {{
- * node: Object,
- * path: []string|[]number,
- * lowerSiblingCounts: []number
- * }|null} node - The node at targetIndex, or null if not found
- */
-export function getVisibleNodeInfoAtIndex({
- treeData,
- index: targetIndex,
- getNodeKey,
-}) {
- if (!treeData || treeData.length < 1) {
- return null;
- }
-
- // Call the tree traversal with a pseudo-root node
- const result = getNodeDataAtTreeIndexOrNextIndex({
- targetIndex,
- getNodeKey,
- node: {
- children: treeData,
- expanded: true,
- },
- currentIndex: -1,
- path: [],
- lowerSiblingCounts: [],
- isPseudoRoot: true,
- });
-
- if (result.node) {
- return result;
- }
-
- return null;
-}
-
-/**
- * Walk descendants depth-first and call a callback on each
- *
- * @param {!Object[]} treeData - Tree data
- * @param {!function} getNodeKey - Function to get the key from the nodeData and tree index
- * @param {function} callback - Function to call on each node
- * @param {boolean=} ignoreCollapsed - Ignore children of nodes without `expanded` set to `true`
- *
- * @return void
- */
-export function walk({
- treeData,
- getNodeKey,
- callback,
- ignoreCollapsed = true,
-}) {
- if (!treeData || treeData.length < 1) {
- return;
- }
-
- walkDescendants({
- callback,
- getNodeKey,
- ignoreCollapsed,
- isPseudoRoot: true,
- node: { children: treeData },
- currentIndex: -1,
- path: [],
- lowerSiblingCounts: [],
- });
-}
-
-/**
- * Perform a depth-first transversal of the descendants and
- * make a change to every node in the tree
- *
- * @param {!Object[]} treeData - Tree data
- * @param {!function} getNodeKey - Function to get the key from the nodeData and tree index
- * @param {function} callback - Function to call on each node
- * @param {boolean=} ignoreCollapsed - Ignore children of nodes without `expanded` set to `true`
- *
- * @return {Object[]} changedTreeData - The changed tree data
- */
-export function map({
- treeData,
- getNodeKey,
- callback,
- ignoreCollapsed = true,
-}) {
- if (!treeData || treeData.length < 1) {
- return [];
- }
-
- return mapDescendants({
- callback,
- getNodeKey,
- ignoreCollapsed,
- isPseudoRoot: true,
- node: { children: treeData },
- currentIndex: -1,
- path: [],
- lowerSiblingCounts: [],
- }).node.children;
-}
-
-/**
- * Expand or close every node in the tree
- *
- * @param {!Object[]} treeData - Tree data
- * @param {?boolean} expanded - Whether the node is expanded or not
- *
- * @return {Object[]} changedTreeData - The changed tree data
- */
-export function toggleExpandedForAll({ treeData, expanded = true }) {
- return map({
- treeData,
- callback: ({ node }) => ({ ...node, expanded }),
- getNodeKey: ({ treeIndex }) => treeIndex,
- ignoreCollapsed: false,
- });
-}
-
-/**
- * Replaces node at path with object, or callback-defined object
- *
- * @param {!Object[]} treeData
- * @param {number[]|string[]} path - Array of keys leading up to node to be changed
- * @param {function|any} newNode - Node to replace the node at the path with, or a function producing the new node
- * @param {!function} getNodeKey - Function to get the key from the nodeData and tree index
- * @param {boolean=} ignoreCollapsed - Ignore children of nodes without `expanded` set to `true`
- *
- * @return {Object[]} changedTreeData - The changed tree data
- */
-export function changeNodeAtPath({
- treeData,
- path,
- newNode,
- getNodeKey,
- ignoreCollapsed = true,
-}) {
- const RESULT_MISS = 'RESULT_MISS';
- const traverse = ({
- isPseudoRoot = false,
- node,
- currentTreeIndex,
- pathIndex,
- }) => {
- if (
- !isPseudoRoot &&
- getNodeKey({ node, treeIndex: currentTreeIndex }) !== path[pathIndex]
- ) {
- return RESULT_MISS;
- }
-
- if (pathIndex >= path.length - 1) {
- // If this is the final location in the path, return its changed form
- return typeof newNode === 'function'
- ? newNode({ node, treeIndex: currentTreeIndex })
- : newNode;
- }
- if (!node.children) {
- // If this node is part of the path, but has no children, return the unchanged node
- throw new Error('Path referenced children of node with no children.');
- }
-
- let nextTreeIndex = currentTreeIndex + 1;
- for (let i = 0; i < node.children.length; i += 1) {
- const result = traverse({
- node: node.children[i],
- currentTreeIndex: nextTreeIndex,
- pathIndex: pathIndex + 1,
- });
-
- // If the result went down the correct path
- if (result !== RESULT_MISS) {
- if (result) {
- // If the result was truthy (in this case, an object),
- // pass it to the next level of recursion up
- return {
- ...node,
- children: [
- ...node.children.slice(0, i),
- result,
- ...node.children.slice(i + 1),
- ],
- };
- }
- // If the result was falsy (returned from the newNode function), then
- // delete the node from the array.
- return {
- ...node,
- children: [
- ...node.children.slice(0, i),
- ...node.children.slice(i + 1),
- ],
- };
- }
-
- nextTreeIndex +=
- 1 + getDescendantCount({ node: node.children[i], ignoreCollapsed });
- }
-
- return RESULT_MISS;
- };
-
- // Use a pseudo-root node in the beginning traversal
- const result = traverse({
- node: { children: treeData },
- currentTreeIndex: -1,
- pathIndex: -1,
- isPseudoRoot: true,
- });
-
- if (result === RESULT_MISS) {
- throw new Error('No node found at the given path.');
- }
-
- return result.children;
-}
-
-/**
- * Removes the node at the specified path and returns the resulting treeData.
- *
- * @param {!Object[]} treeData
- * @param {number[]|string[]} path - Array of keys leading up to node to be deleted
- * @param {!function} getNodeKey - Function to get the key from the nodeData and tree index
- * @param {boolean=} ignoreCollapsed - Ignore children of nodes without `expanded` set to `true`
- *
- * @return {Object[]} changedTreeData - The tree data with the node removed
- */
-export function removeNodeAtPath({
- treeData,
- path,
- getNodeKey,
- ignoreCollapsed = true,
-}) {
- return changeNodeAtPath({
- treeData,
- path,
- getNodeKey,
- ignoreCollapsed,
- newNode: null, // Delete the node
- });
-}
-
-/**
- * Removes the node at the specified path and returns the resulting treeData.
- *
- * @param {!Object[]} treeData
- * @param {number[]|string[]} path - Array of keys leading up to node to be deleted
- * @param {!function} getNodeKey - Function to get the key from the nodeData and tree index
- * @param {boolean=} ignoreCollapsed - Ignore children of nodes without `expanded` set to `true`
- *
- * @return {Object} result
- * @return {Object[]} result.treeData - The tree data with the node removed
- * @return {Object} result.node - The node that was removed
- * @return {number} result.treeIndex - The previous treeIndex of the removed node
- */
-export function removeNode({
- treeData,
- path,
- getNodeKey,
- ignoreCollapsed = true,
-}) {
- let removedNode = null;
- let removedTreeIndex = null;
- const nextTreeData = changeNodeAtPath({
- treeData,
- path,
- getNodeKey,
- ignoreCollapsed,
- newNode: ({ node, treeIndex }) => {
- // Store the target node and delete it from the tree
- removedNode = node;
- removedTreeIndex = treeIndex;
-
- return null;
- },
- });
-
- return {
- treeData: nextTreeData,
- node: removedNode,
- treeIndex: removedTreeIndex,
- };
-}
-
-/**
- * Gets the node at the specified path
- *
- * @param {!Object[]} treeData
- * @param {number[]|string[]} path - Array of keys leading up to node to be deleted
- * @param {!function} getNodeKey - Function to get the key from the nodeData and tree index
- * @param {boolean=} ignoreCollapsed - Ignore children of nodes without `expanded` set to `true`
- *
- * @return {Object|null} nodeInfo - The node info at the given path, or null if not found
- */
-export function getNodeAtPath({
- treeData,
- path,
- getNodeKey,
- ignoreCollapsed = true,
-}) {
- let foundNodeInfo = null;
-
- try {
- changeNodeAtPath({
- treeData,
- path,
- getNodeKey,
- ignoreCollapsed,
- newNode: ({ node, treeIndex }) => {
- foundNodeInfo = { node, treeIndex };
- return node;
- },
- });
- } catch (err) {
- // Ignore the error -- the null return will be explanation enough
- }
-
- return foundNodeInfo;
-}
-
-/**
- * Adds the node to the specified parent and returns the resulting treeData.
- *
- * @param {!Object[]} treeData
- * @param {!Object} newNode - The node to insert
- * @param {number|string} parentKey - The key of the to-be parentNode of the node
- * @param {!function} getNodeKey - Function to get the key from the nodeData and tree index
- * @param {boolean=} ignoreCollapsed - Ignore children of nodes without `expanded` set to `true`
- * @param {boolean=} expandParent - If true, expands the parentNode specified by parentPath
- * @param {boolean=} addAsFirstChild - If true, adds new node as first child of tree
- *
- * @return {Object} result
- * @return {Object[]} result.treeData - The updated tree data
- * @return {number} result.treeIndex - The tree index at which the node was inserted
- */
-export function addNodeUnderParent({
- treeData,
- newNode,
- parentKey = null,
- getNodeKey,
- ignoreCollapsed = true,
- expandParent = false,
- addAsFirstChild = false,
-}) {
- if (parentKey === null) {
- return addAsFirstChild
- ? {
- treeData: [newNode, ...(treeData || [])],
- treeIndex: 0,
- }
- : {
- treeData: [...(treeData || []), newNode],
- treeIndex: (treeData || []).length,
- };
- }
-
- let insertedTreeIndex = null;
- let hasBeenAdded = false;
- const changedTreeData = map({
- treeData,
- getNodeKey,
- ignoreCollapsed,
- callback: ({ node, treeIndex, path }) => {
- const key = path ? path[path.length - 1] : null;
- // Return nodes that are not the parent as-is
- if (hasBeenAdded || key !== parentKey) {
- return node;
- }
- hasBeenAdded = true;
-
- const parentNode = {
- ...node,
- };
-
- if (expandParent) {
- parentNode.expanded = true;
- }
-
- // If no children exist yet, just add the single newNode
- if (!parentNode.children) {
- insertedTreeIndex = treeIndex + 1;
- return {
- ...parentNode,
- children: [newNode],
- };
- }
-
- if (typeof parentNode.children === 'function') {
- throw new Error('Cannot add to children defined by a function');
- }
-
- let nextTreeIndex = treeIndex + 1;
- for (let i = 0; i < parentNode.children.length; i += 1) {
- nextTreeIndex +=
- 1 +
- getDescendantCount({ node: parentNode.children[i], ignoreCollapsed });
- }
-
- insertedTreeIndex = nextTreeIndex;
-
- const children = addAsFirstChild
- ? [newNode, ...parentNode.children]
- : [...parentNode.children, newNode];
-
- return {
- ...parentNode,
- children,
- };
- },
- });
-
- if (!hasBeenAdded) {
- throw new Error('No node found with the given key.');
- }
-
- return {
- treeData: changedTreeData,
- treeIndex: insertedTreeIndex,
- };
-}
-
-function addNodeAtDepthAndIndex({
- targetDepth,
- minimumTreeIndex,
- newNode,
- ignoreCollapsed,
- expandParent,
- isPseudoRoot = false,
- isLastChild,
- node,
- currentIndex,
- currentDepth,
- getNodeKey,
- path = [],
-}) {
- const selfPath = n =>
- isPseudoRoot
- ? []
- : [...path, getNodeKey({ node: n, treeIndex: currentIndex })];
-
- // If the current position is the only possible place to add, add it
- if (
- currentIndex >= minimumTreeIndex - 1 ||
- (isLastChild && !(node.children && node.children.length))
- ) {
- if (typeof node.children === 'function') {
- throw new Error('Cannot add to children defined by a function');
- } else {
- const extraNodeProps = expandParent ? { expanded: true } : {};
- const nextNode = {
- ...node,
-
- ...extraNodeProps,
- children: node.children ? [newNode, ...node.children] : [newNode],
- };
-
- return {
- node: nextNode,
- nextIndex: currentIndex + 2,
- insertedTreeIndex: currentIndex + 1,
- parentPath: selfPath(nextNode),
- parentNode: isPseudoRoot ? null : nextNode,
- };
- }
- }
-
- // If this is the target depth for the insertion,
- // i.e., where the newNode can be added to the current node's children
- if (currentDepth >= targetDepth - 1) {
- // Skip over nodes with no children or hidden children
- if (
- !node.children ||
- typeof node.children === 'function' ||
- (node.expanded !== true && ignoreCollapsed && !isPseudoRoot)
- ) {
- return { node, nextIndex: currentIndex + 1 };
- }
-
- // Scan over the children to see if there's a place among them that fulfills
- // the minimumTreeIndex requirement
- let childIndex = currentIndex + 1;
- let insertedTreeIndex = null;
- let insertIndex = null;
- for (let i = 0; i < node.children.length; i += 1) {
- // If a valid location is found, mark it as the insertion location and
- // break out of the loop
- if (childIndex >= minimumTreeIndex) {
- insertedTreeIndex = childIndex;
- insertIndex = i;
- break;
- }
-
- // Increment the index by the child itself plus the number of descendants it has
- childIndex +=
- 1 + getDescendantCount({ node: node.children[i], ignoreCollapsed });
- }
-
- // If no valid indices to add the node were found
- if (insertIndex === null) {
- // If the last position in this node's children is less than the minimum index
- // and there are more children on the level of this node, return without insertion
- if (childIndex < minimumTreeIndex && !isLastChild) {
- return { node, nextIndex: childIndex };
- }
-
- // Use the last position in the children array to insert the newNode
- insertedTreeIndex = childIndex;
- insertIndex = node.children.length;
- }
-
- // Insert the newNode at the insertIndex
- const nextNode = {
- ...node,
- children: [
- ...node.children.slice(0, insertIndex),
- newNode,
- ...node.children.slice(insertIndex),
- ],
- };
-
- // Return node with successful insert result
- return {
- node: nextNode,
- nextIndex: childIndex,
- insertedTreeIndex,
- parentPath: selfPath(nextNode),
- parentNode: isPseudoRoot ? null : nextNode,
- };
- }
-
- // Skip over nodes with no children or hidden children
- if (
- !node.children ||
- typeof node.children === 'function' ||
- (node.expanded !== true && ignoreCollapsed && !isPseudoRoot)
- ) {
- return { node, nextIndex: currentIndex + 1 };
- }
-
- // Get all descendants
- let insertedTreeIndex = null;
- let pathFragment = null;
- let parentNode = null;
- let childIndex = currentIndex + 1;
- let newChildren = node.children;
- if (typeof newChildren !== 'function') {
- newChildren = newChildren.map((child, i) => {
- if (insertedTreeIndex !== null) {
- return child;
- }
-
- const mapResult = addNodeAtDepthAndIndex({
- targetDepth,
- minimumTreeIndex,
- newNode,
- ignoreCollapsed,
- expandParent,
- isLastChild: isLastChild && i === newChildren.length - 1,
- node: child,
- currentIndex: childIndex,
- currentDepth: currentDepth + 1,
- getNodeKey,
- path: [], // Cannot determine the parent path until the children have been processed
- });
-
- if ('insertedTreeIndex' in mapResult) {
- ({
- insertedTreeIndex,
- parentNode,
- parentPath: pathFragment,
- } = mapResult);
- }
-
- childIndex = mapResult.nextIndex;
-
- return mapResult.node;
- });
- }
-
- const nextNode = { ...node, children: newChildren };
- const result = {
- node: nextNode,
- nextIndex: childIndex,
- };
-
- if (insertedTreeIndex !== null) {
- result.insertedTreeIndex = insertedTreeIndex;
- result.parentPath = [...selfPath(nextNode), ...pathFragment];
- result.parentNode = parentNode;
- }
-
- return result;
-}
-
-/**
- * Insert a node into the tree at the given depth, after the minimum index
- *
- * @param {!Object[]} treeData - Tree data
- * @param {!number} depth - The depth to insert the node at (the first level of the array being depth 0)
- * @param {!number} minimumTreeIndex - The lowest possible treeIndex to insert the node at
- * @param {!Object} newNode - The node to insert into the tree
- * @param {boolean=} ignoreCollapsed - Ignore children of nodes without `expanded` set to `true`
- * @param {boolean=} expandParent - If true, expands the parent of the inserted node
- * @param {!function} getNodeKey - Function to get the key from the nodeData and tree index
- *
- * @return {Object} result
- * @return {Object[]} result.treeData - The tree data with the node added
- * @return {number} result.treeIndex - The tree index at which the node was inserted
- * @return {number[]|string[]} result.path - Array of keys leading to the node location after insertion
- * @return {Object} result.parentNode - The parent node of the inserted node
- */
-export function insertNode({
- treeData,
- depth: targetDepth,
- minimumTreeIndex,
- newNode,
- getNodeKey = () => {},
- ignoreCollapsed = true,
- expandParent = false,
-}) {
- if (!treeData && targetDepth === 0) {
- return {
- treeData: [newNode],
- treeIndex: 0,
- path: [getNodeKey({ node: newNode, treeIndex: 0 })],
- parentNode: null,
- };
- }
-
- const insertResult = addNodeAtDepthAndIndex({
- targetDepth,
- minimumTreeIndex,
- newNode,
- ignoreCollapsed,
- expandParent,
- getNodeKey,
- isPseudoRoot: true,
- isLastChild: true,
- node: { children: treeData },
- currentIndex: -1,
- currentDepth: -1,
- });
-
- if (!('insertedTreeIndex' in insertResult)) {
- throw new Error('No suitable position found to insert.');
- }
-
- const treeIndex = insertResult.insertedTreeIndex;
- return {
- treeData: insertResult.node.children,
- treeIndex,
- path: [
- ...insertResult.parentPath,
- getNodeKey({ node: newNode, treeIndex }),
- ],
- parentNode: insertResult.parentNode,
- };
-}
-
-/**
- * Get tree data flattened.
- *
- * @param {!Object[]} treeData - Tree data
- * @param {!function} getNodeKey - Function to get the key from the nodeData and tree index
- * @param {boolean=} ignoreCollapsed - Ignore children of nodes without `expanded` set to `true`
- *
- * @return {{
- * node: Object,
- * path: []string|[]number,
- * lowerSiblingCounts: []number
- * }}[] nodes - The node array
- */
-export function getFlatDataFromTree({
- treeData,
- getNodeKey,
- ignoreCollapsed = true,
-}) {
- if (!treeData || treeData.length < 1) {
- return [];
- }
-
- const flattened = [];
- walk({
- treeData,
- getNodeKey,
- ignoreCollapsed,
- callback: nodeInfo => {
- flattened.push(nodeInfo);
- },
- });
-
- return flattened;
-}
-
-/**
- * Generate a tree structure from flat data.
- *
- * @param {!Object[]} flatData
- * @param {!function=} getKey - Function to get the key from the nodeData
- * @param {!function=} getParentKey - Function to get the parent key from the nodeData
- * @param {string|number=} rootKey - The value returned by `getParentKey` that corresponds to the root node.
- * For example, if your nodes have id 1-99, you might use rootKey = 0
- *
- * @return {Object[]} treeData - The flat data represented as a tree
- */
-export function getTreeFromFlatData({
- flatData,
- getKey = node => node.id,
- getParentKey = node => node.parentId,
- rootKey = '0',
-}) {
- if (!flatData) {
- return [];
- }
-
- const childrenToParents = {};
- flatData.forEach(child => {
- const parentKey = getParentKey(child);
-
- if (parentKey in childrenToParents) {
- childrenToParents[parentKey].push(child);
- } else {
- childrenToParents[parentKey] = [child];
- }
- });
-
- if (!(rootKey in childrenToParents)) {
- return [];
- }
-
- const trav = parent => {
- const parentKey = getKey(parent);
- if (parentKey in childrenToParents) {
- return {
- ...parent,
- children: childrenToParents[parentKey].map(child => trav(child)),
- };
- }
-
- return { ...parent };
- };
-
- return childrenToParents[rootKey].map(child => trav(child));
-}
-
-/**
- * Check if a node is a descendant of another node.
- *
- * @param {!Object} older - Potential ancestor of younger node
- * @param {!Object} younger - Potential descendant of older node
- *
- * @return {boolean}
- */
-export function isDescendant(older, younger) {
- return (
- !!older.children &&
- typeof older.children !== 'function' &&
- older.children.some(
- child => child === younger || isDescendant(child, younger)
- )
- );
-}
-
-/**
- * Get the maximum depth of the children (the depth of the root node is 0).
- *
- * @param {!Object} node - Node in the tree
- * @param {?number} depth - The current depth
- *
- * @return {number} maxDepth - The deepest depth in the tree
- */
-export function getDepth(node, depth = 0) {
- if (!node.children) {
- return depth;
- }
-
- if (typeof node.children === 'function') {
- return depth + 1;
- }
-
- return node.children.reduce(
- (deepest, child) => Math.max(deepest, getDepth(child, depth + 1)),
- depth
- );
-}
-
-/**
- * Find nodes matching a search query in the tree,
- *
- * @param {!function} getNodeKey - Function to get the key from the nodeData and tree index
- * @param {!Object[]} treeData - Tree data
- * @param {?string|number} searchQuery - Function returning a boolean to indicate whether the node is a match or not
- * @param {!function} searchMethod - Function returning a boolean to indicate whether the node is a match or not
- * @param {?number} searchFocusOffset - The offset of the match to focus on
- * (e.g., 0 focuses on the first match, 1 on the second)
- * @param {boolean=} expandAllMatchPaths - If true, expands the paths to any matched node
- * @param {boolean=} expandFocusMatchPaths - If true, expands the path to the focused node
- *
- * @return {Object[]} matches - An array of objects containing the matching `node`s, their `path`s and `treeIndex`s
- * @return {Object[]} treeData - The original tree data with all relevant nodes expanded.
- * If expandAllMatchPaths and expandFocusMatchPaths are both false,
- * it will be the same as the original tree data.
- */
-export function find({
- getNodeKey,
- treeData,
- searchQuery,
- searchMethod,
- searchFocusOffset,
- expandAllMatchPaths = false,
- expandFocusMatchPaths = true,
-}) {
- let matchCount = 0;
- const trav = ({ isPseudoRoot = false, node, currentIndex, path = [] }) => {
- let matches = [];
- let isSelfMatch = false;
- let hasFocusMatch = false;
- // The pseudo-root is not considered in the path
- const selfPath = isPseudoRoot
- ? []
- : [...path, getNodeKey({ node, treeIndex: currentIndex })];
- const extraInfo = isPseudoRoot
- ? null
- : {
- path: selfPath,
- treeIndex: currentIndex,
- };
-
- // Nodes with with children that aren't lazy
- const hasChildren =
- node.children &&
- typeof node.children !== 'function' &&
- node.children.length > 0;
-
- // Examine the current node to see if it is a match
- if (!isPseudoRoot && searchMethod({ ...extraInfo, node, searchQuery })) {
- if (matchCount === searchFocusOffset) {
- hasFocusMatch = true;
- }
-
- // Keep track of the number of matching nodes, so we know when the searchFocusOffset
- // is reached
- matchCount += 1;
-
- // We cannot add this node to the matches right away, as it may be changed
- // during the search of the descendants. The entire node is used in
- // comparisons between nodes inside the `matches` and `treeData` results
- // of this method (`find`)
- isSelfMatch = true;
- }
-
- let childIndex = currentIndex;
- const newNode = { ...node };
- if (hasChildren) {
- // Get all descendants
- newNode.children = newNode.children.map(child => {
- const mapResult = trav({
- node: child,
- currentIndex: childIndex + 1,
- path: selfPath,
- });
-
- // Ignore hidden nodes by only advancing the index counter to the returned treeIndex
- // if the child is expanded.
- //
- // The child could have been expanded from the start,
- // or expanded due to a matching node being found in its descendants
- if (mapResult.node.expanded) {
- childIndex = mapResult.treeIndex;
- } else {
- childIndex += 1;
- }
-
- if (mapResult.matches.length > 0 || mapResult.hasFocusMatch) {
- matches = [...matches, ...mapResult.matches];
- if (mapResult.hasFocusMatch) {
- hasFocusMatch = true;
- }
-
- // Expand the current node if it has descendants matching the search
- // and the settings are set to do so.
- if (
- (expandAllMatchPaths && mapResult.matches.length > 0) ||
- ((expandAllMatchPaths || expandFocusMatchPaths) &&
- mapResult.hasFocusMatch)
- ) {
- newNode.expanded = true;
- }
- }
-
- return mapResult.node;
- });
- }
-
- // Cannot assign a treeIndex to hidden nodes
- if (!isPseudoRoot && !newNode.expanded) {
- matches = matches.map(match => ({
- ...match,
- treeIndex: null,
- }));
- }
-
- // Add this node to the matches if it fits the search criteria.
- // This is performed at the last minute so newNode can be sent in its final form.
- if (isSelfMatch) {
- matches = [{ ...extraInfo, node: newNode }, ...matches];
- }
-
- return {
- node: matches.length > 0 ? newNode : node,
- matches,
- hasFocusMatch,
- treeIndex: childIndex,
- };
- };
-
- const result = trav({
- node: { children: treeData },
- isPseudoRoot: true,
- currentIndex: -1,
- });
-
- return {
- matches: result.matches,
- treeData: result.node.children,
- };
-}
diff --git a/src/utils/tree-data-utils.spec.ts b/src/utils/tree-data-utils.spec.ts
new file mode 100644
index 00000000..068ed0e7
--- /dev/null
+++ b/src/utils/tree-data-utils.spec.ts
@@ -0,0 +1,2040 @@
+import {
+ getVisibleNodeCount,
+ getVisibleNodeInfoAtIndex,
+ changeNodeAtPath,
+ addNodeUnderParent,
+ getTreeFromFlatData,
+ getNodeAtPath,
+ getFlatDataFromTree,
+ walk,
+ map,
+ insertNode,
+ isDescendant,
+ getDepth,
+ getDescendantCount,
+ find,
+ toggleExpandedForAll,
+} from './tree-data-utils';
+import { TreeNode, TreeData } from '../types';
+
+type OnlyChildren = {
+ children?: OnlyChildren[] | Function;
+ expanded?: boolean;
+ nodeId?: string;
+};
+function fill(input: OnlyChildren): TreeNode;
+function fill(input: OnlyChildren[]): TreeNode[];
+function fill(input: OnlyChildren | OnlyChildren[]): TreeNode | TreeNode[] {
+ if (Array.isArray(input)) {
+ return input.map(a => fill(a));
+ }
+
+ let { children, ...otherInput } = input;
+ if (input.children) {
+ if (typeof input.children !== 'function') {
+ children = fill(input.children);
+ }
+ }
+
+ return children
+ ? { nodeId: 'd', ...otherInput, children: children as TreeNode['children'] }
+ : { nodeId: 'd', ...otherInput };
+}
+
+describe('getVisibleNodeCount', () => {
+ it('should handle flat data', () => {
+ expect(getVisibleNodeCount(fill([{}, {}]))).toEqual(2);
+ });
+
+ it('should handle hidden nested data', () => {
+ expect(
+ getVisibleNodeCount(
+ fill([
+ {
+ children: [
+ {
+ children: [{}, {}],
+ },
+ {
+ children: [{}],
+ },
+ ],
+ },
+ {},
+ ])
+ )
+ ).toEqual(2);
+ });
+
+ it('should handle functions', () => {
+ expect(
+ getVisibleNodeCount(
+ fill([
+ {
+ expanded: true,
+ children: [
+ {
+ expanded: true,
+ children: [
+ {
+ expanded: true,
+ children: () => ({ nodeId: '1' }),
+ },
+ {},
+ ],
+ },
+ {
+ children: [{}],
+ },
+ ],
+ },
+ {},
+ ])
+ )
+ ).toEqual(6);
+ });
+
+ it('should handle partially expanded nested data', () => {
+ expect(
+ getVisibleNodeCount(
+ fill([
+ {
+ expanded: true,
+ children: [
+ {
+ expanded: true,
+ children: [{}, {}],
+ },
+ {
+ children: [{}],
+ },
+ ],
+ },
+ {},
+ ])
+ )
+ ).toEqual(6);
+ });
+
+ it('should handle fully expanded nested data', () => {
+ expect(
+ getVisibleNodeCount(
+ fill([
+ {
+ expanded: true,
+ children: [
+ {
+ expanded: true,
+ children: [{}, {}],
+ },
+ {
+ expanded: true,
+ children: [{}],
+ },
+ ],
+ },
+ {},
+ ])
+ )
+ ).toEqual(7);
+ });
+});
+
+describe('getVisibleNodeInfoAtIndex', () => {
+ it('should handle empty data', () => {
+ expect(getVisibleNodeInfoAtIndex([], 1)).toEqual(null);
+ });
+
+ it('should handle flat data', () => {
+ expect(
+ getVisibleNodeInfoAtIndex(fill([{ nodeId: '0' }]), 0).node.nodeId
+ ).toEqual('0');
+ expect(
+ getVisibleNodeInfoAtIndex(fill([{ nodeId: '0' }, { nodeId: '1' }]), 1)
+ .node.nodeId
+ ).toEqual('1');
+ });
+
+ it('should handle hidden nested data', () => {
+ const result = getVisibleNodeInfoAtIndex(
+ fill([
+ {
+ nodeId: '0',
+ children: [
+ {
+ nodeId: '1',
+ children: [{ nodeId: '2' }, { nodeId: '3' }],
+ },
+ {
+ nodeId: '4',
+ children: [{ nodeId: '5' }],
+ },
+ ],
+ },
+ { nodeId: '6' },
+ ]),
+ 1
+ );
+
+ expect(result.node.nodeId).toEqual('6');
+ expect(result.path).toEqual(['6']);
+ expect(result.lowerSiblingCounts).toEqual([0]);
+ });
+
+ it('should handle partially expanded nested data', () => {
+ const result = getVisibleNodeInfoAtIndex(
+ [
+ {
+ expanded: true,
+ nodeId: '0',
+ children: [
+ {
+ nodeId: '1',
+ children: [{ nodeId: '2' }, { nodeId: '3' }],
+ },
+ {
+ expanded: true,
+ nodeId: '4',
+ children: [{ nodeId: '5' }],
+ },
+ ],
+ },
+ { nodeId: '6' },
+ ],
+ 3
+ );
+
+ expect(result.node.nodeId).toEqual('5');
+ expect(result.path).toEqual(['0', '4', '5']);
+ expect(result.lowerSiblingCounts).toEqual([1, 0, 0]);
+ });
+
+ it('should handle fully expanded nested data', () => {
+ const result = getVisibleNodeInfoAtIndex(
+ [
+ {
+ expanded: true,
+ nodeId: '0',
+ children: [
+ {
+ expanded: true,
+ nodeId: '1',
+ children: [{ nodeId: '2' }, { nodeId: '3' }],
+ },
+ {
+ expanded: true,
+ nodeId: '4',
+ children: [{ nodeId: '5' }],
+ },
+ ],
+ },
+ { nodeId: '6' },
+ ],
+ 5
+ );
+
+ expect(result.node.nodeId).toEqual('5');
+ expect(result.path).toEqual(['0', '4', '5']);
+ expect(result.lowerSiblingCounts).toEqual([1, 0, 0]);
+ });
+
+ it('should handle an index that is larger than the data', () => {
+ expect(
+ getVisibleNodeInfoAtIndex(
+ [
+ {
+ expanded: true,
+ nodeId: '0',
+ children: [
+ {
+ expanded: true,
+ nodeId: '1',
+ children: [{ nodeId: '2' }, { nodeId: '3' }],
+ },
+ {
+ expanded: true,
+ nodeId: '4',
+ children: [{ nodeId: '5' }],
+ },
+ ],
+ },
+ { nodeId: '6' },
+ ],
+ 7
+ )
+ ).toEqual(null);
+ });
+});
+
+describe('getNodeAtPath', () => {
+ it('should handle empty data', () => {
+ expect(getNodeAtPath([], ['1'])).toEqual(null);
+ });
+
+ it('should handle flat data', () => {
+ expect(getNodeAtPath([{ nodeId: '0' }], ['0']).node.nodeId).toEqual('0');
+ expect(
+ getNodeAtPath([{ nodeId: '0' }, { nodeId: '1' }], ['1']).node.nodeId
+ ).toEqual('1');
+ });
+
+ it('should handle partially expanded nested data', () => {
+ const result = getNodeAtPath(
+ [
+ {
+ expanded: true,
+ nodeId: '0',
+ children: [
+ {
+ nodeId: '1',
+ children: [{ nodeId: '2' }, { nodeId: '3' }],
+ },
+ {
+ expanded: true,
+ nodeId: '4',
+ children: [{ nodeId: '5' }],
+ },
+ ],
+ },
+ { nodeId: '6' },
+ ],
+ ['0', '4', '5']
+ );
+
+ expect(result.node.nodeId).toEqual('5');
+ });
+
+ it('should handle fully expanded nested data', () => {
+ const result = getNodeAtPath(
+ [
+ {
+ expanded: true,
+ nodeId: '0',
+ children: [
+ {
+ expanded: true,
+ nodeId: '1',
+ children: [{ nodeId: '2' }, { nodeId: '3' }],
+ },
+ {
+ expanded: true,
+ nodeId: '4',
+ children: [{ nodeId: '5' }],
+ },
+ ],
+ },
+ { nodeId: '6' },
+ ],
+ ['0', '4', '5']
+ );
+
+ expect(result.node.nodeId).toEqual('5');
+ });
+
+ it('should handle a nodeId not in the data', () => {
+ expect(
+ getNodeAtPath(
+ [
+ {
+ expanded: true,
+ nodeId: '0',
+ children: [
+ {
+ expanded: true,
+ nodeId: '1',
+ children: [{ nodeId: '2' }, { nodeId: '3' }],
+ },
+ {
+ expanded: true,
+ nodeId: '4',
+ children: [{ nodeId: '5' }],
+ },
+ ],
+ },
+ { nodeId: '6' },
+ ],
+ ['7']
+ )
+ ).toEqual(null);
+ });
+});
+
+describe('getFlatDataFromTree', () => {
+ it('should handle empty data', () => {
+ expect(getFlatDataFromTree([])).toEqual([]);
+ });
+
+ it('should handle flat data', () => {
+ expect(getFlatDataFromTree([{ nodeId: '0' }], true)).toEqual([
+ {
+ node: { nodeId: '0' },
+ parentNode: null,
+ path: ['0'],
+ lowerSiblingCounts: [0],
+ treeIndex: 0,
+ },
+ ]);
+
+ expect(
+ getFlatDataFromTree([{ nodeId: '0' }, { nodeId: '1' }], true)
+ ).toEqual([
+ {
+ node: { nodeId: '0' },
+ parentNode: null,
+ path: ['0'],
+ lowerSiblingCounts: [1],
+ treeIndex: 0,
+ },
+ {
+ node: { nodeId: '1' },
+ parentNode: null,
+ path: ['1'],
+ lowerSiblingCounts: [0],
+ treeIndex: 1,
+ },
+ ]);
+ });
+
+ it('should handle hidden nested data', () => {
+ const treeData = [
+ {
+ nodeId: '0',
+ children: [
+ {
+ nodeId: '1',
+ children: [{ nodeId: '2' }, { nodeId: '3' }],
+ },
+ {
+ nodeId: '4',
+ children: [{ nodeId: '5' }],
+ },
+ ],
+ },
+ { nodeId: '6' },
+ ];
+
+ expect(getFlatDataFromTree(treeData, true)).toEqual([
+ {
+ node: treeData[0],
+ parentNode: null,
+ path: ['0'],
+ lowerSiblingCounts: [1],
+ treeIndex: 0,
+ },
+ {
+ node: treeData[1],
+ parentNode: null,
+ path: ['6'],
+ lowerSiblingCounts: [0],
+ treeIndex: 1,
+ },
+ ]);
+ });
+
+ it('should handle partially expanded nested data', () => {
+ const treeData = [
+ {
+ expanded: true,
+ nodeId: '0',
+ children: [
+ {
+ nodeId: '1',
+ children: [{ nodeId: '2' }, { nodeId: '3' }],
+ },
+ {
+ expanded: true,
+ nodeId: '4',
+ children: [{ nodeId: '5' }],
+ },
+ ],
+ },
+ { nodeId: '6' },
+ ];
+
+ expect(getFlatDataFromTree(treeData, true)).toEqual([
+ {
+ node: treeData[0],
+ parentNode: null,
+ path: ['0'],
+ lowerSiblingCounts: [1],
+ treeIndex: 0,
+ },
+ {
+ node: treeData[0].children[0],
+ parentNode: treeData[0],
+ path: ['0', '1'],
+ lowerSiblingCounts: [1, 1],
+ treeIndex: 1,
+ },
+ {
+ node: treeData[0].children[1],
+ parentNode: treeData[0],
+ path: ['0', '4'],
+ lowerSiblingCounts: [1, 0],
+ treeIndex: 2,
+ },
+ {
+ node: treeData[0].children[1].children[0],
+ parentNode: treeData[0].children[1],
+ path: ['0', '4', '5'],
+ lowerSiblingCounts: [1, 0, 0],
+ treeIndex: 3,
+ },
+ {
+ node: treeData[1],
+ parentNode: null,
+ path: ['6'],
+ lowerSiblingCounts: [0],
+ treeIndex: 4,
+ },
+ ]);
+ });
+
+ it('should handle fully expanded nested data', () => {
+ const treeData = [
+ {
+ expanded: true,
+ nodeId: '0',
+ children: [
+ {
+ expanded: true,
+ nodeId: '1',
+ children: [{ nodeId: '2' }, { nodeId: '3' }],
+ },
+ {
+ expanded: true,
+ nodeId: '4',
+ children: [{ nodeId: '5' }],
+ },
+ ],
+ },
+ { nodeId: '6' },
+ ];
+
+ expect(getFlatDataFromTree(treeData, true)).toEqual([
+ {
+ node: treeData[0],
+ parentNode: null,
+ path: ['0'],
+ lowerSiblingCounts: [1],
+ treeIndex: 0,
+ },
+ {
+ node: treeData[0].children[0],
+ parentNode: treeData[0],
+ path: ['0', '1'],
+ lowerSiblingCounts: [1, 1],
+ treeIndex: 1,
+ },
+ {
+ node: treeData[0].children[0].children[0],
+ parentNode: treeData[0].children[0],
+ path: ['0', '1', '2'],
+ lowerSiblingCounts: [1, 1, 1],
+ treeIndex: 2,
+ },
+ {
+ node: treeData[0].children[0].children[1],
+ parentNode: treeData[0].children[0],
+ path: ['0', '1', '3'],
+ lowerSiblingCounts: [1, 1, 0],
+ treeIndex: 3,
+ },
+ {
+ node: treeData[0].children[1],
+ parentNode: treeData[0],
+ path: ['0', '4'],
+ lowerSiblingCounts: [1, 0],
+ treeIndex: 4,
+ },
+ {
+ node: treeData[0].children[1].children[0],
+ parentNode: treeData[0].children[1],
+ path: ['0', '4', '5'],
+ lowerSiblingCounts: [1, 0, 0],
+ treeIndex: 5,
+ },
+ {
+ node: treeData[1],
+ parentNode: null,
+ path: ['6'],
+ lowerSiblingCounts: [0],
+ treeIndex: 6,
+ },
+ ]);
+ });
+});
+
+describe('changeNodeAtPath', () => {
+ it('should handle empty data', () => {
+ const noChildrenError = new Error(
+ 'Path referenced children of node with no children.'
+ );
+ const noNodeError = new Error('No node found at the given path.');
+ expect(() => changeNodeAtPath([], ['1'], fill({}))).toThrow(noNodeError);
+ });
+
+ it('should handle flat data', () => {
+ expect(
+ changeNodeAtPath([{ nodeId: '0' }], ['0'], { nodeId: '1' })
+ ).toEqual([{ nodeId: '1' }]);
+
+ expect(
+ changeNodeAtPath([{ nodeId: '0' }, { nodeId: 'a' }], ['a'], {
+ nodeId: '1',
+ })
+ ).toEqual([{ nodeId: '0' }, { nodeId: '1' }]);
+ });
+
+ it('should handle nested data', () => {
+ const result = changeNodeAtPath(
+ [
+ {
+ expanded: true,
+ nodeId: '0',
+ children: [
+ {
+ nodeId: 'b',
+ children: [{ nodeId: '2' }, { nodeId: '3' }, { nodeId: 'f' }],
+ },
+ {
+ expanded: true,
+ nodeId: 'r',
+ children: [{ nodeId: '5' }, { nodeId: '8' }, { nodeId: '7' }],
+ },
+ ],
+ },
+ { nodeId: '6' },
+ ],
+ ['0', 'r', '7'],
+ { nodeId: 'pancake' }
+ );
+
+ expect(result[0].children[1].children[2].nodeId).toEqual('pancake');
+ });
+
+ it('should handle adding children', () => {
+ const result = changeNodeAtPath(
+ [
+ {
+ expanded: true,
+ nodeId: '0',
+ children: [
+ {
+ nodeId: 'b',
+ children: [{ nodeId: '2' }, { nodeId: '3' }, { nodeId: 'f' }],
+ },
+ {
+ expanded: true,
+ nodeId: 'r',
+ children: [{ nodeId: '5' }, { nodeId: '8' }, { nodeId: '7' }],
+ },
+ ],
+ },
+ { nodeId: '6' },
+ ],
+ ['0', 'r', '7'],
+ ({ node }) => ({
+ ...node,
+ children: [{ nodeId: 'pancake' }],
+ })
+ );
+
+ expect(result[0].children[1].children[2].children[0].nodeId).toEqual(
+ 'pancake'
+ );
+ });
+
+ it('should handle adding children to the root', () => {
+ expect(
+ changeNodeAtPath([], [], ({ node }) => ({
+ ...node,
+ children: [...(node.children as TreeNode[]), { nodeId: '1' }],
+ }))
+ ).toEqual([{ nodeId: '1' }]);
+
+ expect(
+ changeNodeAtPath([{ nodeId: '0' }], [], ({ node }) => ({
+ ...node,
+ children: [...(node.children as TreeNode[]), { nodeId: '1' }],
+ }))
+ ).toEqual([{ nodeId: '0' }, { nodeId: '1' }]);
+ });
+
+ it('should delete data when falsey node passed', () => {
+ const result = changeNodeAtPath(
+ [
+ {
+ expanded: true,
+ nodeId: 'b',
+ children: [{ nodeId: 'f' }],
+ },
+ {
+ expanded: true,
+ nodeId: 'r',
+ children: [{ nodeId: '7' }],
+ },
+ { nodeId: '6' },
+ ],
+ ['r', '7'],
+ null
+ );
+
+ expect(result[1].children.length).toEqual(0);
+ });
+
+ it('should delete data on the top level', () => {
+ const treeData = [
+ {
+ expanded: true,
+ nodeId: 'b',
+ children: [{ nodeId: 'f' }],
+ },
+ {
+ expanded: true,
+ nodeId: 'r',
+ children: [{ nodeId: '7' }],
+ },
+ { nodeId: '6' },
+ ];
+ const result = changeNodeAtPath(treeData, ['r'], null);
+
+ expect(result).toEqual([treeData[0], treeData[2]]);
+ });
+
+ it('should handle a path that is too long', () => {
+ const treeData = [
+ {
+ expanded: true,
+ nodeId: '0',
+ children: [
+ {
+ expanded: true,
+ nodeId: '1',
+ children: [{ nodeId: '2' }, { nodeId: '3' }],
+ },
+ ],
+ },
+ ];
+
+ expect(() =>
+ changeNodeAtPath(treeData, ['0', '1', '2', '4'], { nodeId: 'aa' })
+ ).toThrow(new Error('Path referenced children of node with no children.'));
+ });
+
+ it('should handle a path that does not exist', () => {
+ const treeData = [
+ {
+ expanded: true,
+ nodeId: '0',
+ children: [
+ {
+ expanded: true,
+ nodeId: '1',
+ children: [{ nodeId: '2' }, { nodeId: '3' }],
+ },
+ ],
+ },
+ ];
+
+ expect(() =>
+ changeNodeAtPath(treeData, ['0', '2'], { nodeId: 'aa' })
+ ).toThrowError('No node found at the given path.');
+ });
+});
+
+describe('addNodeUnderParent', () => {
+ it('should handle empty data', () => {
+ const node = fill({});
+ expect(addNodeUnderParent([], node)).toEqual({
+ treeData: [node],
+ treeIndex: 0,
+ });
+ });
+
+ it('should handle a parentPath that does not exist', () => {
+ const treeData = [
+ {
+ expanded: true,
+ nodeId: '0',
+ children: [
+ {
+ expanded: true,
+ nodeId: '1',
+ children: [{ nodeId: '2' }, { nodeId: '3' }],
+ },
+ ],
+ },
+ ];
+
+ expect(() =>
+ addNodeUnderParent(treeData, { nodeId: '1' }, 'fake')
+ ).toThrowError('No node found with the given nodeId.');
+ });
+
+ it('should handle flat data', () => {
+ // Older sibling of only node
+ expect(
+ addNodeUnderParent([{ nodeId: '0' }], { nodeId: '1' }, null)
+ ).toEqual({ treeData: [{ nodeId: '0' }, { nodeId: '1' }], treeIndex: 1 });
+
+ // Child of only node
+ expect(addNodeUnderParent([{ nodeId: '0' }], { nodeId: '1' }, '0')).toEqual(
+ {
+ treeData: [{ nodeId: '0', children: [{ nodeId: '1' }] }],
+ treeIndex: 1,
+ }
+ );
+
+ expect(
+ addNodeUnderParent(
+ [{ nodeId: '0' }, { nodeId: 'a' }],
+ { nodeId: '1' },
+ 'a'
+ )
+ ).toEqual({
+ treeData: [{ nodeId: '0' }, { nodeId: 'a', children: [{ nodeId: '1' }] }],
+ treeIndex: 2,
+ });
+ });
+
+ // Tree looks like this
+ // /\
+ // 0 6
+ // / \
+ // 1 5
+ // / \
+ // 2 3
+ // \
+ // 4
+ const nestedParams = {
+ treeData: [
+ {
+ expanded: true,
+ nodeId: '0',
+ children: [
+ {
+ expanded: true,
+ nodeId: '1',
+ children: [
+ { nodeId: '2' },
+ {
+ expanded: false,
+ nodeId: '3',
+ children: [{ nodeId: '4' }],
+ },
+ ],
+ },
+ { nodeId: '5' },
+ ],
+ },
+ { nodeId: '6' },
+ ],
+ newNode: { nodeId: 'new' },
+ };
+
+ it('should handle nested data #1', () => {
+ const result = addNodeUnderParent(
+ nestedParams.treeData,
+ nestedParams.newNode,
+ '0'
+ );
+
+ expect(result.treeData[0].children[2]).toEqual(nestedParams.newNode);
+ expect(result.treeIndex).toEqual(5);
+ });
+
+ it('should handle nested data #2', () => {
+ const result = addNodeUnderParent(
+ nestedParams.treeData,
+ nestedParams.newNode,
+ '1'
+ );
+
+ expect(result.treeData[0].children[0].children[2]).toEqual(
+ nestedParams.newNode
+ );
+ expect(result.treeIndex).toEqual(4);
+ });
+
+ it('should handle nested data #3', () => {
+ const result = addNodeUnderParent(
+ nestedParams.treeData,
+ nestedParams.newNode,
+ '3'
+ );
+
+ expect(result.treeData[0].children[0].children[1].children[1]).toEqual(
+ nestedParams.newNode
+ );
+ expect(result.treeIndex).toEqual(5);
+ });
+
+ it('should handle nested data #1 (using tree index as key)', () => {
+ const result = addNodeUnderParent(
+ nestedParams.treeData,
+ nestedParams.newNode,
+ '0'
+ );
+
+ expect(result.treeData[0].children[2]).toEqual(nestedParams.newNode);
+ expect(result.treeIndex).toEqual(5);
+ });
+
+ it('should handle nested data #2 (using tree index as key)', () => {
+ const result = addNodeUnderParent(
+ nestedParams.treeData,
+ nestedParams.newNode,
+ '1'
+ );
+
+ expect(result.treeData[0].children[0].children[2]).toEqual(
+ nestedParams.newNode
+ );
+ expect(result.treeIndex).toEqual(4);
+ });
+
+ it('should handle nested data #3 (using tree index as key)', () => {
+ const result = addNodeUnderParent(
+ nestedParams.treeData,
+ nestedParams.newNode,
+ '3'
+ );
+
+ expect(result.treeData[0].children[0].children[1].children[1]).toEqual(
+ nestedParams.newNode
+ );
+ expect(result.treeIndex).toEqual(5);
+ });
+
+ it('should add new node as last child by default', () => {
+ const result = addNodeUnderParent(
+ nestedParams.treeData,
+ nestedParams.newNode,
+ '0'
+ );
+
+ const [existingChild0, existingChild1, expectedNewNode] = result.treeData[0]
+ .children as TreeNode[];
+
+ expect(expectedNewNode).toEqual(nestedParams.newNode);
+ expect([existingChild0, existingChild1]).toEqual(
+ nestedParams.treeData[0].children
+ );
+ });
+
+ it('should add new node as first child if addAsFirstChild is true', () => {
+ const result = addNodeUnderParent(
+ nestedParams.treeData,
+ nestedParams.newNode,
+ '0',
+ true
+ );
+
+ const [expectedNewNode, ...previousChildren] = result.treeData[0]
+ .children as TreeNode[];
+
+ expect(expectedNewNode).toEqual(nestedParams.newNode);
+ expect(previousChildren).toEqual(nestedParams.treeData[0].children);
+ });
+
+ it('should add new node as first child under root if addAsFirstChild is true', () => {
+ const result = addNodeUnderParent(
+ nestedParams.treeData,
+ nestedParams.newNode,
+ null,
+ true
+ );
+
+ const [expectedNewNode, ...previousTreeData] = result.treeData;
+
+ expect(expectedNewNode).toEqual(nestedParams.newNode);
+ expect(previousTreeData).toEqual(nestedParams.treeData);
+ });
+});
+
+describe('insertNode', () => {
+ it('should handle empty data', () => {
+ const node = { nodeId: '0' };
+ expect(insertNode([], node, 0, 0)).toEqual({
+ parentNode: null,
+ treeData: [node],
+ treeIndex: 0,
+ path: ['0'],
+ });
+ });
+
+ it('should handle a depth that is deeper than any branch in the tree', () => {
+ const treeData = [
+ {
+ expanded: true,
+ nodeId: '0',
+ children: [
+ {
+ expanded: true,
+ nodeId: '1',
+ children: [{ nodeId: '2' }, { nodeId: '3' }],
+ },
+ ],
+ },
+ ];
+
+ expect(insertNode(treeData, { nodeId: 'new' }, 4, 0).treeData[0]).toEqual({
+ nodeId: 'new',
+ });
+ });
+
+ it('should handle a minimumTreeIndex that is too big', () => {
+ const treeData = [
+ {
+ expanded: true,
+ nodeId: '0',
+ children: [
+ {
+ expanded: true,
+ nodeId: '1',
+ children: [{ nodeId: '2' }, { nodeId: '3' }],
+ },
+ ],
+ },
+ { nodeId: '4' },
+ ];
+
+ let insertResult = insertNode(treeData, { nodeId: 'new' }, 0, 15);
+ expect(insertResult.treeData[2]).toEqual({ nodeId: 'new' });
+ expect(insertResult.treeIndex).toEqual(5);
+ expect(insertResult.path).toEqual(['new']);
+
+ insertResult = insertNode(treeData, { nodeId: 'new' }, 2, 15);
+
+ expect(insertResult.treeData[1].children[0]).toEqual({ nodeId: 'new' });
+ expect(insertResult.treeIndex).toEqual(5);
+ expect(insertResult.path).toEqual(['4', 'new']);
+ });
+
+ it('should handle flat data (before)', () => {
+ expect(insertNode([{ nodeId: '0' }], { nodeId: '1' }, 0, 0)).toEqual({
+ parentNode: null,
+ treeData: [{ nodeId: '1' }, { nodeId: '0' }],
+ treeIndex: 0,
+ path: ['1'],
+ });
+ });
+
+ it('should handle flat data (after)', () => {
+ expect(insertNode([{ nodeId: '0' }], { nodeId: '1' }, 0, 1)).toEqual({
+ parentNode: null,
+ treeData: [{ nodeId: '0' }, { nodeId: '1' }],
+ treeIndex: 1,
+ path: ['1'],
+ });
+ });
+
+ it('should handle flat data (child)', () => {
+ expect(insertNode([{ nodeId: '0' }], { nodeId: '1' }, 1, 1)).toEqual({
+ parentNode: { nodeId: '0', children: [{ nodeId: '1' }] },
+ treeData: [{ nodeId: '0', children: [{ nodeId: '1' }] }],
+ treeIndex: 1,
+ path: ['0', '1'],
+ });
+ });
+
+ // Tree looks like this
+ // /\
+ // 0 6
+ // / \
+ // 1 5
+ // / \
+ // 2 3
+ // \
+ // 4
+ const nestedParams = {
+ treeData: [
+ // Depth 0
+ {
+ expanded: true,
+ nodeId: '0',
+ children: [
+ // Depth 1
+ {
+ expanded: true,
+ nodeId: '1',
+ children: [
+ // Depth 2
+ { nodeId: '2' },
+ {
+ expanded: false,
+ nodeId: '3',
+ children: [
+ // Depth 3
+ { nodeId: '4' },
+ ],
+ },
+ { nodeId: '5' },
+ ],
+ },
+ { nodeId: '6' },
+ ],
+ },
+ { nodeId: '7' },
+ ],
+ newNode: { nodeId: 'new' },
+ };
+
+ it('should handle nested data #1', () => {
+ const result = insertNode(
+ nestedParams.treeData,
+ nestedParams.newNode,
+ 1,
+ 4
+ );
+
+ expect(result.treeData[0].children[1]).toEqual(nestedParams.newNode);
+ expect(result.treeIndex).toEqual(5);
+ expect(result.path).toEqual(['0', 'new']);
+ });
+
+ it('should handle nested data #2', () => {
+ let result = insertNode(
+ nestedParams.treeData,
+ nestedParams.newNode,
+ 2,
+ 5,
+ true
+ );
+
+ expect(result.treeData[0].children[0].children[3]).toEqual(
+ nestedParams.newNode
+ );
+ expect(result.treeIndex).toEqual(5);
+ expect(result.path).toEqual(['0', '1', 'new']);
+
+ result = insertNode(
+ nestedParams.treeData,
+ nestedParams.newNode,
+ 2,
+ 5,
+ false
+ );
+
+ expect(result.treeData[0].children[0].children[2]).toEqual(
+ nestedParams.newNode
+ );
+ expect(result.treeIndex).toEqual(5);
+ expect(result.path).toEqual(['0', '1', 'new']);
+ });
+
+ it('should handle nested data #3', () => {
+ const result = insertNode(
+ nestedParams.treeData,
+ nestedParams.newNode,
+ 3,
+ 3
+ );
+
+ expect(result.treeData[0].children[0].children[0].children[0]).toEqual(
+ nestedParams.newNode
+ );
+ expect(result.treeIndex).toEqual(3);
+ expect(result.path).toEqual(['0', '1', '2', 'new']);
+ });
+
+ it('should handle nested data #4', () => {
+ expect(
+ insertNode(
+ [
+ { nodeId: '0', expanded: true, children: [{ nodeId: '1' }] },
+ { nodeId: '2' },
+ ],
+ { nodeId: 'new' },
+ 1,
+ 3
+ )
+ ).toEqual({
+ parentNode: { nodeId: '2', children: [{ nodeId: 'new' }] },
+ treeData: [
+ { nodeId: '0', expanded: true, children: [{ nodeId: '1' }] },
+ { nodeId: '2', children: [{ nodeId: 'new' }] },
+ ],
+ treeIndex: 3,
+ path: ['2', 'new'],
+ });
+ });
+
+ it('should work with a preceding node with children #1', () => {
+ expect(
+ insertNode(
+ [
+ { nodeId: '0', children: [{ nodeId: '1' }] },
+ {
+ nodeId: '2',
+ expanded: true,
+ children: [{ nodeId: '3' }, { nodeId: '4' }],
+ },
+ ],
+ { nodeId: 'new' },
+ 1,
+ 3
+ )
+ ).toEqual({
+ parentNode: {
+ nodeId: '2',
+ expanded: true,
+ children: [{ nodeId: '3' }, { nodeId: 'new' }, { nodeId: '4' }],
+ },
+ treeData: [
+ { nodeId: '0', children: [{ nodeId: '1' }] },
+ {
+ nodeId: '2',
+ expanded: true,
+ children: [{ nodeId: '3' }, { nodeId: 'new' }, { nodeId: '4' }],
+ },
+ ],
+ treeIndex: 3,
+ path: ['2', 'new'],
+ });
+ });
+
+ it('should work with a preceding node with children #2', () => {
+ expect(
+ insertNode(
+ [
+ { nodeId: '0', children: [{ nodeId: '1' }] },
+ {
+ nodeId: '2',
+ expanded: true,
+ children: [{ nodeId: '3' }, { nodeId: '4' }],
+ },
+ ],
+ { nodeId: 'new' },
+ 2,
+ 4
+ )
+ ).toEqual({
+ parentNode: { nodeId: '4', children: [{ nodeId: 'new' }] },
+ treeData: [
+ { nodeId: '0', children: [{ nodeId: '1' }] },
+ {
+ nodeId: '2',
+ expanded: true,
+ children: [
+ { nodeId: '3' },
+ { nodeId: '4', children: [{ nodeId: 'new' }] },
+ ],
+ },
+ ],
+ treeIndex: 4,
+ path: ['2', '4', 'new'],
+ });
+ });
+
+ it('should work with a preceding node with children #3', () => {
+ expect(
+ insertNode(
+ [
+ {
+ nodeId: '0',
+ children: [
+ { nodeId: '01' },
+ { nodeId: '02' },
+ { nodeId: '03' },
+ { nodeId: '04' },
+ ],
+ },
+ {
+ nodeId: '1',
+ expanded: true,
+ children: [{ nodeId: '2' }, { nodeId: '3' }],
+ },
+ ],
+ { nodeId: 'new' },
+ 2,
+ 4
+ )
+ ).toEqual({
+ parentNode: { nodeId: '3', children: [{ nodeId: 'new' }] },
+ treeData: [
+ {
+ nodeId: '0',
+ children: [
+ { nodeId: '01' },
+ { nodeId: '02' },
+ { nodeId: '03' },
+ { nodeId: '04' },
+ ],
+ },
+ {
+ nodeId: '1',
+ expanded: true,
+ children: [
+ { nodeId: '2' },
+ { nodeId: '3', children: [{ nodeId: 'new' }] },
+ ],
+ },
+ ],
+ treeIndex: 4,
+ path: ['1', '3', 'new'],
+ });
+ });
+
+ it('should work with nodes with an empty children array', () => {
+ expect(
+ insertNode(
+ [
+ {
+ nodeId: '0',
+ expanded: true,
+ children: [
+ {
+ nodeId: '1',
+ expanded: true,
+ children: [{ nodeId: '2', children: [] }],
+ },
+ ],
+ },
+ ],
+ { nodeId: 'new' },
+ 2,
+ 2
+ )
+ ).toEqual({
+ parentNode: {
+ nodeId: '1',
+ expanded: true,
+ children: [{ nodeId: 'new' }, { nodeId: '2', children: [] }],
+ },
+ treeData: [
+ {
+ nodeId: '0',
+ expanded: true,
+ children: [
+ {
+ nodeId: '1',
+ expanded: true,
+ children: [{ nodeId: 'new' }, { nodeId: '2', children: [] }],
+ },
+ ],
+ },
+ ],
+ treeIndex: 2,
+ path: ['0', '1', 'new'],
+ });
+ });
+});
+
+describe('walk', () => {
+ it('should handle empty data', () => {
+ expect(() =>
+ walk([], () => {
+ throw new Error('callback ran');
+ })
+ ).not.toThrow();
+ });
+
+ it('should handle flat and nested data', () => {
+ [
+ {
+ treeData: [{}],
+ expected: 1,
+ },
+ {
+ treeData: [{}, {}],
+ expected: 2,
+ },
+ {
+ treeData: [{}, { children: [{}] }, {}],
+ expected: 3,
+ },
+ {
+ treeData: [{}, { children: [{}] }, {}],
+ ignoreCollapsed: false,
+ expected: 4,
+ },
+ ].forEach(({ treeData, expected, ignoreCollapsed = true }) => {
+ let callCount = 0;
+ walk(
+ fill(treeData),
+ () => {
+ callCount += 1;
+ },
+ ignoreCollapsed
+ );
+
+ expect(callCount).toEqual(expected);
+ });
+ });
+
+ it('should return correct params', () => {
+ const paths = [['0'], ['1'], ['1', '2'], ['3']];
+ let counter = 0;
+
+ walk(
+ [
+ { nodeId: '0' },
+ { nodeId: '1', children: [{ nodeId: '2' }] },
+ { nodeId: '3' },
+ ],
+ ({ treeIndex, path }) => {
+ expect(treeIndex).toEqual(counter);
+ expect(path).toEqual(paths[treeIndex]);
+ counter += 1;
+ },
+ false
+ );
+ });
+
+ it('should cut walk short when false is returned', () => {
+ const treeData = [
+ {
+ expanded: true,
+ nodeId: '0',
+ children: [{ nodeId: '2' }, { nodeId: '3' }],
+ },
+ { nodeId: '6' },
+ ];
+
+ expect(() =>
+ walk(treeData, ({ node }) => {
+ if (node.nodeId === '2') {
+ // Cut walk short with false
+ return false;
+ }
+ if (node.nodeId === '3') {
+ throw new Error('walk not terminated by false');
+ }
+ })
+ ).not.toThrow();
+ });
+
+ it('can get parents while walking', () => {
+ const treeData = [
+ {
+ nodeId: '1',
+ children: [
+ { nodeId: '12', children: [{ nodeId: '3' }] },
+ { nodeId: '4' },
+ ],
+ },
+ { nodeId: '5' },
+ ];
+ const results = [];
+ walk(
+ treeData,
+ ({ parentNode }) => {
+ results.push(parentNode ? parentNode.nodeId : null);
+ },
+ false
+ );
+
+ expect(results).toEqual([null, '1', '12', '1', null]);
+ });
+});
+
+describe('getTreeFromFlatData', () => {
+ const rootId = '-1';
+ const argDefaults = {
+ rootId,
+ getNodeId: node => node.id,
+ getParentNodeId: node => node.parentId,
+ };
+
+ const checkFunction = ({ flatData, expected }) => {
+ expect(
+ getTreeFromFlatData(
+ flatData,
+ argDefaults.getNodeId,
+ argDefaults.getParentNodeId,
+ argDefaults.rootId
+ )
+ ).toEqual(expected);
+ };
+
+ it('should handle empty data', () => {
+ [{ flatData: [], expected: [] }].forEach(checkFunction);
+ });
+
+ it('should handle [depth == 1] data', () => {
+ [
+ {
+ flatData: [
+ { id: '1', parentId: rootId },
+ { id: '2', parentId: rootId },
+ ],
+ expected: [
+ { nodeId: '1', id: '1', parentId: rootId },
+ { nodeId: '2', id: '2', parentId: rootId },
+ ],
+ },
+ {
+ flatData: [
+ { id: '1', parentId: rootId },
+ { id: '2', parentId: rootId },
+ ],
+ expected: [
+ { nodeId: '1', id: '1', parentId: rootId },
+ { nodeId: '2', id: '2', parentId: rootId },
+ ],
+ },
+ ].forEach(checkFunction);
+ });
+
+ it('should handle [depth == 2] data', () => {
+ [
+ {
+ flatData: [
+ { id: '1', parentId: rootId },
+ { id: '2', parentId: '1' },
+ ],
+ expected: [
+ {
+ nodeId: '1',
+ id: '1',
+ parentId: rootId,
+ children: [{ nodeId: '2', id: '2', parentId: '1' }],
+ },
+ ],
+ },
+ {
+ flatData: [
+ { id: '1', parentId: rootId },
+ { id: '2', parentId: '1' },
+ ],
+ expected: [
+ {
+ nodeId: '1',
+ id: '1',
+ parentId: rootId,
+ children: [{ nodeId: '2', id: '2', parentId: '1' }],
+ },
+ ],
+ },
+ ].forEach(checkFunction);
+ });
+
+ it('should handle [depth > 2] nested data', () => {
+ [
+ {
+ flatData: [
+ { id: '3', parentId: '2' },
+ { id: '1', parentId: rootId },
+ { id: '2', parentId: '1' },
+ ],
+ expected: [
+ {
+ nodeId: '1',
+ id: '1',
+ parentId: rootId,
+ children: [
+ {
+ nodeId: '2',
+ id: '2',
+ parentId: '1',
+ children: [{ nodeId: '3', id: '3', parentId: '2' }],
+ },
+ ],
+ },
+ ],
+ },
+ {
+ flatData: [
+ { id: '4', parentId: '2' },
+ { id: '3', parentId: '2' },
+ { id: '7', parentId: rootId },
+ { id: '1', parentId: rootId },
+ { id: '2', parentId: '1' },
+ { id: '6', parentId: '1' },
+ ],
+ expected: [
+ { nodeId: '7', id: '7', parentId: rootId },
+ {
+ nodeId: '1',
+ id: '1',
+ parentId: rootId,
+ children: [
+ {
+ nodeId: '2',
+ id: '2',
+ parentId: '1',
+ children: [
+ { nodeId: '4', id: '4', parentId: '2' },
+ { nodeId: '3', id: '3', parentId: '2' },
+ ],
+ },
+ { nodeId: '6', id: '6', parentId: '1' },
+ ],
+ },
+ ],
+ },
+ ].forEach(checkFunction);
+ });
+});
+
+describe('map', () => {
+ const checkFunction = ({ treeData, callback, ignoreCollapsed, expected }) => {
+ expect(map(treeData, callback, ignoreCollapsed)).toEqual(expected);
+ };
+
+ it('should handle empty data', () => {
+ [
+ {
+ treeData: [],
+ callback: ({ node }) => node,
+ expected: [],
+ },
+ {
+ treeData: null,
+ callback: ({ node }) => node,
+ expected: [],
+ },
+ {
+ treeData: undefined,
+ callback: ({ node }) => node,
+ expected: [],
+ },
+ ].forEach(checkFunction);
+ });
+
+ it('can return tree as-is', () => {
+ [
+ {
+ callback: ({ node }) => node,
+ treeData: [{ nodeId: '1' }, { nodeId: '2' }],
+ expected: [{ nodeId: '1' }, { nodeId: '2' }],
+ },
+ {
+ callback: ({ node }) => node,
+ treeData: [{ nodeId: '1', children: [{ nodeId: '2' }] }],
+ expected: [{ nodeId: '1', children: [{ nodeId: '2' }] }],
+ },
+ {
+ callback: ({ node }) => node,
+ treeData: [
+ {
+ nodeId: '1',
+ children: [
+ { nodeId: '12', children: [{ nodeId: '3' }] },
+ { nodeId: '4' },
+ ],
+ },
+ { nodeId: '5' },
+ ],
+ expected: [
+ {
+ nodeId: '1',
+ children: [
+ { nodeId: '12', children: [{ nodeId: '3' }] },
+ { nodeId: '4' },
+ ],
+ },
+ { nodeId: '5' },
+ ],
+ },
+ ].forEach(checkFunction);
+ });
+
+ it('can truncate part of the tree', () => {
+ [
+ {
+ callback: ({ node }) =>
+ node.nodeId === '1' ? { ...node, children: [] } : node,
+ treeData: [
+ {
+ nodeId: '1',
+ children: [
+ { nodeId: '12', children: [{ nodeId: '3' }] },
+ { nodeId: '4' },
+ ],
+ },
+ { nodeId: '5' },
+ ],
+ expected: [{ nodeId: '1', children: [] }, { nodeId: '5' }],
+ },
+ ].forEach(checkFunction);
+ });
+
+ it('can get parents', () => {
+ checkFunction({
+ callback: ({ node, parentNode }) => ({
+ ...node,
+ parentId: parentNode ? parentNode.nodeId : null,
+ }),
+ ignoreCollapsed: false,
+ treeData: [
+ {
+ nodeId: '1',
+ children: [
+ {
+ nodeId: '12',
+ children: [{ nodeId: '3' }],
+ },
+ { nodeId: '4' },
+ ],
+ },
+ { nodeId: '5' },
+ ],
+ expected: [
+ {
+ nodeId: '1',
+ parentId: null,
+ children: [
+ {
+ nodeId: '12',
+ parentId: '1',
+ children: [
+ {
+ nodeId: '3',
+ parentId: '12',
+ },
+ ],
+ },
+ {
+ nodeId: '4',
+ parentId: '1',
+ },
+ ],
+ },
+ {
+ nodeId: '5',
+ parentId: null,
+ },
+ ],
+ });
+ });
+
+ it('can sort part of the tree', () => {
+ [
+ {
+ callback: ({ node }) =>
+ !node.children
+ ? node
+ : {
+ ...node,
+ children: node.children.sort((a, b) => a.nodeId - b.nodeId),
+ },
+ treeData: [
+ {
+ nodeId: '1',
+ expanded: true,
+ children: [
+ {
+ nodeId: '12',
+ expanded: true,
+ children: [{ nodeId: '33' }, { nodeId: '3' }],
+ },
+ { nodeId: '4' },
+ ],
+ },
+ { nodeId: '5' },
+ ],
+ expected: [
+ {
+ nodeId: '1',
+ expanded: true,
+ children: [
+ { nodeId: '4' },
+ {
+ nodeId: '12',
+ expanded: true,
+ children: [{ nodeId: '3' }, { nodeId: '33' }],
+ },
+ ],
+ },
+ { nodeId: '5' },
+ ],
+ },
+ ].forEach(checkFunction);
+ });
+
+ it('can modify every node in the tree', () => {
+ [
+ {
+ callback: ({ node }) => ({ ...node, expanded: true }),
+ ignoreCollapsed: false,
+ treeData: [
+ {
+ nodeId: '1',
+ children: [
+ {
+ nodeId: '12',
+ children: [{ nodeId: '33' }, { nodeId: '3' }],
+ },
+ { nodeId: '4' },
+ ],
+ },
+ { nodeId: '5' },
+ ],
+ expected: [
+ {
+ nodeId: '1',
+ expanded: true,
+ children: [
+ {
+ nodeId: '12',
+ expanded: true,
+ children: [
+ { nodeId: '33', expanded: true },
+ { nodeId: '3', expanded: true },
+ ],
+ },
+ { nodeId: '4', expanded: true },
+ ],
+ },
+ { nodeId: '5', expanded: true },
+ ],
+ },
+ ].forEach(checkFunction);
+ });
+});
+
+describe('isDescendant', () => {
+ const treeData = [
+ {
+ nodeId: '1',
+ children: [
+ {
+ nodeId: '12',
+ children: [{ nodeId: '33' }, { nodeId: '3' }],
+ },
+ { nodeId: '4' },
+ ],
+ },
+ { nodeId: '5' },
+ ];
+
+ it('should work at the base', () => {
+ expect(isDescendant(treeData[0], treeData[0])).toEqual(false);
+ expect(isDescendant(treeData[0], treeData[1])).toEqual(false);
+ expect(isDescendant(treeData[0], treeData[0].children[1])).toEqual(true);
+ });
+
+ it('should work deeper in the tree', () => {
+ expect(
+ isDescendant(treeData[0].children[0], treeData[0].children[0].children[1])
+ ).toEqual(true);
+ });
+});
+
+describe('getDepth', () => {
+ const treeData = [
+ {
+ nodeId: '1',
+ children: [
+ {
+ nodeId: '12',
+ children: [{ nodeId: '33' }, { nodeId: '3' }],
+ },
+ { nodeId: '4' },
+ ],
+ },
+ { nodeId: '5' },
+ ];
+
+ it('should work at the base', () => {
+ expect(getDepth(treeData[0])).toEqual(2);
+ expect(getDepth(treeData[1])).toEqual(0);
+ });
+
+ it('should work deeper in the tree', () => {
+ expect(getDepth(treeData[0].children[0])).toEqual(1);
+ });
+});
+
+describe('getDescendantCount', () => {
+ it('should count flat data', () => {
+ expect(getDescendantCount(fill({}), false)).toEqual(0);
+ expect(getDescendantCount(fill({ children: [] }), false)).toEqual(0);
+ expect(getDescendantCount(fill({ children: [{}] }), false)).toEqual(1);
+ expect(getDescendantCount(fill({ children: [{}, {}] }), false)).toEqual(2);
+ });
+
+ it('should count nested data', () => {
+ const nested = fill({
+ expanded: true,
+ children: [{}, { children: [{}] }, {}],
+ });
+
+ expect(getDescendantCount(nested, false)).toEqual(4);
+ expect(getDescendantCount(nested, true)).toEqual(3);
+ });
+});
+
+describe('find', () => {
+ const offsetDefault = 0;
+ const check = (treeData: TreeData, searchFocusOffset = offsetDefault) => {
+ return find(
+ treeData,
+ '42',
+ ({ node, searchQuery }) => node.nodeId === searchQuery,
+ searchFocusOffset,
+ false,
+ true
+ );
+ };
+
+ it('should work with flat data', () => {
+ let result: ReturnType;
+
+ result = check(fill([{}]));
+ expect(result.matches).toEqual([]);
+
+ result = check([{ nodeId: '41' }]);
+ expect(result.matches).toEqual([]);
+
+ result = check([{ nodeId: '42' }]);
+ expect(result.matches).toEqual([
+ { node: { nodeId: '42' }, treeIndex: 0, path: ['42'] },
+ ]);
+ expect(result.matches[offsetDefault].treeIndex).toEqual(0);
+
+ result = check([{ nodeId: '41' }, { nodeId: '42' }]);
+ expect(result.matches).toEqual([
+ { node: { nodeId: '42' }, treeIndex: 1, path: ['42'] },
+ ]);
+ expect(result.matches[offsetDefault].treeIndex).toEqual(1);
+
+ result = check([{ nodeId: '42' }, { nodeId: '42' }]);
+ expect(result.matches).toEqual([
+ { node: { nodeId: '42' }, treeIndex: 0, path: ['42'] },
+ { node: { nodeId: '42' }, treeIndex: 1, path: ['42'] },
+ ]);
+ expect(result.matches[offsetDefault].treeIndex).toEqual(0);
+
+ result = check(
+ [
+ { nodeId: '1' },
+ { nodeId: '42' },
+ { nodeId: '3' },
+ { nodeId: '3' },
+ { nodeId: '3' },
+ { nodeId: '4' },
+ { nodeId: '42' },
+ { nodeId: '42' },
+ { nodeId: '4' },
+ { nodeId: '42' },
+ ],
+ 3
+ );
+ expect(result.matches).toEqual([
+ { node: { nodeId: '42' }, treeIndex: 1, path: ['42'] },
+ { node: { nodeId: '42' }, treeIndex: 6, path: ['42'] },
+ { node: { nodeId: '42' }, treeIndex: 7, path: ['42'] },
+ { node: { nodeId: '42' }, treeIndex: 9, path: ['42'] },
+ ]);
+ expect(result.matches[3].treeIndex).toEqual(9);
+ });
+
+ it('should work with nested data', () => {
+ let result: ReturnType;
+
+ result = check(fill([{ children: [{ nodeId: '42' }] }]));
+ expect(result.matches.length).toEqual(1);
+ expect(result.matches[offsetDefault].treeIndex).toEqual(1);
+
+ result = check(
+ fill([{ children: [{ nodeId: '41' }] }, { children: [{ nodeId: '42' }] }])
+ );
+ expect(result.matches.length).toEqual(1);
+ expect(result.matches[offsetDefault].treeIndex).toEqual(2);
+ expect(result.treeData).toEqual(
+ fill([
+ { children: [{ nodeId: '41' }] },
+ { expanded: true, children: [{ nodeId: '42' }] },
+ ])
+ );
+
+ result = check(fill([{ children: [{ children: [{ nodeId: '42' }] }] }]));
+ expect(result.matches.length).toEqual(1);
+ expect(result.matches[offsetDefault].treeIndex).toEqual(2);
+
+ result = check(
+ fill([{ children: [{ nodeId: '42', children: [{ nodeId: '42' }] }] }])
+ );
+ expect(result.matches.length).toEqual(2);
+ expect(result.matches[offsetDefault].treeIndex).toEqual(1);
+
+ result = check(
+ fill([
+ {},
+ {
+ children: [
+ { nodeId: '42', expanded: true, children: [{ nodeId: '42' }] },
+ ],
+ },
+ ])
+ );
+ expect(result.matches.length).toEqual(2);
+ expect(result.matches[offsetDefault].treeIndex).toEqual(2);
+
+ result = check(
+ fill([
+ {},
+ {
+ children: [
+ { nodeId: '1', expanded: true, children: [{ nodeId: '1' }] },
+ ],
+ },
+ ])
+ );
+ expect(result.matches.length).toEqual(0);
+ });
+});
+
+describe('toggleExpandedForAll', () => {
+ it('should expand all', () => {
+ expect(
+ toggleExpandedForAll(
+ [
+ {
+ nodeId: '0',
+ children: [{ nodeId: '1', children: [{ nodeId: '2' }] }],
+ },
+ ],
+ true
+ )
+ ).toEqual([
+ {
+ nodeId: '0',
+ expanded: true,
+ children: [
+ {
+ nodeId: '1',
+ expanded: true,
+ children: [{ expanded: true, nodeId: '2' }],
+ },
+ ],
+ },
+ ]);
+ });
+ it('should collapse all', () => {
+ expect(
+ toggleExpandedForAll(
+ [
+ {
+ expanded: true,
+ nodeId: '0',
+ children: [
+ {
+ nodeId: '1',
+ expanded: true,
+ children: [{ nodeId: '2', expanded: true }],
+ },
+ ],
+ },
+ ],
+ false
+ )
+ ).toEqual([
+ {
+ expanded: false,
+ nodeId: '0',
+ children: [
+ {
+ nodeId: '1',
+ expanded: false,
+ children: [{ nodeId: '2', expanded: false }],
+ },
+ ],
+ },
+ ]);
+ });
+});
diff --git a/src/utils/tree-data-utils.test.js b/src/utils/tree-data-utils.test.js
deleted file mode 100644
index 68128a3c..00000000
--- a/src/utils/tree-data-utils.test.js
+++ /dev/null
@@ -1,2244 +0,0 @@
-import {
- getVisibleNodeCount,
- getVisibleNodeInfoAtIndex,
- changeNodeAtPath,
- addNodeUnderParent,
- getTreeFromFlatData,
- getNodeAtPath,
- getFlatDataFromTree,
- walk,
- map,
- insertNode,
- isDescendant,
- getDepth,
- getDescendantCount,
- find,
- toggleExpandedForAll,
-} from './tree-data-utils';
-
-const keyFromTreeIndex = ({ treeIndex }) => treeIndex;
-const keyFromKey = ({ node }) => node.key;
-
-describe('getVisibleNodeCount', () => {
- it('should handle flat data', () => {
- expect(
- getVisibleNodeCount({
- treeData: [{}, {}],
- })
- ).toEqual(2);
- });
-
- it('should handle hidden nested data', () => {
- expect(
- getVisibleNodeCount({
- treeData: [
- {
- children: [
- {
- children: [{}, {}],
- },
- {
- children: [{}],
- },
- ],
- },
- {},
- ],
- })
- ).toEqual(2);
- });
-
- it('should handle functions', () => {
- expect(
- getVisibleNodeCount({
- treeData: [
- {
- expanded: true,
- children: [
- {
- expanded: true,
- children: [
- {
- expanded: true,
- children: () => ({ key: 1 }),
- },
- {},
- ],
- },
- {
- children: [{}],
- },
- ],
- },
- {},
- ],
- })
- ).toEqual(6);
- });
-
- it('should handle partially expanded nested data', () => {
- expect(
- getVisibleNodeCount({
- treeData: [
- {
- expanded: true,
- children: [
- {
- expanded: true,
- children: [{}, {}],
- },
- {
- children: [{}],
- },
- ],
- },
- {},
- ],
- })
- ).toEqual(6);
- });
-
- it('should handle fully expanded nested data', () => {
- expect(
- getVisibleNodeCount({
- treeData: [
- {
- expanded: true,
- children: [
- {
- expanded: true,
- children: [{}, {}],
- },
- {
- expanded: true,
- children: [{}],
- },
- ],
- },
- {},
- ],
- })
- ).toEqual(7);
- });
-});
-
-describe('getVisibleNodeInfoAtIndex', () => {
- it('should handle empty data', () => {
- expect(
- getVisibleNodeInfoAtIndex({
- treeData: [],
- index: 1,
- getNodeKey: keyFromTreeIndex,
- })
- ).toEqual(null);
- expect(
- getVisibleNodeInfoAtIndex({
- treeData: null,
- index: 1,
- getNodeKey: keyFromTreeIndex,
- })
- ).toEqual(null);
- expect(
- getVisibleNodeInfoAtIndex({
- treeData: undefined,
- index: 1,
- getNodeKey: keyFromTreeIndex,
- })
- ).toEqual(null);
- });
-
- it('should handle flat data', () => {
- expect(
- getVisibleNodeInfoAtIndex({
- treeData: [{ key: 0 }],
- index: 0,
- getNodeKey: keyFromTreeIndex,
- }).node.key
- ).toEqual(0);
- expect(
- getVisibleNodeInfoAtIndex({
- treeData: [{ key: 0 }, { key: 1 }],
- index: 1,
- getNodeKey: keyFromTreeIndex,
- }).node.key
- ).toEqual(1);
- });
-
- it('should handle hidden nested data', () => {
- const result = getVisibleNodeInfoAtIndex({
- treeData: [
- {
- key: 0,
- children: [
- {
- key: 1,
- children: [{ key: 2 }, { key: 3 }],
- },
- {
- key: 4,
- children: [{ key: 5 }],
- },
- ],
- },
- { key: 6 },
- ],
- index: 1,
- getNodeKey: keyFromTreeIndex,
- });
-
- expect(result.node.key).toEqual(6);
- expect(result.path).toEqual([1]);
- expect(result.lowerSiblingCounts).toEqual([0]);
- });
-
- it('should handle partially expanded nested data', () => {
- const result = getVisibleNodeInfoAtIndex({
- treeData: [
- {
- expanded: true,
- key: 0,
- children: [
- {
- key: 1,
- children: [{ key: 2 }, { key: 3 }],
- },
- {
- expanded: true,
- key: 4,
- children: [{ key: 5 }],
- },
- ],
- },
- { key: 6 },
- ],
- index: 3,
- getNodeKey: keyFromKey,
- });
-
- expect(result.node.key).toEqual(5);
- expect(result.path).toEqual([0, 4, 5]);
- expect(result.lowerSiblingCounts).toEqual([1, 0, 0]);
- });
-
- it('should handle fully expanded nested data', () => {
- const result = getVisibleNodeInfoAtIndex({
- treeData: [
- {
- expanded: true,
- key: 0,
- children: [
- {
- expanded: true,
- key: 1,
- children: [{ key: 2 }, { key: 3 }],
- },
- {
- expanded: true,
- key: 4,
- children: [{ key: 5 }],
- },
- ],
- },
- { key: 6 },
- ],
- index: 5,
- getNodeKey: keyFromTreeIndex,
- });
-
- expect(result.node.key).toEqual(5);
- expect(result.path).toEqual([0, 4, 5]);
- expect(result.lowerSiblingCounts).toEqual([1, 0, 0]);
- });
-
- it('should handle an index that is larger than the data', () => {
- expect(
- getVisibleNodeInfoAtIndex({
- treeData: [
- {
- expanded: true,
- key: 0,
- children: [
- {
- expanded: true,
- key: 1,
- children: [{ key: 2 }, { key: 3 }],
- },
- {
- expanded: true,
- key: 4,
- children: [{ key: 5 }],
- },
- ],
- },
- { key: 6 },
- ],
- index: 7,
- getNodeKey: keyFromTreeIndex,
- })
- ).toEqual(null);
- });
-});
-
-describe('getNodeAtPath', () => {
- it('should handle empty data', () => {
- expect(
- getNodeAtPath({
- treeData: [],
- path: 1,
- getNodeKey: keyFromTreeIndex,
- })
- ).toEqual(null);
- expect(
- getNodeAtPath({
- treeData: null,
- path: 1,
- getNodeKey: keyFromTreeIndex,
- })
- ).toEqual(null);
- expect(
- getNodeAtPath({
- treeData: undefined,
- path: 1,
- getNodeKey: keyFromTreeIndex,
- })
- ).toEqual(null);
- });
-
- it('should handle flat data', () => {
- expect(
- getNodeAtPath({
- treeData: [{ key: 0 }],
- path: [0],
- getNodeKey: keyFromTreeIndex,
- }).node.key
- ).toEqual(0);
- expect(
- getNodeAtPath({
- treeData: [{ key: 0 }, { key: 1 }],
- path: [1],
- getNodeKey: keyFromTreeIndex,
- }).node.key
- ).toEqual(1);
- });
-
- it('should handle hidden nested data', () => {
- const result = getNodeAtPath({
- treeData: [
- {
- key: 0,
- children: [
- {
- key: 1,
- children: [{ key: 2 }, { key: 3 }],
- },
- {
- key: 4,
- children: [{ key: 5 }],
- },
- ],
- },
- { key: 6 },
- ],
- path: [1],
- getNodeKey: keyFromTreeIndex,
- });
-
- expect(result.node.key).toEqual(6);
- });
-
- it('should handle partially expanded nested data', () => {
- const result = getNodeAtPath({
- treeData: [
- {
- expanded: true,
- key: 0,
- children: [
- {
- key: 1,
- children: [{ key: 2 }, { key: 3 }],
- },
- {
- expanded: true,
- key: 4,
- children: [{ key: 5 }],
- },
- ],
- },
- { key: 6 },
- ],
- path: [0, 4, 5],
- getNodeKey: keyFromKey,
- });
-
- expect(result.node.key).toEqual(5);
- });
-
- it('should handle fully expanded nested data', () => {
- const result = getNodeAtPath({
- treeData: [
- {
- expanded: true,
- key: 0,
- children: [
- {
- expanded: true,
- key: 1,
- children: [{ key: 2 }, { key: 3 }],
- },
- {
- expanded: true,
- key: 4,
- children: [{ key: 5 }],
- },
- ],
- },
- { key: 6 },
- ],
- path: [0, 4, 5],
- getNodeKey: keyFromTreeIndex,
- });
-
- expect(result.node.key).toEqual(5);
- });
-
- it('should handle an index that is larger than the data', () => {
- expect(
- getNodeAtPath({
- treeData: [
- {
- expanded: true,
- key: 0,
- children: [
- {
- expanded: true,
- key: 1,
- children: [{ key: 2 }, { key: 3 }],
- },
- {
- expanded: true,
- key: 4,
- children: [{ key: 5 }],
- },
- ],
- },
- { key: 6 },
- ],
- path: [7],
- getNodeKey: keyFromTreeIndex,
- })
- ).toEqual(null);
- });
-});
-
-describe('getFlatDataFromTree', () => {
- it('should handle empty data', () => {
- expect(
- getFlatDataFromTree({ treeData: [], getNodeKey: keyFromTreeIndex })
- ).toEqual([]);
- expect(
- getFlatDataFromTree({ treeData: null, getNodeKey: keyFromTreeIndex })
- ).toEqual([]);
- expect(
- getFlatDataFromTree({ treeData: undefined, getNodeKey: keyFromTreeIndex })
- ).toEqual([]);
- });
-
- it('should handle flat data', () => {
- expect(
- getFlatDataFromTree({
- ignoreCollapsed: true,
- getNodeKey: keyFromTreeIndex,
- treeData: [{ key: 0 }],
- })
- ).toEqual([
- {
- node: { key: 0 },
- parentNode: null,
- path: [0],
- lowerSiblingCounts: [0],
- treeIndex: 0,
- },
- ]);
-
- expect(
- getFlatDataFromTree({
- ignoreCollapsed: true,
- treeData: [{ key: 0 }, { key: 1 }],
- getNodeKey: keyFromTreeIndex,
- })
- ).toEqual([
- {
- node: { key: 0 },
- parentNode: null,
- path: [0],
- lowerSiblingCounts: [1],
- treeIndex: 0,
- },
- {
- node: { key: 1 },
- parentNode: null,
- path: [1],
- lowerSiblingCounts: [0],
- treeIndex: 1,
- },
- ]);
- });
-
- it('should handle hidden nested data', () => {
- const treeData = [
- {
- key: 0,
- children: [
- {
- key: 1,
- children: [{ key: 2 }, { key: 3 }],
- },
- {
- key: 4,
- children: [{ key: 5 }],
- },
- ],
- },
- { key: 6 },
- ];
-
- expect(
- getFlatDataFromTree({
- ignoreCollapsed: true,
- getNodeKey: keyFromTreeIndex,
- treeData,
- })
- ).toEqual([
- {
- node: treeData[0],
- parentNode: null,
- path: [0],
- lowerSiblingCounts: [1],
- treeIndex: 0,
- },
- {
- node: treeData[1],
- parentNode: null,
- path: [1],
- lowerSiblingCounts: [0],
- treeIndex: 1,
- },
- ]);
- });
-
- it('should handle partially expanded nested data', () => {
- const treeData = [
- {
- expanded: true,
- key: 0,
- children: [
- {
- key: 1,
- children: [{ key: 2 }, { key: 3 }],
- },
- {
- expanded: true,
- key: 4,
- children: [{ key: 5 }],
- },
- ],
- },
- { key: 6 },
- ];
-
- expect(
- getFlatDataFromTree({
- ignoreCollapsed: true,
- getNodeKey: keyFromKey,
- treeData,
- })
- ).toEqual([
- {
- node: treeData[0],
- parentNode: null,
- path: [0],
- lowerSiblingCounts: [1],
- treeIndex: 0,
- },
- {
- node: treeData[0].children[0],
- parentNode: treeData[0],
- path: [0, 1],
- lowerSiblingCounts: [1, 1],
- treeIndex: 1,
- },
- {
- node: treeData[0].children[1],
- parentNode: treeData[0],
- path: [0, 4],
- lowerSiblingCounts: [1, 0],
- treeIndex: 2,
- },
- {
- node: treeData[0].children[1].children[0],
- parentNode: treeData[0].children[1],
- path: [0, 4, 5],
- lowerSiblingCounts: [1, 0, 0],
- treeIndex: 3,
- },
- {
- node: treeData[1],
- parentNode: null,
- path: [6],
- lowerSiblingCounts: [0],
- treeIndex: 4,
- },
- ]);
- });
-
- it('should handle fully expanded nested data', () => {
- const treeData = [
- {
- expanded: true,
- key: 0,
- children: [
- {
- expanded: true,
- key: 1,
- children: [{ key: 2 }, { key: 3 }],
- },
- {
- expanded: true,
- key: 4,
- children: [{ key: 5 }],
- },
- ],
- },
- { key: 6 },
- ];
-
- expect(
- getFlatDataFromTree({
- ignoreCollapsed: true,
- treeData,
- getNodeKey: keyFromTreeIndex,
- })
- ).toEqual([
- {
- node: treeData[0],
- parentNode: null,
- path: [0],
- lowerSiblingCounts: [1],
- treeIndex: 0,
- },
- {
- node: treeData[0].children[0],
- parentNode: treeData[0],
- path: [0, 1],
- lowerSiblingCounts: [1, 1],
- treeIndex: 1,
- },
- {
- node: treeData[0].children[0].children[0],
- parentNode: treeData[0].children[0],
- path: [0, 1, 2],
- lowerSiblingCounts: [1, 1, 1],
- treeIndex: 2,
- },
- {
- node: treeData[0].children[0].children[1],
- parentNode: treeData[0].children[0],
- path: [0, 1, 3],
- lowerSiblingCounts: [1, 1, 0],
- treeIndex: 3,
- },
- {
- node: treeData[0].children[1],
- parentNode: treeData[0],
- path: [0, 4],
- lowerSiblingCounts: [1, 0],
- treeIndex: 4,
- },
- {
- node: treeData[0].children[1].children[0],
- parentNode: treeData[0].children[1],
- path: [0, 4, 5],
- lowerSiblingCounts: [1, 0, 0],
- treeIndex: 5,
- },
- {
- node: treeData[1],
- parentNode: null,
- path: [6],
- lowerSiblingCounts: [0],
- treeIndex: 6,
- },
- ]);
- });
-});
-
-describe('changeNodeAtPath', () => {
- it('should handle empty data', () => {
- const noChildrenError = new Error(
- 'Path referenced children of node with no children.'
- );
- const noNodeError = new Error('No node found at the given path.');
- expect(() =>
- changeNodeAtPath({
- treeData: [],
- path: [1],
- newNode: {},
- getNodeKey: keyFromTreeIndex,
- })
- ).toThrow(noNodeError);
- expect(() =>
- changeNodeAtPath({
- treeData: null,
- path: [1],
- newNode: {},
- getNodeKey: keyFromTreeIndex,
- })
- ).toThrow(noChildrenError);
- expect(() =>
- changeNodeAtPath({
- treeData: null,
- path: [1, 2],
- newNode: {},
- getNodeKey: keyFromTreeIndex,
- })
- ).toThrow(noChildrenError);
- expect(() =>
- changeNodeAtPath({
- treeData: undefined,
- path: [1],
- newNode: {},
- getNodeKey: keyFromTreeIndex,
- })
- ).toThrow(noChildrenError);
- });
-
- it('should handle flat data', () => {
- expect(
- changeNodeAtPath({
- treeData: [{ key: 0 }],
- path: [0],
- newNode: { key: 1 },
- getNodeKey: keyFromKey,
- })
- ).toEqual([{ key: 1 }]);
-
- expect(
- changeNodeAtPath({
- treeData: [{ key: 0 }, { key: 'a' }],
- path: ['a'],
- newNode: { key: 1 },
- getNodeKey: keyFromKey,
- })
- ).toEqual([{ key: 0 }, { key: 1 }]);
- });
-
- it('should handle nested data', () => {
- const result = changeNodeAtPath({
- treeData: [
- {
- expanded: true,
- key: 0,
- children: [
- {
- key: 'b',
- children: [{ key: 2 }, { key: 3 }, { key: 'f' }],
- },
- {
- expanded: true,
- key: 'r',
- children: [{ key: 5 }, { key: 8 }, { key: 7 }],
- },
- ],
- },
- { key: 6 },
- ],
- path: [0, 2, 5],
- newNode: { food: 'pancake' },
- getNodeKey: keyFromTreeIndex,
- });
-
- expect(result[0].children[1].children[2].food).toEqual('pancake');
- });
-
- it('should handle adding children', () => {
- const result = changeNodeAtPath({
- treeData: [
- {
- expanded: true,
- key: 0,
- children: [
- {
- key: 'b',
- children: [{ key: 2 }, { key: 3 }, { key: 'f' }],
- },
- {
- expanded: true,
- key: 'r',
- children: [{ key: 5 }, { key: 8 }, { key: 7 }],
- },
- ],
- },
- { key: 6 },
- ],
- path: [0, 2, 5],
- newNode: ({ node }) => ({
- ...node,
- children: [{ food: 'pancake' }],
- }),
- getNodeKey: keyFromTreeIndex,
- });
-
- expect(result[0].children[1].children[2].children[0].food).toEqual(
- 'pancake'
- );
- });
-
- it('should handle adding children to the root', () => {
- expect(
- changeNodeAtPath({
- treeData: [],
- path: [],
- newNode: ({ node }) => ({
- ...node,
- children: [...node.children, { key: 1 }],
- }),
- getNodeKey: keyFromKey,
- })
- ).toEqual([{ key: 1 }]);
-
- expect(
- changeNodeAtPath({
- treeData: [{ key: 0 }],
- path: [],
- newNode: ({ node }) => ({
- ...node,
- children: [...node.children, { key: 1 }],
- }),
- getNodeKey: keyFromKey,
- })
- ).toEqual([{ key: 0 }, { key: 1 }]);
- });
-
- it('should delete data when falsey node passed', () => {
- const result = changeNodeAtPath({
- treeData: [
- {
- expanded: true,
- key: 'b',
- children: [{ key: 'f' }],
- },
- {
- expanded: true,
- key: 'r',
- children: [{ key: 7 }],
- },
- { key: 6 },
- ],
- path: [2, 3],
- newNode: null,
- getNodeKey: keyFromTreeIndex,
- });
-
- expect(result[1].children.length).toEqual(0);
- });
-
- it('should delete data on the top level', () => {
- const treeData = [
- {
- expanded: true,
- key: 'b',
- children: [{ key: 'f' }],
- },
- {
- expanded: true,
- key: 'r',
- children: [{ key: 7 }],
- },
- { key: 6 },
- ];
- const result = changeNodeAtPath({
- treeData,
- path: [2],
- newNode: null,
- getNodeKey: keyFromTreeIndex,
- });
-
- expect(result).toEqual([treeData[0], treeData[2]]);
- });
-
- it('should handle a path that is too long', () => {
- const treeData = [
- {
- expanded: true,
- key: 0,
- children: [
- {
- expanded: true,
- key: 1,
- children: [{ key: 2 }, { key: 3 }],
- },
- ],
- },
- ];
-
- expect(() =>
- changeNodeAtPath({
- treeData,
- path: [0, 1, 2, 4],
- newNode: { a: 1 },
- getNodeKey: keyFromKey,
- })
- ).toThrow(new Error('Path referenced children of node with no children.'));
- });
-
- it('should handle a path that does not exist', () => {
- const treeData = [
- {
- expanded: true,
- key: 0,
- children: [
- {
- expanded: true,
- key: 1,
- children: [{ key: 2 }, { key: 3 }],
- },
- ],
- },
- ];
-
- expect(() =>
- changeNodeAtPath({
- treeData,
- path: [0, 2],
- newNode: { a: 1 },
- getNodeKey: keyFromKey,
- })
- ).toThrowError('No node found at the given path.');
- });
-});
-
-describe('addNodeUnderParent', () => {
- it('should handle empty data', () => {
- expect(
- addNodeUnderParent({
- treeData: [],
- parentKey: null,
- newNode: {},
- getNodeKey: keyFromTreeIndex,
- })
- ).toEqual({ treeData: [{}], treeIndex: 0 });
- expect(
- addNodeUnderParent({
- treeData: null,
- parentKey: null,
- newNode: {},
- getNodeKey: keyFromTreeIndex,
- })
- ).toEqual({ treeData: [{}], treeIndex: 0 });
- expect(
- addNodeUnderParent({
- treeData: undefined,
- parentKey: null,
- newNode: {},
- getNodeKey: keyFromTreeIndex,
- })
- ).toEqual({ treeData: [{}], treeIndex: 0 });
- });
-
- it('should handle a parentPath that does not exist', () => {
- const treeData = [
- {
- expanded: true,
- key: 0,
- children: [
- {
- expanded: true,
- key: 1,
- children: [{ key: 2 }, { key: 3 }],
- },
- ],
- },
- ];
-
- expect(() =>
- addNodeUnderParent({
- treeData,
- parentKey: 'fake',
- newNode: { a: 1 },
- getNodeKey: keyFromKey,
- })
- ).toThrowError('No node found with the given key.');
- });
-
- it('should handle flat data', () => {
- // Older sibling of only node
- expect(
- addNodeUnderParent({
- treeData: [{ key: 0 }],
- parentKey: null,
- newNode: { key: 1 },
- getNodeKey: keyFromTreeIndex,
- })
- ).toEqual({ treeData: [{ key: 0 }, { key: 1 }], treeIndex: 1 });
-
- // Child of only node
- expect(
- addNodeUnderParent({
- treeData: [{ key: 0 }],
- parentKey: 0,
- newNode: { key: 1 },
- getNodeKey: keyFromTreeIndex,
- })
- ).toEqual({ treeData: [{ key: 0, children: [{ key: 1 }] }], treeIndex: 1 });
-
- expect(
- addNodeUnderParent({
- treeData: [{ key: 0 }, { key: 'a' }],
- parentKey: 'a',
- newNode: { key: 1 },
- getNodeKey: keyFromKey,
- })
- ).toEqual({
- treeData: [{ key: 0 }, { key: 'a', children: [{ key: 1 }] }],
- treeIndex: 2,
- });
- });
-
- // Tree looks like this
- // /\
- // 0 6
- // / \
- // 1 5
- // / \
- // 2 3
- // \
- // 4
- const nestedParams = {
- treeData: [
- {
- expanded: true,
- key: 0,
- children: [
- {
- expanded: true,
- key: 1,
- children: [
- { key: 2 },
- {
- expanded: false,
- key: 3,
- children: [{ key: 4 }],
- },
- ],
- },
- { key: 5 },
- ],
- },
- { key: 6 },
- ],
- newNode: { key: 'new' },
- };
-
- it('should handle nested data #1', () => {
- const result = addNodeUnderParent({
- ...nestedParams,
- parentKey: 0,
- getNodeKey: keyFromKey,
- });
-
- expect(result.treeData[0].children[2]).toEqual(nestedParams.newNode);
- expect(result.treeIndex).toEqual(5);
- });
-
- it('should handle nested data #2', () => {
- const result = addNodeUnderParent({
- ...nestedParams,
- parentKey: 1,
- getNodeKey: keyFromKey,
- });
-
- expect(result.treeData[0].children[0].children[2]).toEqual(
- nestedParams.newNode
- );
- expect(result.treeIndex).toEqual(4);
- });
-
- it('should handle nested data #3', () => {
- const result = addNodeUnderParent({
- ...nestedParams,
- parentKey: 3,
- getNodeKey: keyFromKey,
- });
-
- expect(result.treeData[0].children[0].children[1].children[1]).toEqual(
- nestedParams.newNode
- );
- expect(result.treeIndex).toEqual(5);
- });
-
- it('should handle nested data #1 (using tree index as key)', () => {
- const result = addNodeUnderParent({
- ...nestedParams,
- parentKey: 0,
- getNodeKey: keyFromTreeIndex,
- });
-
- expect(result.treeData[0].children[2]).toEqual(nestedParams.newNode);
- expect(result.treeIndex).toEqual(5);
- });
-
- it('should handle nested data #2 (using tree index as key)', () => {
- const result = addNodeUnderParent({
- ...nestedParams,
- parentKey: 1,
- getNodeKey: keyFromTreeIndex,
- });
-
- expect(result.treeData[0].children[0].children[2]).toEqual(
- nestedParams.newNode
- );
- expect(result.treeIndex).toEqual(4);
- });
-
- it('should handle nested data #3 (using tree index as key)', () => {
- const result = addNodeUnderParent({
- ...nestedParams,
- parentKey: 3,
- getNodeKey: keyFromTreeIndex,
- });
-
- expect(result.treeData[0].children[0].children[1].children[1]).toEqual(
- nestedParams.newNode
- );
- expect(result.treeIndex).toEqual(5);
- });
-
- it('should add new node as last child by default', () => {
- const result = addNodeUnderParent({
- ...nestedParams,
- parentKey: 0,
- getNodeKey: keyFromKey,
- });
-
- const [
- existingChild0,
- existingChild1,
- expectedNewNode,
- ] = result.treeData[0].children;
-
- expect(expectedNewNode).toEqual(nestedParams.newNode);
- expect([existingChild0, existingChild1]).toEqual(
- nestedParams.treeData[0].children
- );
- });
-
- it('should add new node as first child if addAsFirstChild is true', () => {
- const result = addNodeUnderParent({
- ...nestedParams,
- parentKey: 0,
- getNodeKey: keyFromKey,
- addAsFirstChild: true,
- });
-
- const [expectedNewNode, ...previousChildren] = result.treeData[0].children;
-
- expect(expectedNewNode).toEqual(nestedParams.newNode);
- expect(previousChildren).toEqual(nestedParams.treeData[0].children);
- });
-
- it('should add new node as first child under root if addAsFirstChild is true', () => {
- const result = addNodeUnderParent({
- ...nestedParams,
- parentKey: null,
- getNodeKey: keyFromKey,
- addAsFirstChild: true,
- });
-
- const [expectedNewNode, ...previousTreeData] = result.treeData;
-
- expect(expectedNewNode).toEqual(nestedParams.newNode);
- expect(previousTreeData).toEqual(nestedParams.treeData);
- });
-});
-
-describe('insertNode', () => {
- it('should handle empty data', () => {
- expect(
- insertNode({
- treeData: [],
- depth: 0,
- minimumTreeIndex: 0,
- newNode: {},
- getNodeKey: keyFromTreeIndex,
- })
- ).toEqual({ parentNode: null, treeData: [{}], treeIndex: 0, path: [0] });
- expect(
- insertNode({
- treeData: null,
- depth: 0,
- minimumTreeIndex: 0,
- newNode: {},
- getNodeKey: keyFromTreeIndex,
- })
- ).toEqual({ parentNode: null, treeData: [{}], treeIndex: 0, path: [0] });
- expect(
- insertNode({
- treeData: undefined,
- depth: 0,
- minimumTreeIndex: 0,
- newNode: {},
- getNodeKey: keyFromTreeIndex,
- })
- ).toEqual({ parentNode: null, treeData: [{}], treeIndex: 0, path: [0] });
- });
-
- it('should handle a depth that is deeper than any branch in the tree', () => {
- const treeData = [
- {
- expanded: true,
- key: 0,
- children: [
- {
- expanded: true,
- key: 1,
- children: [{ key: 2 }, { key: 3 }],
- },
- ],
- },
- ];
-
- expect(
- insertNode({
- treeData,
- depth: 4,
- minimumTreeIndex: 0,
- newNode: { key: 'new' },
- getNodeKey: keyFromKey,
- }).treeData[0]
- ).toEqual({ key: 'new' });
- });
-
- it('should handle a minimumTreeIndex that is too big', () => {
- const treeData = [
- {
- expanded: true,
- key: 0,
- children: [
- {
- expanded: true,
- key: 1,
- children: [{ key: 2 }, { key: 3 }],
- },
- ],
- },
- { key: 4 },
- ];
-
- let insertResult = insertNode({
- treeData,
- depth: 0,
- minimumTreeIndex: 15,
- newNode: { key: 'new' },
- getNodeKey: keyFromKey,
- });
- expect(insertResult.treeData[2]).toEqual({ key: 'new' });
- expect(insertResult.treeIndex).toEqual(5);
- expect(insertResult.path).toEqual(['new']);
-
- insertResult = insertNode({
- treeData,
- depth: 2,
- minimumTreeIndex: 15,
- newNode: { key: 'new' },
- getNodeKey: keyFromKey,
- });
-
- expect(insertResult.treeData[1].children[0]).toEqual({ key: 'new' });
- expect(insertResult.treeIndex).toEqual(5);
- expect(insertResult.path).toEqual([4, 'new']);
- });
-
- it('should handle flat data (before)', () => {
- expect(
- insertNode({
- treeData: [{ key: 0 }],
- depth: 0,
- minimumTreeIndex: 0,
- newNode: { key: 1 },
- getNodeKey: keyFromKey,
- })
- ).toEqual({
- parentNode: null,
- treeData: [{ key: 1 }, { key: 0 }],
- treeIndex: 0,
- path: [1],
- });
- });
-
- it('should handle flat data (after)', () => {
- expect(
- insertNode({
- treeData: [{ key: 0 }],
- depth: 0,
- minimumTreeIndex: 1,
- newNode: { key: 1 },
- getNodeKey: keyFromKey,
- })
- ).toEqual({
- parentNode: null,
- treeData: [{ key: 0 }, { key: 1 }],
- treeIndex: 1,
- path: [1],
- });
- });
-
- it('should handle flat data (child)', () => {
- expect(
- insertNode({
- treeData: [{ key: 0 }],
- depth: 1,
- minimumTreeIndex: 1,
- newNode: { key: 1 },
- getNodeKey: keyFromKey,
- })
- ).toEqual({
- parentNode: { key: 0, children: [{ key: 1 }] },
- treeData: [{ key: 0, children: [{ key: 1 }] }],
- treeIndex: 1,
- path: [0, 1],
- });
- });
-
- // Tree looks like this
- // /\
- // 0 6
- // / \
- // 1 5
- // / \
- // 2 3
- // \
- // 4
- const nestedParams = {
- treeData: [
- // Depth 0
- {
- expanded: true,
- key: 0,
- children: [
- // Depth 1
- {
- expanded: true,
- key: 1,
- children: [
- // Depth 2
- { key: 2 },
- {
- expanded: false,
- key: 3,
- children: [
- // Depth 3
- { key: 4 },
- ],
- },
- { key: 5 },
- ],
- },
- { key: 6 },
- ],
- },
- { key: 7 },
- ],
- newNode: { key: 'new' },
- getNodeKey: keyFromKey,
- };
-
- it('should handle nested data #1', () => {
- const result = insertNode({
- ...nestedParams,
- depth: 1,
- minimumTreeIndex: 4,
- });
-
- expect(result.treeData[0].children[1]).toEqual(nestedParams.newNode);
- expect(result.treeIndex).toEqual(5);
- expect(result.path).toEqual([0, 'new']);
- });
-
- it('should handle nested data #2', () => {
- let result = insertNode({
- ...nestedParams,
- depth: 2,
- ignoreCollapsed: true,
- minimumTreeIndex: 5,
- });
-
- expect(result.treeData[0].children[0].children[3]).toEqual(
- nestedParams.newNode
- );
- expect(result.treeIndex).toEqual(5);
- expect(result.path).toEqual([0, 1, 'new']);
-
- result = insertNode({
- ...nestedParams,
- depth: 2,
- ignoreCollapsed: false,
- minimumTreeIndex: 5,
- });
-
- expect(result.treeData[0].children[0].children[2]).toEqual(
- nestedParams.newNode
- );
- expect(result.treeIndex).toEqual(5);
- expect(result.path).toEqual([0, 1, 'new']);
- });
-
- it('should handle nested data #3', () => {
- const result = insertNode({
- ...nestedParams,
- depth: 3,
- minimumTreeIndex: 3,
- });
-
- expect(result.treeData[0].children[0].children[0].children[0]).toEqual(
- nestedParams.newNode
- );
- expect(result.treeIndex).toEqual(3);
- expect(result.path).toEqual([0, 1, 2, 'new']);
- });
-
- it('should handle nested data #4', () => {
- expect(
- insertNode({
- treeData: [
- { key: 0, expanded: true, children: [{ key: 1 }] },
- { key: 2 },
- ],
- newNode: { key: 'new' },
- depth: 1,
- minimumTreeIndex: 3,
- getNodeKey: keyFromTreeIndex,
- })
- ).toEqual({
- parentNode: { key: 2, children: [{ key: 'new' }] },
- treeData: [
- { key: 0, expanded: true, children: [{ key: 1 }] },
- { key: 2, children: [{ key: 'new' }] },
- ],
- treeIndex: 3,
- path: [2, 3],
- });
- });
-
- it('should work with a preceding node with children #1', () => {
- expect(
- insertNode({
- treeData: [{ children: [{}] }, { expanded: true, children: [{}, {}] }],
- newNode: { key: 'new' },
- depth: 1,
- minimumTreeIndex: 3,
- getNodeKey: keyFromTreeIndex,
- })
- ).toEqual({
- parentNode: { expanded: true, children: [{}, { key: 'new' }, {}] },
- treeData: [
- { children: [{}] },
- { expanded: true, children: [{}, { key: 'new' }, {}] },
- ],
- treeIndex: 3,
- path: [1, 3],
- });
- });
-
- it('should work with a preceding node with children #2', () => {
- expect(
- insertNode({
- treeData: [{ children: [{}] }, { expanded: true, children: [{}, {}] }],
- newNode: { key: 'new' },
- depth: 2,
- minimumTreeIndex: 4,
- getNodeKey: keyFromTreeIndex,
- })
- ).toEqual({
- parentNode: { children: [{ key: 'new' }] },
- treeData: [
- { children: [{}] },
- { expanded: true, children: [{}, { children: [{ key: 'new' }] }] },
- ],
- treeIndex: 4,
- path: [1, 3, 4],
- });
- });
-
- it('should work with a preceding node with children #3', () => {
- expect(
- insertNode({
- treeData: [
- { children: [{}, {}, {}, {}] },
- { expanded: true, children: [{}, {}] },
- ],
- newNode: { key: 'new' },
- depth: 2,
- minimumTreeIndex: 4,
- getNodeKey: keyFromTreeIndex,
- })
- ).toEqual({
- parentNode: { children: [{ key: 'new' }] },
- treeData: [
- { children: [{}, {}, {}, {}] },
- { expanded: true, children: [{}, { children: [{ key: 'new' }] }] },
- ],
- treeIndex: 4,
- path: [1, 3, 4],
- });
- });
-
- it('should work with nodes with an empty children array', () => {
- expect(
- insertNode({
- treeData: [
- {
- expanded: true,
- children: [
- {
- expanded: true,
- children: [{ children: [] }],
- },
- ],
- },
- ],
- newNode: { key: 'new' },
- depth: 2,
- minimumTreeIndex: 2,
- getNodeKey: keyFromTreeIndex,
- })
- ).toEqual({
- parentNode: {
- expanded: true,
- children: [{ key: 'new' }, { children: [] }],
- },
- treeData: [
- {
- expanded: true,
- children: [
- {
- expanded: true,
- children: [{ key: 'new' }, { children: [] }],
- },
- ],
- },
- ],
- treeIndex: 2,
- path: [0, 1, 2],
- });
- });
-});
-
-describe('walk', () => {
- it('should handle empty data', () => {
- [[], null, undefined].forEach(treeData => {
- expect(() =>
- walk({
- treeData,
- getNodeKey: keyFromTreeIndex,
- callback: () => {
- throw new Error('callback ran');
- },
- })
- ).not.toThrow();
- });
- });
-
- it('should handle flat and nested data', () => {
- [
- {
- treeData: [{}],
- expected: 1,
- },
- {
- treeData: [{}, {}],
- expected: 2,
- },
- {
- treeData: [{}, { children: [{}] }, {}],
- expected: 3,
- },
- {
- treeData: [{}, { children: [{}] }, {}],
- ignoreCollapsed: false,
- expected: 4,
- },
- ].forEach(({ treeData, expected, ignoreCollapsed = true }) => {
- let callCount = 0;
- walk({
- treeData,
- ignoreCollapsed,
- getNodeKey: keyFromTreeIndex,
- callback: () => {
- callCount += 1;
- },
- });
-
- expect(callCount).toEqual(expected);
- });
- });
-
- it('should return correct params', () => {
- const paths = [[0], [1], [1, 2], [3]];
- let counter = 0;
-
- walk({
- treeData: [{}, { children: [{}] }, {}],
- ignoreCollapsed: false,
- getNodeKey: keyFromTreeIndex,
- callback: ({ treeIndex, path }) => {
- expect(treeIndex).toEqual(counter);
- expect(path).toEqual(paths[treeIndex]);
- counter += 1;
- },
- });
- });
-
- it('should cut walk short when false is returned', () => {
- const treeData = [
- {
- expanded: true,
- key: 0,
- children: [{ key: 2 }, { key: 3 }],
- },
- { key: 6 },
- ];
-
- expect(() =>
- walk({
- treeData,
- getNodeKey: keyFromTreeIndex,
- callback: ({ node }) => {
- if (node.key === 2) {
- // Cut walk short with false
- return false;
- }
- if (node.key === 3) {
- throw new Error('walk not terminated by false');
- }
-
- return true;
- },
- })
- ).not.toThrow();
- });
-
- it('can get parents while walking', () => {
- const treeData = [
- { key: 1, children: [{ key: 12, children: [{ key: 3 }] }, { key: 4 }] },
- { key: 5 },
- ];
- const results = [];
- walk({
- treeData,
- getNodeKey: keyFromTreeIndex,
- ignoreCollapsed: false,
- callback: ({ parentNode }) => {
- results.push(parentNode ? parentNode.key : null);
- },
- });
-
- expect(results).toEqual([null, 1, 12, 1, null]);
- });
-});
-
-describe('getTreeFromFlatData', () => {
- const rootKey = -1;
- const argDefaults = {
- rootKey,
- getKey: node => node.key,
- getParentKey: node => node.parentKey,
- };
-
- const checkFunction = ({ flatData, expected }) => {
- expect(
- getTreeFromFlatData({
- ...argDefaults,
- flatData,
- })
- ).toEqual(expected);
- };
-
- it('should handle empty data', () => {
- [
- { flatData: [], expected: [] },
- { flatData: null, expected: [] },
- { flatData: undefined, expected: [] },
- ].forEach(checkFunction);
- });
-
- it('should handle [depth == 1] data', () => {
- [
- {
- flatData: [
- { key: 1, parentKey: rootKey },
- { key: 2, parentKey: rootKey },
- ],
- expected: [
- { key: 1, parentKey: rootKey },
- { key: 2, parentKey: rootKey },
- ],
- },
- {
- flatData: [
- { key: '1', parentKey: rootKey },
- { key: '2', parentKey: rootKey },
- ],
- expected: [
- { key: '1', parentKey: rootKey },
- { key: '2', parentKey: rootKey },
- ],
- },
- ].forEach(checkFunction);
- });
-
- it('should handle [depth == 2] data', () => {
- [
- {
- flatData: [{ key: 1, parentKey: rootKey }, { key: 2, parentKey: 1 }],
- expected: [
- {
- key: 1,
- parentKey: rootKey,
- children: [{ key: 2, parentKey: 1 }],
- },
- ],
- },
- {
- flatData: [
- { key: '1', parentKey: rootKey },
- { key: '2', parentKey: '1' },
- ],
- expected: [
- {
- key: '1',
- parentKey: rootKey,
- children: [{ key: '2', parentKey: '1' }],
- },
- ],
- },
- ].forEach(checkFunction);
- });
-
- it('should handle [depth > 2] nested data', () => {
- [
- {
- flatData: [
- { key: 3, parentKey: 2 },
- { key: 1, parentKey: rootKey },
- { key: 2, parentKey: 1 },
- ],
- expected: [
- {
- key: 1,
- parentKey: rootKey,
- children: [
- {
- key: 2,
- parentKey: 1,
- children: [{ key: 3, parentKey: 2 }],
- },
- ],
- },
- ],
- },
- {
- flatData: [
- { key: 4, parentKey: 2 },
- { key: 3, parentKey: 2 },
- { key: 7, parentKey: rootKey },
- { key: 1, parentKey: rootKey },
- { key: 2, parentKey: 1 },
- { key: 6, parentKey: 1 },
- ],
- expected: [
- { key: 7, parentKey: rootKey },
- {
- key: 1,
- parentKey: rootKey,
- children: [
- {
- key: 2,
- parentKey: 1,
- children: [{ key: 4, parentKey: 2 }, { key: 3, parentKey: 2 }],
- },
- { key: 6, parentKey: 1 },
- ],
- },
- ],
- },
- ].forEach(checkFunction);
- });
-});
-
-describe('map', () => {
- const checkFunction = ({
- treeData,
- getNodeKey,
- callback,
- ignoreCollapsed,
- expected,
- }) => {
- expect(
- map({
- treeData,
- getNodeKey,
- callback,
- ignoreCollapsed,
- })
- ).toEqual(expected);
- };
-
- it('should handle empty data', () => {
- [
- {
- treeData: [],
- getNodeKey: keyFromKey,
- callback: ({ node }) => node,
- expected: [],
- },
- {
- treeData: null,
- getNodeKey: keyFromKey,
- callback: ({ node }) => node,
- expected: [],
- },
- {
- treeData: undefined,
- getNodeKey: keyFromKey,
- callback: ({ node }) => node,
- expected: [],
- },
- ].forEach(checkFunction);
- });
-
- it('can return tree as-is', () => {
- [
- {
- getNodeKey: keyFromKey,
- callback: ({ node }) => node,
- treeData: [{ key: 1 }, { key: 2 }],
- expected: [{ key: 1 }, { key: 2 }],
- },
- {
- getNodeKey: keyFromKey,
- callback: ({ node }) => node,
- treeData: [{ key: 1, children: [{ key: 2 }] }],
- expected: [{ key: 1, children: [{ key: 2 }] }],
- },
- {
- getNodeKey: keyFromKey,
- callback: ({ node }) => node,
- treeData: [
- {
- key: 1,
- children: [{ key: 12, children: [{ key: 3 }] }, { key: 4 }],
- },
- { key: 5 },
- ],
- expected: [
- {
- key: 1,
- children: [{ key: 12, children: [{ key: 3 }] }, { key: 4 }],
- },
- { key: 5 },
- ],
- },
- ].forEach(checkFunction);
- });
-
- it('can truncate part of the tree', () => {
- [
- {
- getNodeKey: keyFromKey,
- callback: ({ node }) =>
- node.key === 1 ? { ...node, children: [] } : node,
- treeData: [
- {
- key: 1,
- children: [{ key: 12, children: [{ key: 3 }] }, { key: 4 }],
- },
- { key: 5 },
- ],
- expected: [{ key: 1, children: [] }, { key: 5 }],
- },
- ].forEach(checkFunction);
- });
-
- it('can get parents', () => {
- checkFunction({
- getNodeKey: keyFromKey,
- callback: ({ node, parentNode }) => ({
- ...node,
- parentKey: parentNode ? parentNode.key : null,
- }),
- ignoreCollapsed: false,
- treeData: [
- {
- key: 1,
- children: [
- {
- key: 12,
- children: [{ key: 3 }],
- },
- { key: 4 },
- ],
- },
- { key: 5 },
- ],
- expected: [
- {
- key: 1,
- parentKey: null,
- children: [
- {
- key: 12,
- parentKey: 1,
- children: [
- {
- key: 3,
- parentKey: 12,
- },
- ],
- },
- {
- key: 4,
- parentKey: 1,
- },
- ],
- },
- {
- key: 5,
- parentKey: null,
- },
- ],
- });
- });
-
- it('can sort part of the tree', () => {
- [
- {
- getNodeKey: keyFromKey,
- callback: ({ node }) =>
- !node.children
- ? node
- : {
- ...node,
- children: node.children.sort((a, b) => a.key - b.key),
- },
- treeData: [
- {
- key: 1,
- expanded: true,
- children: [
- {
- key: 12,
- expanded: true,
- children: [{ key: 33 }, { key: 3 }],
- },
- { key: 4 },
- ],
- },
- { key: 5 },
- ],
- expected: [
- {
- key: 1,
- expanded: true,
- children: [
- { key: 4 },
- {
- key: 12,
- expanded: true,
- children: [{ key: 3 }, { key: 33 }],
- },
- ],
- },
- { key: 5 },
- ],
- },
- ].forEach(checkFunction);
- });
-
- it('can modify every node in the tree', () => {
- [
- {
- getNodeKey: keyFromKey,
- callback: ({ node }) => ({ ...node, expanded: true }),
- ignoreCollapsed: false,
- treeData: [
- {
- key: 1,
- children: [
- {
- key: 12,
- children: [{ key: 33 }, { key: 3 }],
- },
- { key: 4 },
- ],
- },
- { key: 5 },
- ],
- expected: [
- {
- key: 1,
- expanded: true,
- children: [
- {
- key: 12,
- expanded: true,
- children: [
- { key: 33, expanded: true },
- { key: 3, expanded: true },
- ],
- },
- { key: 4, expanded: true },
- ],
- },
- { key: 5, expanded: true },
- ],
- },
- ].forEach(checkFunction);
- });
-});
-
-describe('isDescendant', () => {
- const treeData = [
- {
- key: 1,
- children: [
- {
- key: 12,
- children: [{ key: 33 }, { key: 3 }],
- },
- { key: 4 },
- ],
- },
- { key: 5 },
- ];
-
- it('should work at the base', () => {
- expect(isDescendant(treeData[0], treeData[0])).toEqual(false);
- expect(isDescendant(treeData[0], treeData[1])).toEqual(false);
- expect(isDescendant(treeData[0], treeData[0].children[1])).toEqual(true);
- });
-
- it('should work deeper in the tree', () => {
- expect(
- isDescendant(treeData[0].children[0], treeData[0].children[0].children[1])
- ).toEqual(true);
- });
-});
-
-describe('getDepth', () => {
- const treeData = [
- {
- key: 1,
- children: [
- {
- key: 12,
- children: [{ key: 33 }, { key: 3 }],
- },
- { key: 4 },
- ],
- },
- { key: 5 },
- ];
-
- it('should work at the base', () => {
- expect(getDepth(treeData[0])).toEqual(2);
- expect(getDepth(treeData[1])).toEqual(0);
- });
-
- it('should work deeper in the tree', () => {
- expect(getDepth(treeData[0].children[0])).toEqual(1);
- });
-});
-
-describe('getDescendantCount', () => {
- it('should count flat data', () => {
- expect(getDescendantCount({ ignoreCollapsed: false, node: {} })).toEqual(0);
- expect(
- getDescendantCount({ ignoreCollapsed: false, node: { children: [] } })
- ).toEqual(0);
- expect(
- getDescendantCount({ ignoreCollapsed: false, node: { children: [{}] } })
- ).toEqual(1);
- expect(
- getDescendantCount({
- ignoreCollapsed: false,
- node: { children: [{}, {}] },
- })
- ).toEqual(2);
- });
-
- it('should count nested data', () => {
- const nested = {
- expanded: true,
- children: [{}, { children: [{}] }, {}],
- };
-
- expect(
- getDescendantCount({ ignoreCollapsed: false, node: nested })
- ).toEqual(4);
- expect(getDescendantCount({ ignoreCollapsed: true, node: nested })).toEqual(
- 3
- );
- });
-});
-
-describe('find', () => {
- const commonArgs = {
- searchQuery: 42,
- searchMethod: ({ node, searchQuery }) => node.key === searchQuery,
- expandAllMatchPaths: false,
- expandFocusMatchPaths: true,
- getNodeKey: keyFromKey,
- searchFocusOffset: 0,
- };
-
- it('should work with flat data', () => {
- let result;
-
- result = find({ ...commonArgs, treeData: [{}] });
- expect(result.matches).toEqual([]);
-
- result = find({ ...commonArgs, treeData: [{ key: 41 }] });
- expect(result.matches).toEqual([]);
-
- result = find({ ...commonArgs, treeData: [{ key: 42 }] });
- expect(result.matches).toEqual([
- { node: { key: 42 }, treeIndex: 0, path: [42] },
- ]);
- expect(result.matches[commonArgs.searchFocusOffset].treeIndex).toEqual(0);
-
- result = find({ ...commonArgs, treeData: [{ key: 41 }, { key: 42 }] });
- expect(result.matches).toEqual([
- { node: { key: 42 }, treeIndex: 1, path: [42] },
- ]);
- expect(result.matches[commonArgs.searchFocusOffset].treeIndex).toEqual(1);
-
- result = find({ ...commonArgs, treeData: [{ key: 42 }, { key: 42 }] });
- expect(result.matches).toEqual([
- { node: { key: 42 }, treeIndex: 0, path: [42] },
- { node: { key: 42 }, treeIndex: 1, path: [42] },
- ]);
- expect(result.matches[commonArgs.searchFocusOffset].treeIndex).toEqual(0);
-
- result = find({
- ...commonArgs,
- searchFocusOffset: 3,
- treeData: [
- { key: 1 },
- { key: 42 },
- { key: 3 },
- { key: 3 },
- { key: 3 },
- { key: 4 },
- { key: 42 },
- { key: 42 },
- { key: 4 },
- { key: 42 },
- ],
- });
- expect(result.matches).toEqual([
- { node: { key: 42 }, treeIndex: 1, path: [42] },
- { node: { key: 42 }, treeIndex: 6, path: [42] },
- { node: { key: 42 }, treeIndex: 7, path: [42] },
- { node: { key: 42 }, treeIndex: 9, path: [42] },
- ]);
- expect(result.matches[3].treeIndex).toEqual(9);
- });
-
- it('should work with nested data', () => {
- let result;
-
- result = find({
- ...commonArgs,
- treeData: [{ children: [{ key: 42 }] }],
- });
- expect(result.matches.length).toEqual(1);
- expect(result.matches[commonArgs.searchFocusOffset].treeIndex).toEqual(1);
-
- result = find({
- ...commonArgs,
- treeData: [{ children: [{ key: 41 }] }, { children: [{ key: 42 }] }],
- });
- expect(result.matches.length).toEqual(1);
- expect(result.matches[commonArgs.searchFocusOffset].treeIndex).toEqual(2);
- expect(result.treeData).toEqual([
- { children: [{ key: 41 }] },
- { expanded: true, children: [{ key: 42 }] },
- ]);
-
- result = find({
- ...commonArgs,
- treeData: [{ children: [{ children: [{ key: 42 }] }] }],
- });
- expect(result.matches.length).toEqual(1);
- expect(result.matches[commonArgs.searchFocusOffset].treeIndex).toEqual(2);
-
- result = find({
- ...commonArgs,
- treeData: [{ children: [{ key: 42, children: [{ key: 42 }] }] }],
- });
- expect(result.matches.length).toEqual(2);
- expect(result.matches[commonArgs.searchFocusOffset].treeIndex).toEqual(1);
-
- result = find({
- ...commonArgs,
- treeData: [
- {},
- { children: [{ key: 42, expanded: true, children: [{ key: 42 }] }] },
- ],
- });
- expect(result.matches.length).toEqual(2);
- expect(result.matches[commonArgs.searchFocusOffset].treeIndex).toEqual(2);
-
- result = find({
- ...commonArgs,
- treeData: [
- {},
- { children: [{ key: 1, expanded: true, children: [{ key: 1 }] }] },
- ],
- });
- expect(result.matches.length).toEqual(0);
- });
-});
-
-describe('toggleExpandedForAll', () => {
- it('should expand all', () => {
- expect(
- toggleExpandedForAll({
- treeData: [{ children: [{ children: [{}] }] }],
- })
- ).toEqual([
- {
- expanded: true,
- children: [{ expanded: true, children: [{ expanded: true }] }],
- },
- ]);
- });
- it('should collapse all', () => {
- expect(
- toggleExpandedForAll({
- expanded: false,
- treeData: [
- {
- expanded: true,
- children: [{ expanded: true, children: [{ expanded: true }] }],
- },
- ],
- })
- ).toEqual([
- {
- expanded: false,
- children: [{ expanded: false, children: [{ expanded: false }] }],
- },
- ]);
- });
-});
diff --git a/src/utils/tree-data-utils.ts b/src/utils/tree-data-utils.ts
new file mode 100644
index 00000000..828663c6
--- /dev/null
+++ b/src/utils/tree-data-utils.ts
@@ -0,0 +1,1162 @@
+import { TreeData, TreeNode, Path } from '../types';
+
+type LowerSiblingCounts = number[];
+
+type FoundResult = {
+ node: TreeNode;
+ lowerSiblingCounts: LowerSiblingCounts;
+ path: Path;
+};
+type CallbackNodeInfo = {
+ node: TreeNode;
+ parentNode: TreeNode | null;
+ path: Path;
+ lowerSiblingCounts: LowerSiblingCounts;
+ treeIndex: number;
+};
+type MissedResult = { nextIndex: number };
+
+const getNodePath = (
+ node: TreeNode,
+ parentPath: Path,
+ isPseudoRoot = false
+): Path =>
+ // The pseudo-root is not considered in the path
+ isPseudoRoot ? [] : [...parentPath, node.nodeId];
+
+/**
+ * Performs a depth-first traversal over all of the node descendants,
+ * incrementing currentIndex by 1 for each
+ */
+function getNodeDataAtTreeIndexOrNextIndex(
+ targetIndex: number,
+ node: TreeNode,
+ currentIndex: number,
+ path: Path = [],
+ lowerSiblingCounts: LowerSiblingCounts = [],
+ ignoreCollapsed = true,
+ isPseudoRoot = false
+): FoundResult | MissedResult {
+ const selfPath = getNodePath(node, path, isPseudoRoot);
+
+ // Return target node when found
+ if (currentIndex === targetIndex) {
+ return {
+ node,
+ lowerSiblingCounts,
+ path: selfPath,
+ };
+ }
+
+ // Add one and continue for nodes with no children or hidden children
+ if (
+ !node.children ||
+ typeof node.children === 'function' ||
+ (ignoreCollapsed && node.expanded !== true)
+ ) {
+ return { nextIndex: currentIndex + 1 };
+ }
+
+ // Iterate over each child and their descendants and return the
+ // target node if childIndex reaches the targetIndex
+ let childIndex = currentIndex + 1;
+ const childCount = node.children.length;
+ for (let i = 0; i < childCount; i += 1) {
+ const result = getNodeDataAtTreeIndexOrNextIndex(
+ targetIndex,
+ node.children[i],
+ childIndex,
+ selfPath,
+ [...lowerSiblingCounts, childCount - i - 1],
+ ignoreCollapsed
+ );
+
+ if ('node' in result) {
+ return result;
+ }
+
+ childIndex = result.nextIndex;
+ }
+
+ // If the target node is not found, return the farthest traversed index
+ return { nextIndex: childIndex };
+}
+
+export function getDescendantCount(node: TreeNode, ignoreCollapsed = true) {
+ return (
+ (getNodeDataAtTreeIndexOrNextIndex(
+ -1, // Force a miss so we count all nodes below this one
+ node,
+ 0,
+ [],
+ [],
+ ignoreCollapsed
+ ) as MissedResult).nextIndex - 1
+ );
+}
+
+type WalkCallback = (arg: CallbackNodeInfo) => false | void;
+/**
+ * Walk all descendants of the given node, depth-first
+ *
+ * @param callback - Function to call on each node
+ * @param ignoreCollapsed - Ignore children of nodes without `expanded` set to `true`
+ * @param node - A tree node
+ * @param parentNode - The parent node of `node`
+ * @param currentIndex - The treeIndex of `node`
+ * @param path - Array of nodeIds leading up to node to be changed
+ * @param lowerSiblingCounts - An array containing the count of siblings beneath the
+ * previous nodes in this path
+ * @param isPseudoRoot - If true, this node has no real data, and only serves
+ * as the parent of all the nodes in the tree
+ *
+ * @return nextIndex - Index of the next sibling of `node`,
+ * or false if the walk should be terminated
+ */
+function walkDescendants(
+ callback: WalkCallback,
+ ignoreCollapsed: boolean,
+ node: TreeNode,
+ currentIndex: number,
+ parentNode: TreeNode | null = null,
+ path: Path = [],
+ lowerSiblingCounts: LowerSiblingCounts = [],
+ isPseudoRoot = false
+): number | false {
+ // The pseudo-root is not considered in the path
+ const selfPath = getNodePath(node, path, isPseudoRoot);
+ const selfInfo = isPseudoRoot
+ ? null
+ : {
+ node,
+ parentNode,
+ path: selfPath,
+ lowerSiblingCounts,
+ treeIndex: currentIndex,
+ };
+
+ if (selfInfo !== null) {
+ const callbackResult = callback(selfInfo);
+
+ // Cut walk short if the callback returned false
+ if (callbackResult === false) {
+ return false;
+ }
+ }
+
+ // Return self on nodes with no children or hidden children
+ if (
+ !node.children ||
+ (node.expanded !== true && ignoreCollapsed && !isPseudoRoot)
+ ) {
+ return currentIndex;
+ }
+
+ // Get all descendants
+ let childIndex: number | false = currentIndex;
+ const childCount = node.children.length;
+ if (typeof node.children !== 'function') {
+ for (let i = 0; i < childCount; i += 1) {
+ childIndex = walkDescendants(
+ callback,
+ ignoreCollapsed,
+ node.children[i],
+ childIndex + 1,
+ isPseudoRoot ? null : node,
+ selfPath,
+ [...lowerSiblingCounts, childCount - i - 1]
+ );
+
+ // Cut walk short if the callback returned false
+ if (childIndex === false) {
+ return false;
+ }
+ }
+ }
+
+ return childIndex;
+}
+
+type MapCallbackFn = (arg: CallbackNodeInfo) => TreeNode;
+/**
+ * Perform a change on the given node and all its descendants, traversing the tree depth-first
+ *
+ * @param callback - Function to call on each node
+ * @param ignoreCollapsed - Ignore children of nodes without `expanded` set to `true`
+ * @param node - A tree node
+ * @param parentNode - The parent node of `node`
+ * @param currentIndex - The treeIndex of `node`
+ * @param path - Array of nodeIds leading up to node to be changed
+ * @param lowerSiblingCounts - An array containing the count of siblings beneath the
+ * previous nodes in this path
+ * @param isPseudoRoot - If true, this node has no real data, and only serves
+ * as the parent of all the nodes in the tree
+ */
+function mapDescendants(
+ callback: MapCallbackFn,
+ ignoreCollapsed: boolean,
+ node: TreeNode,
+ parentNode: TreeNode | null,
+ currentIndex: number,
+ path: Path,
+ lowerSiblingCounts: LowerSiblingCounts,
+ isPseudoRoot = false
+) {
+ const nextNode = { ...node };
+
+ const selfPath = getNodePath(nextNode, path, isPseudoRoot);
+ const selfInfo = {
+ node: nextNode,
+ parentNode,
+ path: selfPath,
+ lowerSiblingCounts,
+ treeIndex: currentIndex,
+ };
+
+ // Return self on nodes with no children or hidden children
+ if (
+ !nextNode.children ||
+ (nextNode.expanded !== true && ignoreCollapsed && !isPseudoRoot)
+ ) {
+ return {
+ treeIndex: currentIndex,
+ node: callback(selfInfo),
+ };
+ }
+
+ // Get all descendants
+ let childIndex = currentIndex;
+ const childCount = nextNode.children.length;
+ if (typeof nextNode.children !== 'function') {
+ nextNode.children = nextNode.children.map((child, i) => {
+ const mapResult = mapDescendants(
+ callback,
+ ignoreCollapsed,
+ child,
+ isPseudoRoot ? null : nextNode,
+ childIndex + 1,
+ selfPath,
+ [...lowerSiblingCounts, childCount - i - 1]
+ );
+ childIndex = mapResult.treeIndex;
+
+ return mapResult.node;
+ });
+ }
+
+ return {
+ node: callback(selfInfo),
+ treeIndex: childIndex,
+ };
+}
+
+/**
+ * Count all the visible (expanded) descendants in the tree data.
+ *
+ * @param treeData - Tree data
+ *
+ * @return count
+ */
+export function getVisibleNodeCount(treeData: TreeData) {
+ const traverse = (node: TreeNode): number => {
+ if (
+ !node.children ||
+ node.expanded !== true ||
+ typeof node.children === 'function'
+ ) {
+ return 1;
+ }
+
+ return (
+ 1 +
+ node.children.reduce(
+ (total, currentNode) => total + traverse(currentNode),
+ 0
+ )
+ );
+ };
+
+ return treeData.reduce(
+ (total: number, currentNode: TreeNode) => total + traverse(currentNode),
+ 0
+ );
+}
+
+/**
+ * Get the th visible node in the tree data.
+ *
+ * @param treeData - Tree data
+ * @param targetIndex - The index of the node to search for
+ *
+ * @return node - The node at targetIndex, or null if not found
+ */
+export function getVisibleNodeInfoAtIndex(
+ treeData: TreeData,
+ targetIndex: number
+) {
+ if (treeData.length < 1) {
+ return null;
+ }
+
+ // Call the tree traversal with a pseudo-root node
+ const result = getNodeDataAtTreeIndexOrNextIndex(
+ targetIndex,
+ {
+ nodeId: '__rst_pseudo_root',
+ children: treeData,
+ expanded: true,
+ },
+ -1,
+ [],
+ [],
+ true,
+ true
+ );
+
+ if ('node' in result) {
+ return result;
+ }
+
+ return null;
+}
+
+/**
+ * Walk descendants depth-first and call a callback on each
+ *
+ * @param treeData - Tree data
+ * @param callback - Function to call on each node
+ * @param ignoreCollapsed - Ignore children of nodes without `expanded` set to `true`
+ *
+ * @return void
+ */
+export function walk(
+ treeData: TreeData,
+ callback: WalkCallback,
+ ignoreCollapsed = true
+) {
+ if (treeData.length < 1) {
+ return;
+ }
+
+ walkDescendants(
+ callback,
+ ignoreCollapsed,
+ { nodeId: '__rst_pseudo_root', children: treeData },
+ -1,
+ null,
+ [],
+ [],
+ true
+ );
+}
+
+/**
+ * Perform a depth-first transversal of the descendants and
+ * make a change to every node in the tree
+ *
+ * @param treeData - Tree data
+ * @param callback - Function to call on each node
+ * @param ignoreCollapsed - Ignore children of nodes without `expanded` set to `true`
+ *
+ * @return changedTreeData - The changed tree data
+ */
+export function map(
+ treeData: TreeData,
+ callback: MapCallbackFn,
+ ignoreCollapsed = true
+): TreeData {
+ if (!treeData || treeData.length < 1) {
+ return [];
+ }
+
+ return mapDescendants(
+ callback,
+ ignoreCollapsed,
+ { nodeId: '__rst_pseudo_root', children: treeData },
+ null,
+ -1,
+ [],
+ [],
+ true
+ ).node.children as TreeData;
+}
+
+/**
+ * Expand or close every node in the tree
+ *
+ * @param {!Object[]} treeData - Tree data
+ * @param {?boolean} expanded - Whether the node is expanded or not
+ *
+ * @return {Object[]} changedTreeData - The changed tree data
+ */
+export function toggleExpandedForAll(treeData: TreeData, expanded: boolean) {
+ return map(treeData, ({ node }) => ({ ...node, expanded }), false);
+}
+
+/**
+ * Replaces node at path with object, or callback-defined object
+ *
+ * @param treeData
+ * @param path - Array of nodeIds leading up to node to be changed
+ * @param newNode - TreeNode to replace the node at the path with, or a function producing the new node
+ * @param ignoreCollapsed - Ignore children of nodes without `expanded` set to `true`
+ *
+ * @return changedTreeData - The changed tree data
+ */
+export function changeNodeAtPath(
+ treeData: TreeData,
+ path: Path,
+ newNode:
+ | TreeNode
+ | (({
+ node,
+ treeIndex,
+ }: {
+ node: TreeNode;
+ treeIndex: number;
+ }) => TreeNode | null),
+ ignoreCollapsed = true
+) {
+ const RESULT_MISS = 'RESULT_MISS';
+ const traverse = (
+ node: TreeNode,
+ currentTreeIndex: number,
+ pathIndex: number,
+ isPseudoRoot = false
+ ): TreeNode | null | typeof RESULT_MISS => {
+ if (!isPseudoRoot && node.nodeId !== path[pathIndex]) {
+ return RESULT_MISS;
+ }
+
+ if (pathIndex >= path.length - 1) {
+ // If this is the final location in the path, return its changed form
+ return typeof newNode === 'function'
+ ? newNode({ node, treeIndex: currentTreeIndex })
+ : newNode;
+ }
+ if (!node.children || typeof node.children === 'function') {
+ // If this node is part of the path, but has no children,
+ // or the children have not been loaded,
+ // return the unchanged node
+ throw new Error('Path referenced children of node with no children.');
+ }
+
+ let nextTreeIndex = currentTreeIndex + 1;
+ for (let i = 0; i < node.children.length; i += 1) {
+ const result = traverse(node.children[i], nextTreeIndex, pathIndex + 1);
+
+ // If the result went down the correct path
+ if (result !== RESULT_MISS) {
+ if (result) {
+ // If the result was truthy (in this case, an object),
+ // pass it to the next level of recursion up
+ return {
+ ...node,
+ children: [
+ ...node.children.slice(0, i),
+ result,
+ ...node.children.slice(i + 1),
+ ],
+ };
+ }
+ // If the result was falsy (returned from the newNode function), then
+ // delete the node from the array.
+ return {
+ ...node,
+ children: [
+ ...node.children.slice(0, i),
+ ...node.children.slice(i + 1),
+ ],
+ };
+ }
+
+ nextTreeIndex +=
+ 1 + getDescendantCount(node.children[i], ignoreCollapsed);
+ }
+
+ return RESULT_MISS;
+ };
+
+ // Use a pseudo-root node in the beginning traversal
+ const result = traverse(
+ { nodeId: '__rst_pseudo_root', children: treeData },
+ -1,
+ -1,
+ true
+ );
+
+ if (result === RESULT_MISS) {
+ throw new Error('No node found at the given path.');
+ }
+
+ return (result as TreeNode).children;
+}
+
+/**
+ * Removes the node at the specified path and returns the resulting treeData.
+ *
+ * @param treeData
+ * @param path - Array of nodeIds leading up to node to be deleted
+ * @param ignoreCollapsed - Ignore children of nodes without `expanded` set to `true`
+ *
+ * @return result
+ * @return result.treeData - The tree data with the node removed
+ * @return result.node - The node that was removed
+ * @return result.treeIndex - The previous treeIndex of the removed node
+ */
+export function removeNodeAtPath(
+ treeData: TreeData,
+ path: Path,
+ ignoreCollapsed = true
+) {
+ let removedNode = null;
+ let removedTreeIndex = null;
+ const nextTreeData = changeNodeAtPath(
+ treeData,
+ path,
+ ({ node, treeIndex }: { node: TreeNode; treeIndex: number }) => {
+ // Store the target node and delete it from the tree
+ removedNode = node;
+ removedTreeIndex = treeIndex;
+
+ return null;
+ },
+ ignoreCollapsed
+ );
+
+ return {
+ treeData: nextTreeData,
+ node: removedNode,
+ treeIndex: removedTreeIndex,
+ };
+}
+
+/**
+ * Gets the node at the specified path
+ *
+ * @param treeData
+ * @param path - Array of nodeIds leading up to node to be deleted
+ * @param ignoreCollapsed - Ignore children of nodes without `expanded` set to `true`
+ *
+ * @return nodeInfo - The node info at the given path, or null if not found
+ */
+export function getNodeAtPath(
+ treeData: TreeData,
+ path: Path,
+ ignoreCollapsed = true
+) {
+ let foundNodeInfo = null;
+
+ try {
+ changeNodeAtPath(
+ treeData,
+ path,
+ ({ node, treeIndex }) => {
+ foundNodeInfo = { node, treeIndex };
+ return node;
+ },
+ ignoreCollapsed
+ );
+ } catch (err) {
+ // Ignore the error -- the null return will be explanation enough
+ }
+
+ return foundNodeInfo;
+}
+
+/**
+ * Adds the node to the specified parent and returns the resulting treeData.
+ *
+ * @param treeData
+ * @param newNode - The node to insert
+ * @param parentNodeId - The nodeId of the to-be parentNode of the node
+ * @param ignoreCollapsed - Ignore children of nodes without `expanded` set to `true`
+ * @param expandParent - If true, expands the parentNode specified by parentPath
+ * @param addAsFirstChild - If true, adds new node as first child of tree
+ *
+ * @return result
+ * @return result.treeData - The updated tree data
+ * @return result.treeIndex - The tree index at which the node was inserted
+ */
+export function addNodeUnderParent(
+ treeData: TreeData,
+ newNode: TreeNode,
+ parentNodeId: string | null = null,
+ addAsFirstChild = false,
+ ignoreCollapsed = true,
+ expandParent = false
+) {
+ if (parentNodeId === null) {
+ return addAsFirstChild
+ ? {
+ treeData: [newNode, ...(treeData || [])],
+ treeIndex: 0,
+ }
+ : {
+ treeData: [...(treeData || []), newNode],
+ treeIndex: (treeData || []).length,
+ };
+ }
+
+ let insertedTreeIndex: number | null = null;
+ let hasBeenAdded = false;
+ const changedTreeData = map(
+ treeData,
+ ({ node, treeIndex, path }) => {
+ const nodeId = path ? path[path.length - 1] : null;
+ // Return nodes that are not the parent as-is
+ if (hasBeenAdded || nodeId !== parentNodeId) {
+ return node;
+ }
+ hasBeenAdded = true;
+
+ const parentNode = {
+ ...node,
+ };
+
+ if (expandParent) {
+ parentNode.expanded = true;
+ }
+
+ // If no children exist yet, just add the single newNode
+ if (!parentNode.children) {
+ insertedTreeIndex = treeIndex + 1;
+ return {
+ ...parentNode,
+ children: [newNode],
+ };
+ }
+
+ if (typeof parentNode.children === 'function') {
+ throw new Error('Cannot add to children defined by a function');
+ }
+
+ let nextTreeIndex = treeIndex + 1;
+ for (let i = 0; i < parentNode.children.length; i += 1) {
+ nextTreeIndex +=
+ 1 + getDescendantCount(parentNode.children[i], ignoreCollapsed);
+ }
+
+ insertedTreeIndex = nextTreeIndex;
+
+ const children = addAsFirstChild
+ ? [newNode, ...parentNode.children]
+ : [...parentNode.children, newNode];
+
+ return {
+ ...parentNode,
+ children,
+ };
+ },
+ ignoreCollapsed
+ );
+
+ if (!hasBeenAdded) {
+ throw new Error('No node found with the given nodeId.');
+ }
+
+ return {
+ treeData: changedTreeData,
+ treeIndex: insertedTreeIndex,
+ };
+}
+
+type FailedInsertResult = {
+ node: TreeNode;
+ nextIndex: number;
+};
+type SuccessfulInsertResult = FailedInsertResult & {
+ insertedTreeIndex: number;
+ parentPath: Path;
+ parentNode: TreeNode | null;
+};
+type InsertResult = FailedInsertResult | SuccessfulInsertResult;
+function addNodeAtDepthAndIndex(
+ targetDepth: number,
+ newNode: TreeNode,
+ minimumTreeIndex: number,
+ ignoreCollapsed: boolean,
+ expandParent: boolean,
+ isLastChild: boolean,
+ node: TreeNode,
+ currentIndex: number,
+ currentDepth: number,
+ path: Path = [],
+ isPseudoRoot = false
+): InsertResult {
+ // If the current position is the only possible place to add, add it
+ if (
+ currentIndex >= minimumTreeIndex - 1 ||
+ (isLastChild && !(node.children && node.children.length))
+ ) {
+ if (typeof node.children === 'function') {
+ throw new Error('Cannot add to children defined by a function');
+ } else {
+ const extraNodeProps = expandParent ? { expanded: true } : {};
+ const nextNode = {
+ ...node,
+
+ ...extraNodeProps,
+ children: node.children ? [newNode, ...node.children] : [newNode],
+ };
+
+ return {
+ node: nextNode,
+ nextIndex: currentIndex + 2,
+ insertedTreeIndex: currentIndex + 1,
+ parentPath: getNodePath(nextNode, path, isPseudoRoot),
+ parentNode: isPseudoRoot ? null : nextNode,
+ };
+ }
+ }
+
+ // If this is the target depth for the insertion,
+ // i.e., where the newNode can be added to the current node's children
+ if (currentDepth >= targetDepth - 1) {
+ // Skip over nodes with no children or hidden children
+ if (
+ !node.children ||
+ typeof node.children === 'function' ||
+ (node.expanded !== true && ignoreCollapsed && !isPseudoRoot)
+ ) {
+ return { node, nextIndex: currentIndex + 1 };
+ }
+
+ // Scan over the children to see if there's a place among them that fulfills
+ // the minimumTreeIndex requirement
+ let childIndex = currentIndex + 1;
+ let insertedTreeIndex: number | undefined = undefined;
+ let insertIndex: number | undefined = undefined;
+ for (let i = 0; i < node.children.length; i += 1) {
+ // If a valid location is found, mark it as the insertion location and
+ // break out of the loop
+ if (childIndex >= minimumTreeIndex) {
+ insertedTreeIndex = childIndex;
+ insertIndex = i;
+ break;
+ }
+
+ // Increment the index by the child itself plus the number of descendants it has
+ childIndex += 1 + getDescendantCount(node.children[i], ignoreCollapsed);
+ }
+
+ // If no valid indices to add the node were found
+ if (insertIndex === undefined) {
+ // If the last position in this node's children is less than the minimum index
+ // and there are more children on the level of this node, return without insertion
+ if (childIndex < minimumTreeIndex && !isLastChild) {
+ return { node, nextIndex: childIndex };
+ }
+
+ // Use the last position in the children array to insert the newNode
+ insertedTreeIndex = childIndex;
+ insertIndex = node.children.length;
+ }
+
+ // Insert the newNode at the insertIndex
+ const nextNode = {
+ ...node,
+ children: [
+ ...node.children.slice(0, insertIndex),
+ newNode,
+ ...node.children.slice(insertIndex),
+ ],
+ };
+
+ // Return node with successful insert result
+ return {
+ node: nextNode,
+ nextIndex: childIndex,
+ insertedTreeIndex,
+ parentPath: getNodePath(nextNode, path, isPseudoRoot),
+ parentNode: isPseudoRoot ? null : nextNode,
+ };
+ }
+
+ // Skip over nodes with no children or hidden children
+ if (
+ !node.children ||
+ typeof node.children === 'function' ||
+ (node.expanded !== true && ignoreCollapsed && !isPseudoRoot)
+ ) {
+ return { node, nextIndex: currentIndex + 1 };
+ }
+
+ // Get all descendants
+ let insertedTreeIndex: number | null = null;
+ let pathFragment: Path = [];
+ let parentNode = null;
+ let childIndex = currentIndex + 1;
+ let newChildren = node.children;
+ if (typeof newChildren !== 'function') {
+ newChildren = newChildren.map((child, i) => {
+ if (insertedTreeIndex !== null) {
+ return child;
+ }
+
+ const mapResult = addNodeAtDepthAndIndex(
+ targetDepth,
+ newNode,
+ minimumTreeIndex,
+ ignoreCollapsed,
+ expandParent,
+ isLastChild && i === newChildren.length - 1,
+ child,
+ childIndex,
+ currentDepth + 1,
+ [] // Cannot determine the parent path until the children have been processed
+ );
+
+ if ('insertedTreeIndex' in mapResult) {
+ ({
+ insertedTreeIndex,
+ parentNode,
+ parentPath: pathFragment,
+ } = mapResult);
+ }
+
+ childIndex = mapResult.nextIndex;
+
+ return mapResult.node;
+ });
+ }
+
+ const nextNode = { ...node, children: newChildren };
+ const result: InsertResult = {
+ node: nextNode,
+ nextIndex: childIndex,
+ ...(insertedTreeIndex === null
+ ? {}
+ : {
+ insertedTreeIndex: insertedTreeIndex,
+ parentPath: [
+ ...getNodePath(nextNode, path, isPseudoRoot),
+ ...pathFragment,
+ ],
+ parentNode,
+ }),
+ };
+
+ return result;
+}
+
+/**
+ * Insert a node into the tree at the given depth, after the minimum index
+ *
+ * @param treeData - Tree data
+ * @param depth - The depth to insert the node at (the first level of the array being depth 0)
+ * @param minimumTreeIndex - The lowest possible treeIndex to insert the node at
+ * @param newNode - The node to insert into the tree
+ * @param ignoreCollapsed - Ignore children of nodes without `expanded` set to `true`
+ * @param expandParent - If true, expands the parent of the inserted node
+ *
+ * @return result
+ * @return result.treeData - The tree data with the node added
+ * @return result.treeIndex - The tree index at which the node was inserted
+ * @return result.path - Array of nodeIds leading to the node location after insertion
+ * @return result.parentNode - The parent node of the inserted node
+ */
+export function insertNode(
+ treeData: TreeData,
+ newNode: TreeNode,
+ targetDepth: number,
+ minimumTreeIndex: number,
+ ignoreCollapsed = true,
+ expandParent = false
+) {
+ if (!treeData && targetDepth === 0) {
+ return {
+ treeData: [newNode],
+ treeIndex: 0,
+ path: [newNode.nodeId],
+ parentNode: null,
+ };
+ }
+
+ const insertResult = addNodeAtDepthAndIndex(
+ targetDepth,
+ newNode,
+ minimumTreeIndex,
+ ignoreCollapsed,
+ expandParent,
+ true,
+ { nodeId: '__rst_pseudo_root', children: treeData },
+ -1,
+ -1,
+ [],
+ true
+ );
+
+ if (!('insertedTreeIndex' in insertResult)) {
+ throw new Error('No suitable position found to insert.');
+ }
+
+ const treeIndex = insertResult.insertedTreeIndex;
+ return {
+ treeData: insertResult.node.children,
+ treeIndex,
+ path: [...insertResult.parentPath, newNode.nodeId],
+ parentNode: insertResult.parentNode,
+ };
+}
+
+/**
+ * Get tree data flattened.
+ *
+ * @param treeData - Tree data
+ * @param ignoreCollapsed - Ignore children of nodes without `expanded` set to `true`
+ *
+ * @return nodes - The node array
+ */
+export function getFlatDataFromTree(
+ treeData: TreeData,
+ ignoreCollapsed = true
+) {
+ if (!treeData || treeData.length < 1) {
+ return [];
+ }
+
+ const flattened: CallbackNodeInfo[] = [];
+ walk(
+ treeData,
+ nodeInfo => {
+ flattened.push(nodeInfo);
+ },
+ ignoreCollapsed
+ );
+
+ return flattened;
+}
+
+type GetNodeIdFn = (obj: any) => string;
+/**
+ * Generate a tree structure from flat data.
+ *
+ * @param flatData
+ * @param getNodeId - Function to get the nodeId from the nodeData
+ * @param getParentNodeId - Function to get the parent nodeId from the nodeData
+ * @param rootNodeId - The value returned by `getParentNodeId` that corresponds to the root node.
+ * For example, if your nodes have id 1-99, you might use rootNodeId = 0
+ *
+ * @return treeData - The flat data represented as a tree
+ */
+export function getTreeFromFlatData(
+ flatData: Object[],
+ getNodeId: GetNodeIdFn = node => node.id,
+ getParentNodeId: GetNodeIdFn = node => node.parentId,
+ rootNodeId = '0'
+): TreeData {
+ const childrenToParents: { [nodeId: string]: Object[] } = {};
+ flatData.forEach(child => {
+ const parentNodeId = getParentNodeId(child);
+
+ if (parentNodeId in childrenToParents) {
+ childrenToParents[parentNodeId].push(child);
+ } else {
+ childrenToParents[parentNodeId] = [child];
+ }
+ });
+
+ if (!(rootNodeId in childrenToParents)) {
+ return [];
+ }
+
+ const trav = (parent: {}): TreeNode => {
+ const parentNodeId = getNodeId(parent);
+ const nextNode: Omit =
+ parentNodeId in childrenToParents
+ ? {
+ ...parent,
+ children: childrenToParents[parentNodeId].map(child => trav(child)),
+ }
+ : { ...parent };
+ return { ...nextNode, nodeId: getNodeId(nextNode) };
+ };
+
+ return childrenToParents[rootNodeId].map(child => trav(child));
+}
+
+/**
+ * Check if a node is a descendant of another node.
+ *
+ * @param older - Potential ancestor of younger node
+ * @param younger - Potential descendant of older node
+ *
+ * @return isDescendant
+ */
+export function isDescendant(older: TreeNode, younger: TreeNode): boolean {
+ return (
+ !!older.children &&
+ typeof older.children !== 'function' &&
+ older.children.some(
+ child => child === younger || isDescendant(child, younger)
+ )
+ );
+}
+
+/**
+ * Get the maximum depth of the children (the depth of the root node is 0).
+ *
+ * @param node - Node in the tree
+ * @param depth - The current depth
+ *
+ * @return maxDepth - The deepest depth in the tree
+ */
+export function getDepth(node: TreeNode, depth = 0): number {
+ if (!node.children) {
+ return depth;
+ }
+
+ if (typeof node.children === 'function') {
+ return depth + 1;
+ }
+
+ return node.children.reduce(
+ (deepest, child) => Math.max(deepest, getDepth(child, depth + 1)),
+ depth
+ );
+}
+
+type Match = { path?: Path; treeIndex?: number | null; node: TreeNode };
+type SearchMethod = (args: Match & { searchQuery: any }) => boolean;
+
+/**
+ * Find nodes matching a search query in the tree,
+ *
+ * @param treeData - Tree data
+ * @param searchQuery - Function returning a boolean to indicate whether the node is a match or not
+ * @param searchMethod - Function returning a boolean to indicate whether the node is a match or not
+ * @param searchFocusOffset - The offset of the match to focus on
+ * (e.g., 0 focuses on the first match, 1 on the second)
+ * @param expandAllMatchPaths - If true, expands the paths to any matched node
+ * @param expandFocusMatchPaths - If true, expands the path to the focused node
+ *
+ * @return result
+ * @return result.matches - An array of objects containing the matching `node`s, their `path`s and `treeIndex`s
+ * @return result.treeData - The original tree data with all relevant nodes expanded.
+ * If expandAllMatchPaths and expandFocusMatchPaths are both false,
+ * it will be the same as the original tree data.
+ */
+export function find(
+ treeData: TreeData,
+ searchQuery: any,
+ searchMethod: SearchMethod,
+ searchFocusOffset?: number,
+ expandAllMatchPaths = false,
+ expandFocusMatchPaths = true
+) {
+ let matchCount = 0;
+ const trav = (
+ node: TreeNode,
+ currentIndex: number,
+ path: Path,
+ isPseudoRoot = false
+ ) => {
+ let matches: Match[] = [];
+ let isSelfMatch = false;
+ let hasFocusMatch = false;
+
+ const selfPath = getNodePath(node, path, isPseudoRoot);
+ const extraInfo = isPseudoRoot
+ ? null
+ : {
+ path: selfPath,
+ treeIndex: currentIndex,
+ };
+
+ // Examine the current node to see if it is a match
+ if (!isPseudoRoot && searchMethod({ ...extraInfo, node, searchQuery })) {
+ if (matchCount === searchFocusOffset) {
+ hasFocusMatch = true;
+ }
+
+ // Keep track of the number of matching nodes, so we know when the searchFocusOffset
+ // is reached
+ matchCount += 1;
+
+ // We cannot add this node to the matches right away, as it may be changed
+ // during the search of the descendants. The entire node is used in
+ // comparisons between nodes inside the `matches` and `treeData` results
+ // of this method (`find`)
+ isSelfMatch = true;
+ }
+
+ let childIndex = currentIndex;
+ const newNode = { ...node };
+
+ // Nodes with with children that aren't lazy
+ if (
+ newNode.children &&
+ typeof newNode.children !== 'function' &&
+ newNode.children.length > 0
+ ) {
+ // Get all descendants
+ newNode.children = newNode.children.map(child => {
+ const mapResult = trav(child, childIndex + 1, selfPath);
+
+ // Ignore hidden nodes by only advancing the index counter to the returned treeIndex
+ // if the child is expanded.
+ //
+ // The child could have been expanded from the start,
+ // or expanded due to a matching node being found in its descendants
+ if (mapResult.node.expanded) {
+ childIndex = mapResult.treeIndex;
+ } else {
+ childIndex += 1;
+ }
+
+ if (mapResult.matches.length > 0 || mapResult.hasFocusMatch) {
+ matches = [...matches, ...mapResult.matches];
+ if (mapResult.hasFocusMatch) {
+ hasFocusMatch = true;
+ }
+
+ // Expand the current node if it has descendants matching the search
+ // and the settings are set to do so.
+ if (
+ (expandAllMatchPaths && mapResult.matches.length > 0) ||
+ ((expandAllMatchPaths || expandFocusMatchPaths) &&
+ mapResult.hasFocusMatch)
+ ) {
+ newNode.expanded = true;
+ }
+ }
+
+ return mapResult.node;
+ });
+ }
+
+ // Cannot assign a treeIndex to hidden nodes
+ if (!isPseudoRoot && !newNode.expanded) {
+ matches = matches.map(match => ({
+ ...match,
+ treeIndex: null,
+ }));
+ }
+
+ // Add this node to the matches if it fits the search criteria.
+ // This is performed at the last minute so newNode can be sent in its final form.
+ if (isSelfMatch) {
+ matches = [{ ...extraInfo, node: newNode }, ...matches];
+ }
+
+ return {
+ node: matches.length > 0 ? newNode : node,
+ matches,
+ hasFocusMatch,
+ treeIndex: childIndex,
+ };
+ };
+
+ const result = trav(
+ { nodeId: '__rst_pseudo_root', children: treeData },
+ -1,
+ [],
+ true
+ );
+
+ return {
+ matches: result.matches,
+ treeData: result.node.children,
+ };
+}
diff --git a/start.sh b/start.sh
new file mode 100755
index 00000000..4f85e80b
--- /dev/null
+++ b/start.sh
@@ -0,0 +1,6 @@
+#!/bin/bash
+
+set -e
+
+"$(npm bin)/tsc" --noEmit --watch &
+"$(npm bin)/parcel" -d build ./website/index.html
diff --git a/tsconfig.json b/tsconfig.json
new file mode 100644
index 00000000..e41b9f59
--- /dev/null
+++ b/tsconfig.json
@@ -0,0 +1,14 @@
+{
+ "compilerOptions": {
+ "esModuleInterop": true,
+ "jsx": "react",
+ "module": "es6",
+ "moduleResolution": "node",
+ "outDir": "./dist/",
+ "sourceMap": true,
+ "strict": true,
+ "target": "es5"
+ },
+ "include": ["./src/"],
+ "exclude": ["./dist/", "node_modules", "**/*.spec.ts", "**/*.spec.tsx"]
+}
diff --git a/website/index.js b/website/index.js
index f9c07807..9c0c6dc8 100644
--- a/website/index.js
+++ b/website/index.js
@@ -3,6 +3,8 @@ import ReactDOM from 'react-dom';
import './index.css';
import '../style.css';
+import './sandbox/styles.css';
+import SandboxApp from './sandbox/App';
class App extends React.Component {
render() {
@@ -33,11 +35,14 @@ class App extends React.Component {
Drag-and-drop sortable component for nested data and hierarchies
+
+ {/*
+ */}
);
}
diff --git a/website/sandbox/App.js b/website/sandbox/App.js
index 7d13b063..489e18bc 100644
--- a/website/sandbox/App.js
+++ b/website/sandbox/App.js
@@ -1,6 +1,6 @@
import React from 'react';
// eslint-disable-next-line import/no-unresolved
-import SortableTree, { toggleExpandedForAll } from 'react-sortable-tree';
+import SortableTree, { toggleExpandedForAll } from '../../src/index.ts';
import treeData from './treeData';
@@ -29,19 +29,25 @@ export default class App extends React.Component {
searchFoundCount: null,
treeData,
};
+
+ this.handleTreeOnChange = this.handleTreeOnChange.bind(this);
+ this.handleSearchOnChange = this.handleSearchOnChange.bind(this);
+ this.selectPrevMatch = this.selectPrevMatch.bind(this);
+ this.selectNextMatch = this.selectNextMatch.bind(this);
+ this.toggleNodeExpansion = this.toggleNodeExpansion.bind(this);
}
- handleTreeOnChange = treeData => {
+ handleTreeOnChange(treeData) {
this.setState({ treeData });
- };
+ }
- handleSearchOnChange = e => {
+ handleSearchOnChange(e) {
this.setState({
searchString: e.target.value,
});
- };
+ }
- selectPrevMatch = () => {
+ selectPrevMatch() {
const { searchFocusIndex, searchFoundCount } = this.state;
this.setState({
@@ -50,9 +56,9 @@ export default class App extends React.Component {
? (searchFoundCount + searchFocusIndex - 1) % searchFoundCount
: searchFoundCount - 1,
});
- };
+ }
- selectNextMatch = () => {
+ selectNextMatch() {
const { searchFocusIndex, searchFoundCount } = this.state;
this.setState({
@@ -61,16 +67,16 @@ export default class App extends React.Component {
? (searchFocusIndex + 1) % searchFoundCount
: 0,
});
- };
+ }
- toggleNodeExpansion = expanded => {
+ toggleNodeExpansion(expanded) {
this.setState(prevState => ({
treeData: toggleExpandedForAll({
treeData: prevState.treeData,
expanded,
}),
}));
- };
+ }
render() {
const {
diff --git a/website/sandbox/App2.tsx b/website/sandbox/App2.tsx
new file mode 100644
index 00000000..3263107d
--- /dev/null
+++ b/website/sandbox/App2.tsx
@@ -0,0 +1,106 @@
+import React from 'react';
+import SortableTree from '../../src/index';
+
+import treeData from './treeData';
+
+const maxDepth = 5;
+
+const alertNodeInfo = ({ node, path, treeIndex }) => {
+ const objectString = Object.keys(node)
+ .map(k => (k === 'children' ? 'children: Array' : `${k}: '${node[k]}'`))
+ .join(',\n ');
+
+ alert(
+ 'Info passed to the button generator:\n\n' +
+ `node: {\n ${objectString}\n},\n` +
+ `path: [${path.join(', ')}],\n` +
+ `treeIndex: ${treeIndex}`
+ );
+};
+
+export default App = () => {
+ const {
+ treeData,
+ searchString,
+ searchFocusIndex,
+ searchFoundCount,
+ } = this.state;
+
+ return (
+
+
+
+
+
+
+
+
+
+
+
+
+ global.console.debug(
+ 'node:',
+ node,
+ 'treeIndex:',
+ treeIndex,
+ 'path:',
+ path
+ )
+ }
+ maxDepth={maxDepth}
+ searchQuery={searchString}
+ searchFocusOffset={searchFocusIndex}
+ canDrag={({ node }) => !node.noDragging}
+ canDrop={({ nextParent }) => !nextParent || !nextParent.noChildren}
+ searchFinishCallback={matches =>
+ this.setState({
+ searchFoundCount: matches.length,
+ searchFocusIndex:
+ matches.length > 0 ? searchFocusIndex % matches.length : 0,
+ })
+ }
+ isVirtualized
+ generateNodeProps={rowInfo => ({
+ buttons: [
+ ,
+ ],
+ })}
+ />
+
+
+ );
+};
diff --git a/website/sandbox/package.json b/website/sandbox/online-package.json
similarity index 76%
rename from website/sandbox/package.json
rename to website/sandbox/online-package.json
index 797ead62..8bae970e 100644
--- a/website/sandbox/package.json
+++ b/website/sandbox/online-package.json
@@ -5,5 +5,8 @@
"react": "^16",
"react-dom": "^16",
"react-sortable-tree": "^2"
+ },
+ "devDependencies": {
+ "@babel/core": "^7.8.4"
}
}
diff --git a/yarn.lock b/yarn.lock
index d7459dd3..e8f8d109 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -2,10 +2,10 @@
# yarn lockfile v1
-"@babel/cli@^7.7.0":
- version "7.7.5"
- resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.7.5.tgz#25702cc65418efc06989af3727897b9f4c8690b6"
- integrity sha512-y2YrMGXM3NUyu1Myg0pxg+Lx6g8XhEyvLHYNRwTBV6fDek3H7Io6b7N/LXscLs4HWn4HxMdy7f2rM1rTMp2mFg==
+"@babel/cli@^7.8.4":
+ version "7.8.4"
+ resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.8.4.tgz#505fb053721a98777b2b175323ea4f090b7d3c1c"
+ integrity sha512-XXLgAm6LBbaNxaGhMAznXXaxtCWfuv6PIDJ9Alsy9JYTOh+j2jJz+L/162kkfU1j/pTSxK1xGmlwI4pdIMkoag==
dependencies:
commander "^4.0.1"
convert-source-map "^1.1.0"
@@ -18,51 +18,40 @@
optionalDependencies:
chokidar "^2.1.8"
-"@babel/code-frame@7.5.5", "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.5.5":
+"@babel/code-frame@7.5.5":
version "7.5.5"
resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.5.5.tgz#bc0782f6d69f7b7d49531219699b988f669a8f9d"
integrity sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw==
dependencies:
"@babel/highlight" "^7.0.0"
-"@babel/code-frame@^7.8.3":
+"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.8.3":
version "7.8.3"
resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.8.3.tgz#33e25903d7481181534e12ec0a25f16b6fcf419e"
integrity sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==
dependencies:
"@babel/highlight" "^7.8.3"
-"@babel/core@^7.1.0", "@babel/core@^7.4.4", "@babel/core@^7.4.5", "@babel/core@^7.7.2":
- version "7.7.5"
- resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.7.5.tgz#ae1323cd035b5160293307f50647e83f8ba62f7e"
- integrity sha512-M42+ScN4+1S9iB6f+TL7QBpoQETxbclx+KNoKJABghnKYE+fMzSGqst0BZJc8CpI625bwPwYgUyRvxZ+0mZzpw==
+"@babel/compat-data@^7.8.4":
+ version "7.8.5"
+ resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.8.5.tgz#d28ce872778c23551cbb9432fc68d28495b613b9"
+ integrity sha512-jWYUqQX/ObOhG1UiEkbH5SANsE/8oKXiQWjj7p7xgj9Zmnt//aUvyz4dBkK0HNsS8/cbyC5NmmH87VekW+mXFg==
dependencies:
- "@babel/code-frame" "^7.5.5"
- "@babel/generator" "^7.7.4"
- "@babel/helpers" "^7.7.4"
- "@babel/parser" "^7.7.5"
- "@babel/template" "^7.7.4"
- "@babel/traverse" "^7.7.4"
- "@babel/types" "^7.7.4"
- convert-source-map "^1.7.0"
- debug "^4.1.0"
- json5 "^2.1.0"
- lodash "^4.17.13"
- resolve "^1.3.2"
- semver "^5.4.1"
- source-map "^0.5.0"
+ browserslist "^4.8.5"
+ invariant "^2.2.4"
+ semver "^5.5.0"
-"@babel/core@^7.7.5":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.8.3.tgz#30b0ebb4dd1585de6923a0b4d179e0b9f5d82941"
- integrity sha512-4XFkf8AwyrEG7Ziu3L2L0Cv+WyY47Tcsp70JFmpftbAA1K7YL/sgE9jh9HyNj08Y/U50ItUchpN0w6HxAoX1rA==
+"@babel/core@^7.1.0", "@babel/core@^7.4.4", "@babel/core@^7.4.5", "@babel/core@^7.7.5", "@babel/core@^7.8.4":
+ version "7.8.4"
+ resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.8.4.tgz#d496799e5c12195b3602d0fddd77294e3e38e80e"
+ integrity sha512-0LiLrB2PwrVI+a2/IEskBopDYSd8BCb3rOvH7D5tzoWd696TBEduBvuLVm4Nx6rltrLZqvI3MCalB2K2aVzQjA==
dependencies:
"@babel/code-frame" "^7.8.3"
- "@babel/generator" "^7.8.3"
- "@babel/helpers" "^7.8.3"
- "@babel/parser" "^7.8.3"
+ "@babel/generator" "^7.8.4"
+ "@babel/helpers" "^7.8.4"
+ "@babel/parser" "^7.8.4"
"@babel/template" "^7.8.3"
- "@babel/traverse" "^7.8.3"
+ "@babel/traverse" "^7.8.4"
"@babel/types" "^7.8.3"
convert-source-map "^1.7.0"
debug "^4.1.0"
@@ -73,33 +62,16 @@
semver "^5.4.1"
source-map "^0.5.0"
-"@babel/generator@^7.4.0", "@babel/generator@^7.4.4", "@babel/generator@^7.7.4":
- version "7.7.4"
- resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.7.4.tgz#db651e2840ca9aa66f327dcec1dc5f5fa9611369"
- integrity sha512-m5qo2WgdOJeyYngKImbkyQrnUN1mPceaG5BV+G0E3gWsa4l/jCSryWJdM2x8OuGAOyh+3d5pVYfZWCiNFtynxg==
- dependencies:
- "@babel/types" "^7.7.4"
- jsesc "^2.5.1"
- lodash "^4.17.13"
- source-map "^0.5.0"
-
-"@babel/generator@^7.8.3":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.8.3.tgz#0e22c005b0a94c1c74eafe19ef78ce53a4d45c03"
- integrity sha512-WjoPk8hRpDRqqzRpvaR8/gDUPkrnOOeuT2m8cNICJtZH6mwaCo3v0OKMI7Y6SM1pBtyijnLtAL0HDi41pf41ug==
+"@babel/generator@^7.4.0", "@babel/generator@^7.4.4", "@babel/generator@^7.8.4":
+ version "7.8.4"
+ resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.8.4.tgz#35bbc74486956fe4251829f9f6c48330e8d0985e"
+ integrity sha512-PwhclGdRpNAf3IxZb0YVuITPZmmrXz9zf6fH8lT4XbrmfQKr6ryBzhv593P5C6poJRciFCL/eHGW2NuGrgEyxA==
dependencies:
"@babel/types" "^7.8.3"
jsesc "^2.5.1"
lodash "^4.17.13"
source-map "^0.5.0"
-"@babel/helper-annotate-as-pure@^7.0.0", "@babel/helper-annotate-as-pure@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.7.0.tgz#efc54032d43891fe267679e63f6860aa7dbf4a5e"
- integrity sha512-k50CQxMlYTYo+GGyUGFwpxKVtxVJi9yh61sXZji3zYHccK9RYliZGSTOgci85T+r+0VFN2nWbGM04PIqwfrpMg==
- dependencies:
- "@babel/types" "^7.7.0"
-
"@babel/helper-annotate-as-pure@^7.8.3":
version "7.8.3"
resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.8.3.tgz#60bc0bc657f63a0924ff9a4b4a0b24a13cf4deee"
@@ -107,30 +79,41 @@
dependencies:
"@babel/types" "^7.8.3"
-"@babel/helper-builder-binary-assignment-operator-visitor@^7.1.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.7.0.tgz#32dd9551d6ed3a5fc2edc50d6912852aa18274d9"
- integrity sha512-Cd8r8zs4RKDwMG/92lpZcnn5WPQ3LAMQbCw42oqUh4s7vsSN5ANUZjMel0OOnxDLq57hoDDbai+ryygYfCTOsw==
+"@babel/helper-builder-binary-assignment-operator-visitor@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.8.3.tgz#c84097a427a061ac56a1c30ebf54b7b22d241503"
+ integrity sha512-5eFOm2SyFPK4Rh3XMMRDjN7lBH0orh3ss0g3rTYZnBQ+r6YPj7lgDyCvPphynHvUrobJmeMignBr6Acw9mAPlw==
dependencies:
- "@babel/helper-explode-assignable-expression" "^7.7.0"
- "@babel/types" "^7.7.0"
+ "@babel/helper-explode-assignable-expression" "^7.8.3"
+ "@babel/types" "^7.8.3"
-"@babel/helper-builder-react-jsx@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.7.0.tgz#c6b8254d305bacd62beb648e4dea7d3ed79f352d"
- integrity sha512-LSln3cexwInTMYYoFeVLKnYPPMfWNJ8PubTBs3hkh7wCu9iBaqq1OOyW+xGmEdLxT1nhsl+9SJ+h2oUDYz0l2A==
+"@babel/helper-builder-react-jsx@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.8.3.tgz#dee98d7d79cc1f003d80b76fe01c7f8945665ff6"
+ integrity sha512-JT8mfnpTkKNCboTqZsQTdGo3l3Ik3l7QIt9hh0O9DYiwVel37VoJpILKM4YFbP2euF32nkQSb+F9cUk9b7DDXQ==
dependencies:
- "@babel/types" "^7.7.0"
+ "@babel/types" "^7.8.3"
esutils "^2.0.0"
-"@babel/helper-call-delegate@^7.4.4":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-call-delegate/-/helper-call-delegate-7.7.0.tgz#df8942452c2c1a217335ca7e393b9afc67f668dc"
- integrity sha512-Su0Mdq7uSSWGZayGMMQ+z6lnL00mMCnGAbO/R0ZO9odIdB/WNU/VfQKqMQU0fdIsxQYbRjDM4BixIa93SQIpvw==
+"@babel/helper-call-delegate@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/helper-call-delegate/-/helper-call-delegate-7.8.3.tgz#de82619898aa605d409c42be6ffb8d7204579692"
+ integrity sha512-6Q05px0Eb+N4/GTyKPPvnkig7Lylw+QzihMpws9iiZQv7ZImf84ZsZpQH7QoWN4n4tm81SnSzPgHw2qtO0Zf3A==
dependencies:
- "@babel/helper-hoist-variables" "^7.7.0"
- "@babel/traverse" "^7.7.0"
- "@babel/types" "^7.7.0"
+ "@babel/helper-hoist-variables" "^7.8.3"
+ "@babel/traverse" "^7.8.3"
+ "@babel/types" "^7.8.3"
+
+"@babel/helper-compilation-targets@^7.8.4":
+ version "7.8.4"
+ resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.8.4.tgz#03d7ecd454b7ebe19a254f76617e61770aed2c88"
+ integrity sha512-3k3BsKMvPp5bjxgMdrFyq0UaEO48HciVrOVF0+lon8pp95cyJ2ujAh0TrBHNMnJGT2rr0iKOJPFFbSqjDyf/Pg==
+ dependencies:
+ "@babel/compat-data" "^7.8.4"
+ browserslist "^4.8.5"
+ invariant "^2.2.4"
+ levenary "^1.1.1"
+ semver "^5.5.0"
"@babel/helper-create-class-features-plugin@^7.8.3":
version "7.8.3"
@@ -144,48 +127,30 @@
"@babel/helper-replace-supers" "^7.8.3"
"@babel/helper-split-export-declaration" "^7.8.3"
-"@babel/helper-create-regexp-features-plugin@^7.7.0":
- version "7.7.2"
- resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.7.2.tgz#6f20443778c8fce2af2ff4206284afc0ced65db6"
- integrity sha512-pAil/ZixjTlrzNpjx+l/C/wJk002Wo7XbbZ8oujH/AoJ3Juv0iN/UTcPUHXKMFLqsfS0Hy6Aow8M31brUYBlQQ==
+"@babel/helper-create-regexp-features-plugin@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.8.3.tgz#c774268c95ec07ee92476a3862b75cc2839beb79"
+ integrity sha512-Gcsm1OHCUr9o9TcJln57xhWHtdXbA2pgQ58S0Lxlks0WMGNXuki4+GLfX0p+L2ZkINUGZvfkz8rzoqJQSthI+Q==
dependencies:
- "@babel/helper-regex" "^7.4.4"
+ "@babel/helper-regex" "^7.8.3"
regexpu-core "^4.6.0"
-"@babel/helper-define-map@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.7.0.tgz#60b0e9fd60def9de5054c38afde8c8ee409c7529"
- integrity sha512-kPKWPb0dMpZi+ov1hJiwse9dWweZsz3V9rP4KdytnX1E7z3cTNmFGglwklzFPuqIcHLIY3bgKSs4vkwXXdflQA==
+"@babel/helper-define-map@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.8.3.tgz#a0655cad5451c3760b726eba875f1cd8faa02c15"
+ integrity sha512-PoeBYtxoZGtct3md6xZOCWPcKuMuk3IHhgxsRRNtnNShebf4C8YonTSblsK4tvDbm+eJAw2HAPOfCr+Q/YRG/g==
dependencies:
- "@babel/helper-function-name" "^7.7.0"
- "@babel/types" "^7.7.0"
+ "@babel/helper-function-name" "^7.8.3"
+ "@babel/types" "^7.8.3"
lodash "^4.17.13"
-"@babel/helper-explode-assignable-expression@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.7.0.tgz#db2a6705555ae1f9f33b4b8212a546bc7f9dc3ef"
- integrity sha512-CDs26w2shdD1urNUAji2RJXyBFCaR+iBEGnFz3l7maizMkQe3saVw9WtjG1tz8CwbjvlFnaSLVhgnu1SWaherg==
- dependencies:
- "@babel/traverse" "^7.7.0"
- "@babel/types" "^7.7.0"
-
-"@babel/helper-function-name@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.7.0.tgz#44a5ad151cfff8ed2599c91682dda2ec2c8430a3"
- integrity sha512-tDsJgMUAP00Ugv8O2aGEua5I2apkaQO7lBGUq1ocwN3G23JE5Dcq0uh3GvFTChPa4b40AWiAsLvCZOA2rdnQ7Q==
- dependencies:
- "@babel/helper-get-function-arity" "^7.7.0"
- "@babel/template" "^7.7.0"
- "@babel/types" "^7.7.0"
-
-"@babel/helper-function-name@^7.7.4":
- version "7.7.4"
- resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.7.4.tgz#ab6e041e7135d436d8f0a3eca15de5b67a341a2e"
- integrity sha512-AnkGIdiBhEuiwdoMnKm7jfPfqItZhgRaZfMg1XX3bS25INOnLPjPG1Ppnajh8eqgt5kPJnfqrRHqFqmjKDZLzQ==
+"@babel/helper-explode-assignable-expression@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.8.3.tgz#a728dc5b4e89e30fc2dfc7d04fa28a930653f982"
+ integrity sha512-N+8eW86/Kj147bO9G2uclsg5pwfs/fqqY5rwgIL7eTBklgXjcOJ3btzS5iM6AitJcftnY7pm2lGsrJVYLGjzIw==
dependencies:
- "@babel/helper-get-function-arity" "^7.7.4"
- "@babel/template" "^7.7.4"
- "@babel/types" "^7.7.4"
+ "@babel/traverse" "^7.8.3"
+ "@babel/types" "^7.8.3"
"@babel/helper-function-name@^7.8.3":
version "7.8.3"
@@ -196,20 +161,6 @@
"@babel/template" "^7.8.3"
"@babel/types" "^7.8.3"
-"@babel/helper-get-function-arity@^7.0.0", "@babel/helper-get-function-arity@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.7.0.tgz#c604886bc97287a1d1398092bc666bc3d7d7aa2d"
- integrity sha512-tLdojOTz4vWcEnHWHCuPN5P85JLZWbm5Fx5ZsMEMPhF3Uoe3O7awrbM2nQ04bDOUToH/2tH/ezKEOR8zEYzqyw==
- dependencies:
- "@babel/types" "^7.7.0"
-
-"@babel/helper-get-function-arity@^7.7.4":
- version "7.7.4"
- resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.7.4.tgz#cb46348d2f8808e632f0ab048172130e636005f0"
- integrity sha512-QTGKEdCkjgzgfJ3bAyRwF4yyT3pg+vDgan8DSivq1eS0gwi+KGKE5x8kRcbeFTb/673mkO5SN1IZfmCfA5o+EA==
- dependencies:
- "@babel/types" "^7.7.4"
-
"@babel/helper-get-function-arity@^7.8.3":
version "7.8.3"
resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz#b894b947bd004381ce63ea1db9f08547e920abd5"
@@ -217,19 +168,12 @@
dependencies:
"@babel/types" "^7.8.3"
-"@babel/helper-hoist-variables@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.7.0.tgz#b4552e4cfe5577d7de7b183e193e84e4ec538c81"
- integrity sha512-LUe/92NqsDAkJjjCEWkNe+/PcpnisvnqdlRe19FahVapa4jndeuJ+FBiTX1rcAKWKcJGE+C3Q3tuEuxkSmCEiQ==
- dependencies:
- "@babel/types" "^7.7.0"
-
-"@babel/helper-member-expression-to-functions@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.7.0.tgz#472b93003a57071f95a541ea6c2b098398bcad8a"
- integrity sha512-QaCZLO2RtBcmvO/ekOLp8p7R5X2JriKRizeDpm5ChATAFWrrYDcDxPuCIBXKyBjY+i1vYSdcUTMIb8psfxHDPA==
+"@babel/helper-hoist-variables@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.8.3.tgz#1dbe9b6b55d78c9b4183fc8cdc6e30ceb83b7134"
+ integrity sha512-ky1JLOjcDUtSc+xkt0xhYff7Z6ILTAHKmZLHPxAhOP0Nd77O+3nCsd6uSVYur6nJnCI029CrNbYlc0LoPfAPQg==
dependencies:
- "@babel/types" "^7.7.0"
+ "@babel/types" "^7.8.3"
"@babel/helper-member-expression-to-functions@^7.8.3":
version "7.8.3"
@@ -238,21 +182,14 @@
dependencies:
"@babel/types" "^7.8.3"
-"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.7.0.tgz#99c095889466e5f7b6d66d98dffc58baaf42654d"
- integrity sha512-Dv3hLKIC1jyfTkClvyEkYP2OlkzNvWs5+Q8WgPbxM5LMeorons7iPP91JM+DU7tRbhqA1ZeooPaMFvQrn23RHw==
- dependencies:
- "@babel/types" "^7.7.0"
-
-"@babel/helper-module-imports@^7.8.3":
+"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.8.3":
version "7.8.3"
resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.8.3.tgz#7fe39589b39c016331b6b8c3f441e8f0b1419498"
integrity sha512-R0Bx3jippsbAEtzkpZ/6FIiuzOURPcMjHp+Z6xPe6DtApDJx+w7UYyOLanZqO8+wKR9G10s/FmHXvxaMd9s6Kg==
dependencies:
"@babel/types" "^7.8.3"
-"@babel/helper-module-transforms@^7.1.0", "@babel/helper-module-transforms@^7.7.0", "@babel/helper-module-transforms@^7.8.3":
+"@babel/helper-module-transforms@^7.8.3":
version "7.8.3"
resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.8.3.tgz#d305e35d02bee720fbc2c3c3623aa0c316c01590"
integrity sha512-C7NG6B7vfBa/pwCOshpMbOYUmrYQDfCpVL/JCRu0ek8B5p8kue1+BCXpg2vOYs7w5ACB9GTOBYQ5U6NwrMg+3Q==
@@ -264,13 +201,6 @@
"@babel/types" "^7.8.3"
lodash "^4.17.13"
-"@babel/helper-optimise-call-expression@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.7.0.tgz#4f66a216116a66164135dc618c5d8b7a959f9365"
- integrity sha512-48TeqmbazjNU/65niiiJIJRc5JozB8acui1OS7bSd6PgxfuovWsvjfWSzlgx+gPFdVveNzUdpdIg5l56Pl5jqg==
- dependencies:
- "@babel/types" "^7.7.0"
-
"@babel/helper-optimise-call-expression@^7.8.3":
version "7.8.3"
resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.8.3.tgz#7ed071813d09c75298ef4f208956006b6111ecb9"
@@ -278,38 +208,28 @@
dependencies:
"@babel/types" "^7.8.3"
-"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.8.3":
+"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3":
version "7.8.3"
resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz#9ea293be19babc0f52ff8ca88b34c3611b208670"
integrity sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==
-"@babel/helper-regex@^7.0.0", "@babel/helper-regex@^7.4.4":
- version "7.5.5"
- resolved "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.5.5.tgz#0aa6824f7100a2e0e89c1527c23936c152cab351"
- integrity sha512-CkCYQLkfkiugbRDO8eZn6lRuR8kzZoGXCg3149iTk5se7g6qykSpy3+hELSwquhu+TgHn8nkLiBwHvNX8Hofcw==
+"@babel/helper-regex@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.8.3.tgz#139772607d51b93f23effe72105b319d2a4c6965"
+ integrity sha512-BWt0QtYv/cg/NecOAZMdcn/waj/5P26DR4mVLXfFtDokSR6fyuG0Pj+e2FqtSME+MqED1khnSMulkmGl8qWiUQ==
dependencies:
lodash "^4.17.13"
-"@babel/helper-remap-async-to-generator@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.7.0.tgz#4d69ec653e8bff5bce62f5d33fc1508f223c75a7"
- integrity sha512-pHx7RN8X0UNHPB/fnuDnRXVZ316ZigkO8y8D835JlZ2SSdFKb6yH9MIYRU4fy/KPe5sPHDFOPvf8QLdbAGGiyw==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.7.0"
- "@babel/helper-wrap-function" "^7.7.0"
- "@babel/template" "^7.7.0"
- "@babel/traverse" "^7.7.0"
- "@babel/types" "^7.7.0"
-
-"@babel/helper-replace-supers@^7.5.5", "@babel/helper-replace-supers@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.7.0.tgz#d5365c8667fe7cbd13b8ddddceb9bd7f2b387512"
- integrity sha512-5ALYEul5V8xNdxEeWvRsBzLMxQksT7MaStpxjJf9KsnLxpAKBtfw5NeMKZJSYDa0lKdOcy0g+JT/f5mPSulUgg==
+"@babel/helper-remap-async-to-generator@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.8.3.tgz#273c600d8b9bf5006142c1e35887d555c12edd86"
+ integrity sha512-kgwDmw4fCg7AVgS4DukQR/roGp+jP+XluJE5hsRZwxCYGg+Rv9wSGErDWhlI90FODdYfd4xG4AQRiMDjjN0GzA==
dependencies:
- "@babel/helper-member-expression-to-functions" "^7.7.0"
- "@babel/helper-optimise-call-expression" "^7.7.0"
- "@babel/traverse" "^7.7.0"
- "@babel/types" "^7.7.0"
+ "@babel/helper-annotate-as-pure" "^7.8.3"
+ "@babel/helper-wrap-function" "^7.8.3"
+ "@babel/template" "^7.8.3"
+ "@babel/traverse" "^7.8.3"
+ "@babel/types" "^7.8.3"
"@babel/helper-replace-supers@^7.8.3":
version "7.8.3"
@@ -329,20 +249,6 @@
"@babel/template" "^7.8.3"
"@babel/types" "^7.8.3"
-"@babel/helper-split-export-declaration@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.7.0.tgz#1365e74ea6c614deeb56ebffabd71006a0eb2300"
- integrity sha512-HgYSI8rH08neWlAH3CcdkFg9qX9YsZysZI5GD8LjhQib/mM0jGOZOVkoUiiV2Hu978fRtjtsGsW6w0pKHUWtqA==
- dependencies:
- "@babel/types" "^7.7.0"
-
-"@babel/helper-split-export-declaration@^7.7.4":
- version "7.7.4"
- resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.7.4.tgz#57292af60443c4a3622cf74040ddc28e68336fd8"
- integrity sha512-guAg1SXFcVr04Guk9eq0S4/rWS++sbmyqosJzVs8+1fH5NI+ZcmkaSkc7dmtAFbHFva6yRJnjW3yAcGxjueDug==
- dependencies:
- "@babel/types" "^7.7.4"
-
"@babel/helper-split-export-declaration@^7.8.3":
version "7.8.3"
resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz#31a9f30070f91368a7182cf05f831781065fc7a9"
@@ -350,44 +256,26 @@
dependencies:
"@babel/types" "^7.8.3"
-"@babel/helper-wrap-function@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.7.0.tgz#15af3d3e98f8417a60554acbb6c14e75e0b33b74"
- integrity sha512-sd4QjeMgQqzshSjecZjOp8uKfUtnpmCyQhKQrVJBBgeHAB/0FPi33h3AbVlVp07qQtMD4QgYSzaMI7VwncNK/w==
- dependencies:
- "@babel/helper-function-name" "^7.7.0"
- "@babel/template" "^7.7.0"
- "@babel/traverse" "^7.7.0"
- "@babel/types" "^7.7.0"
-
-"@babel/helpers@^7.7.4":
- version "7.7.4"
- resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.7.4.tgz#62c215b9e6c712dadc15a9a0dcab76c92a940302"
- integrity sha512-ak5NGZGJ6LV85Q1Zc9gn2n+ayXOizryhjSUBTdu5ih1tlVCJeuQENzc4ItyCVhINVXvIT/ZQ4mheGIsfBkpskg==
- dependencies:
- "@babel/template" "^7.7.4"
- "@babel/traverse" "^7.7.4"
- "@babel/types" "^7.7.4"
-
-"@babel/helpers@^7.8.3":
+"@babel/helper-wrap-function@^7.8.3":
version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.8.3.tgz#382fbb0382ce7c4ce905945ab9641d688336ce85"
- integrity sha512-LmU3q9Pah/XyZU89QvBgGt+BCsTPoQa+73RxAQh8fb8qkDyIfeQnmgs+hvzhTCKTzqOyk7JTkS3MS1S8Mq5yrQ==
+ resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.8.3.tgz#9dbdb2bb55ef14aaa01fe8c99b629bd5352d8610"
+ integrity sha512-LACJrbUET9cQDzb6kG7EeD7+7doC3JNvUgTEQOx2qaO1fKlzE/Bf05qs9w1oXQMmXlPO65lC3Tq9S6gZpTErEQ==
dependencies:
+ "@babel/helper-function-name" "^7.8.3"
"@babel/template" "^7.8.3"
"@babel/traverse" "^7.8.3"
"@babel/types" "^7.8.3"
-"@babel/highlight@^7.0.0":
- version "7.5.0"
- resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.5.0.tgz#56d11312bd9248fa619591d02472be6e8cb32540"
- integrity sha512-7dV4eu9gBxoM0dAnj/BCFDW9LFU0zvTrkq0ugM7pnHEgguOEeOz1so2ZghEdzviYzQEED0r4EAgpsBChKy1TRQ==
+"@babel/helpers@^7.8.4":
+ version "7.8.4"
+ resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.8.4.tgz#754eb3ee727c165e0a240d6c207de7c455f36f73"
+ integrity sha512-VPbe7wcQ4chu4TDQjimHv/5tj73qz88o12EPkO2ValS2QiQS/1F2SsjyIGNnAD0vF/nZS6Cf9i+vW6HIlnaR8w==
dependencies:
- chalk "^2.0.0"
- esutils "^2.0.2"
- js-tokens "^4.0.0"
+ "@babel/template" "^7.8.3"
+ "@babel/traverse" "^7.8.4"
+ "@babel/types" "^7.8.3"
-"@babel/highlight@^7.8.3":
+"@babel/highlight@^7.0.0", "@babel/highlight@^7.8.3":
version "7.8.3"
resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.8.3.tgz#28f173d04223eaaa59bc1d439a3836e6d1265797"
integrity sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==
@@ -396,24 +284,19 @@
esutils "^2.0.2"
js-tokens "^4.0.0"
-"@babel/parser@^7.0.0", "@babel/parser@^7.1.0", "@babel/parser@^7.4.3", "@babel/parser@^7.4.4", "@babel/parser@^7.7.4", "@babel/parser@^7.7.5":
- version "7.7.5"
- resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.7.5.tgz#cbf45321619ac12d83363fcf9c94bb67fa646d71"
- integrity sha512-KNlOe9+/nk4i29g0VXgl8PEXIRms5xKLJeuZ6UptN0fHv+jDiriG+y94X6qAgWTR0h3KaoM1wK5G5h7MHFRSig==
+"@babel/parser@^7.1.0", "@babel/parser@^7.4.3", "@babel/parser@^7.4.4", "@babel/parser@^7.7.5", "@babel/parser@^7.8.3", "@babel/parser@^7.8.4":
+ version "7.8.4"
+ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.8.4.tgz#d1dbe64691d60358a974295fa53da074dd2ce8e8"
+ integrity sha512-0fKu/QqildpXmPVaRBoXOlyBb3MC+J0A66x97qEfLOMkn3u6nfY5esWogQwi/K0BjASYy4DbnsEWnpNL6qT5Mw==
-"@babel/parser@^7.8.3":
+"@babel/plugin-proposal-async-generator-functions@^7.8.3":
version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.8.3.tgz#790874091d2001c9be6ec426c2eed47bc7679081"
- integrity sha512-/V72F4Yp/qmHaTALizEm9Gf2eQHV3QyTL3K0cNfijwnMnb1L+LDlAubb/ZnSdGAVzVSWakujHYs1I26x66sMeQ==
-
-"@babel/plugin-proposal-async-generator-functions@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.7.0.tgz#83ef2d6044496b4c15d8b4904e2219e6dccc6971"
- integrity sha512-ot/EZVvf3mXtZq0Pd0+tSOfGWMizqmOohXmNZg6LNFjHOV+wOPv7BvVYh8oPR8LhpIP3ye8nNooKL50YRWxpYA==
+ resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.8.3.tgz#bad329c670b382589721b27540c7d288601c6e6f"
+ integrity sha512-NZ9zLv848JsV3hs8ryEh7Uaz/0KsmPLqv0+PdkDJL1cJy0K4kOCFa8zc1E3mp+RHPQcpdfb/6GovEsW4VDrOMw==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
- "@babel/helper-remap-async-to-generator" "^7.7.0"
- "@babel/plugin-syntax-async-generators" "^7.2.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
+ "@babel/helper-remap-async-to-generator" "^7.8.3"
+ "@babel/plugin-syntax-async-generators" "^7.8.0"
"@babel/plugin-proposal-class-properties@^7.7.0":
version "7.8.3"
@@ -423,231 +306,275 @@
"@babel/helper-create-class-features-plugin" "^7.8.3"
"@babel/helper-plugin-utils" "^7.8.3"
-"@babel/plugin-proposal-dynamic-import@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.7.0.tgz#dc02a8bad8d653fb59daf085516fa416edd2aa7f"
- integrity sha512-7poL3Xi+QFPC7sGAzEIbXUyYzGJwbc2+gSD0AkiC5k52kH2cqHdqxm5hNFfLW3cRSTcx9bN0Fl7/6zWcLLnKAQ==
+"@babel/plugin-proposal-dynamic-import@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.8.3.tgz#38c4fe555744826e97e2ae930b0fb4cc07e66054"
+ integrity sha512-NyaBbyLFXFLT9FP+zk0kYlUlA8XtCUbehs67F0nnEg7KICgMc2mNkIeu9TYhKzyXMkrapZFwAhXLdnt4IYHy1w==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
- "@babel/plugin-syntax-dynamic-import" "^7.2.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
+ "@babel/plugin-syntax-dynamic-import" "^7.8.0"
-"@babel/plugin-proposal-json-strings@^7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.2.0.tgz#568ecc446c6148ae6b267f02551130891e29f317"
- integrity sha512-MAFV1CA/YVmYwZG0fBQyXhmj0BHCB5egZHCKWIFVv/XCxAeVGIHfos3SwDck4LvCllENIAg7xMKOG5kH0dzyUg==
+"@babel/plugin-proposal-json-strings@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.8.3.tgz#da5216b238a98b58a1e05d6852104b10f9a70d6b"
+ integrity sha512-KGhQNZ3TVCQG/MjRbAUwuH+14y9q0tpxs1nWWs3pbSleRdDro9SAMMDyye8HhY1gqZ7/NqIc8SKhya0wRDgP1Q==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
- "@babel/plugin-syntax-json-strings" "^7.2.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
+ "@babel/plugin-syntax-json-strings" "^7.8.0"
-"@babel/plugin-proposal-object-rest-spread@^7.6.2":
- version "7.6.2"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.6.2.tgz#8ffccc8f3a6545e9f78988b6bf4fe881b88e8096"
- integrity sha512-LDBXlmADCsMZV1Y9OQwMc0MyGZ8Ta/zlD9N67BfQT8uYwkRswiu2hU6nJKrjrt/58aH/vqfQlR/9yId/7A2gWw==
+"@babel/plugin-proposal-nullish-coalescing-operator@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.8.3.tgz#e4572253fdeed65cddeecfdab3f928afeb2fd5d2"
+ integrity sha512-TS9MlfzXpXKt6YYomudb/KU7nQI6/xnapG6in1uZxoxDghuSMZsPb6D2fyUwNYSAp4l1iR7QtFOjkqcRYcUsfw==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
- "@babel/plugin-syntax-object-rest-spread" "^7.2.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
+ "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.0"
-"@babel/plugin-proposal-optional-catch-binding@^7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.2.0.tgz#135d81edb68a081e55e56ec48541ece8065c38f5"
- integrity sha512-mgYj3jCcxug6KUcX4OBoOJz3CMrwRfQELPQ5560F70YQUBZB7uac9fqaWamKR1iWUzGiK2t0ygzjTScZnVz75g==
+"@babel/plugin-proposal-object-rest-spread@^7.6.2", "@babel/plugin-proposal-object-rest-spread@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.8.3.tgz#eb5ae366118ddca67bed583b53d7554cad9951bb"
+ integrity sha512-8qvuPwU/xxUCt78HocNlv0mXXo0wdh9VT1R04WU8HGOfaOob26pF+9P5/lYjN/q7DHOX1bvX60hnhOvuQUJdbA==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
- "@babel/plugin-syntax-optional-catch-binding" "^7.2.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
+ "@babel/plugin-syntax-object-rest-spread" "^7.8.0"
-"@babel/plugin-proposal-unicode-property-regex@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.7.0.tgz#549fe1717a1bd0a2a7e63163841cb37e78179d5d"
- integrity sha512-mk34H+hp7kRBWJOOAR0ZMGCydgKMD4iN9TpDRp3IIcbunltxEY89XSimc6WbtSLCDrwcdy/EEw7h5CFCzxTchw==
+"@babel/plugin-proposal-optional-catch-binding@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.8.3.tgz#9dee96ab1650eed88646ae9734ca167ac4a9c5c9"
+ integrity sha512-0gkX7J7E+AtAw9fcwlVQj8peP61qhdg/89D5swOkjYbkboA2CVckn3kiyum1DE0wskGb7KJJxBdyEBApDLLVdw==
dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.7.0"
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
+ "@babel/plugin-syntax-optional-catch-binding" "^7.8.0"
-"@babel/plugin-syntax-async-generators@^7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.2.0.tgz#69e1f0db34c6f5a0cf7e2b3323bf159a76c8cb7f"
- integrity sha512-1ZrIRBv2t0GSlcwVoQ6VgSLpLgiN/FVQUzt9znxo7v2Ov4jJrs8RY8tv0wvDmFN3qIdMKWrmMMW6yZ0G19MfGg==
+"@babel/plugin-proposal-optional-chaining@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.8.3.tgz#ae10b3214cb25f7adb1f3bc87ba42ca10b7e2543"
+ integrity sha512-QIoIR9abkVn+seDE3OjA08jWcs3eZ9+wJCKSRgo3WdEU2csFYgdScb+8qHB3+WXsGJD55u+5hWCISI7ejXS+kg==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
+ "@babel/plugin-syntax-optional-chaining" "^7.8.0"
-"@babel/plugin-syntax-dynamic-import@^7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.2.0.tgz#69c159ffaf4998122161ad8ebc5e6d1f55df8612"
- integrity sha512-mVxuJ0YroI/h/tbFTPGZR8cv6ai+STMKNBq0f8hFxsxWjl94qqhsb+wXbpNMDPU3cfR1TIsVFzU3nXyZMqyK4w==
+"@babel/plugin-proposal-unicode-property-regex@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.8.3.tgz#b646c3adea5f98800c9ab45105ac34d06cd4a47f"
+ integrity sha512-1/1/rEZv2XGweRwwSkLpY+s60za9OZ1hJs4YDqFHCw0kYWYwL5IFljVY1MYBL+weT1l9pokDO2uhSTLVxzoHkQ==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-create-regexp-features-plugin" "^7.8.3"
+ "@babel/helper-plugin-utils" "^7.8.3"
-"@babel/plugin-syntax-flow@^7.2.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.7.0.tgz#5c9465bcd26354d5215294ea90ab1c706a571386"
- integrity sha512-vQMV07p+L+jZeUnvX3pEJ9EiXGCjB5CTTvsirFD9rpEuATnoAvLBLoYbw1v5tyn3d2XxSuvEKi8cV3KqYUa0vQ==
+"@babel/plugin-syntax-async-generators@^7.8.0":
+ version "7.8.4"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d"
+ integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-plugin-utils" "^7.8.0"
-"@babel/plugin-syntax-json-strings@^7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.2.0.tgz#72bd13f6ffe1d25938129d2a186b11fd62951470"
- integrity sha512-5UGYnMSLRE1dqqZwug+1LISpA403HzlSfsg6P9VXU6TBjcSHeNlw4DxDx7LgpF+iKZoOG/+uzqoRHTdcUpiZNg==
+"@babel/plugin-syntax-bigint@^7.0.0":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea"
+ integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-plugin-utils" "^7.8.0"
-"@babel/plugin-syntax-jsx@^7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.2.0.tgz#0b85a3b4bc7cdf4cc4b8bf236335b907ca22e7c7"
- integrity sha512-VyN4QANJkRW6lDBmENzRszvZf3/4AXaj9YR7GwrWeeN9tEBPuXbmDYVU9bYBN0D70zCWVwUy0HWq2553VCb6Hw==
+"@babel/plugin-syntax-dynamic-import@^7.2.0", "@babel/plugin-syntax-dynamic-import@^7.8.0":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3"
+ integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-plugin-utils" "^7.8.0"
-"@babel/plugin-syntax-object-rest-spread@^7.0.0", "@babel/plugin-syntax-object-rest-spread@^7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.2.0.tgz#3b7a3e733510c57e820b9142a6579ac8b0dfad2e"
- integrity sha512-t0JKGgqk2We+9may3t0xDdmneaXmyxq0xieYcKHxIsrJO64n1OiMWNUtc5gQK1PA0NpdCRrtZp4z+IUaKugrSA==
+"@babel/plugin-syntax-flow@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.8.3.tgz#f2c883bd61a6316f2c89380ae5122f923ba4527f"
+ integrity sha512-innAx3bUbA0KSYj2E2MNFSn9hiCeowOFLxlsuhXzw8hMQnzkDomUr9QCD7E9VF60NmnG1sNTuuv6Qf4f8INYsg==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
-"@babel/plugin-syntax-optional-catch-binding@^7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.2.0.tgz#a94013d6eda8908dfe6a477e7f9eda85656ecf5c"
- integrity sha512-bDe4xKNhb0LI7IvZHiA13kff0KEfaGX/Hv4lMA9+7TEc63hMNvfKo6ZFpXhKuEp+II/q35Gc4NoMeDZyaUbj9w==
+"@babel/plugin-syntax-json-strings@^7.8.0":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a"
+ integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-plugin-utils" "^7.8.0"
-"@babel/plugin-syntax-top-level-await@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.7.0.tgz#f5699549f50bbe8d12b1843a4e82f0a37bb65f4d"
- integrity sha512-hi8FUNiFIY1fnUI2n1ViB1DR0R4QeK4iHcTlW6aJkrPoTdb8Rf1EMQ6GT3f67DDkYyWgew9DFoOZ6gOoEsdzTA==
+"@babel/plugin-syntax-jsx@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.8.3.tgz#521b06c83c40480f1e58b4fd33b92eceb1d6ea94"
+ integrity sha512-WxdW9xyLgBdefoo0Ynn3MRSkhe5tFVxxKNVdnZSh318WrG2e2jH+E9wd/++JsqcLJZPfz87njQJ8j2Upjm0M0A==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
-"@babel/plugin-transform-arrow-functions@^7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.2.0.tgz#9aeafbe4d6ffc6563bf8f8372091628f00779550"
- integrity sha512-ER77Cax1+8/8jCB9fo4Ud161OZzWN5qawi4GusDuRLcDbDG+bIGYY20zb2dfAFdTRGzrfq2xZPvF0R64EHnimg==
+"@babel/plugin-syntax-nullish-coalescing-operator@^7.8.0":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9"
+ integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-plugin-utils" "^7.8.0"
-"@babel/plugin-transform-async-to-generator@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.7.0.tgz#e2b84f11952cf5913fe3438b7d2585042772f492"
- integrity sha512-vLI2EFLVvRBL3d8roAMqtVY0Bm9C1QzLkdS57hiKrjUBSqsQYrBsMCeOg/0KK7B0eK9V71J5mWcha9yyoI2tZw==
+"@babel/plugin-syntax-object-rest-spread@^7.0.0", "@babel/plugin-syntax-object-rest-spread@^7.8.0":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871"
+ integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==
dependencies:
- "@babel/helper-module-imports" "^7.7.0"
- "@babel/helper-plugin-utils" "^7.0.0"
- "@babel/helper-remap-async-to-generator" "^7.7.0"
+ "@babel/helper-plugin-utils" "^7.8.0"
-"@babel/plugin-transform-block-scoped-functions@^7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.2.0.tgz#5d3cc11e8d5ddd752aa64c9148d0db6cb79fd190"
- integrity sha512-ntQPR6q1/NKuphly49+QiQiTN0O63uOwjdD6dhIjSWBI5xlrbUFh720TIpzBhpnrLfv2tNH/BXvLIab1+BAI0w==
+"@babel/plugin-syntax-optional-catch-binding@^7.8.0":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1"
+ integrity sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-plugin-utils" "^7.8.0"
-"@babel/plugin-transform-block-scoping@^7.6.3":
- version "7.6.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.6.3.tgz#6e854e51fbbaa84351b15d4ddafe342f3a5d542a"
- integrity sha512-7hvrg75dubcO3ZI2rjYTzUrEuh1E9IyDEhhB6qfcooxhDA33xx2MasuLVgdxzcP6R/lipAC6n9ub9maNW6RKdw==
+"@babel/plugin-syntax-optional-chaining@^7.8.0":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a"
+ integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-plugin-utils" "^7.8.0"
+
+"@babel/plugin-syntax-top-level-await@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.8.3.tgz#3acdece695e6b13aaf57fc291d1a800950c71391"
+ integrity sha512-kwj1j9lL/6Wd0hROD3b/OZZ7MSrZLqqn9RAZ5+cYYsflQ9HZBIKCUkr3+uL1MEJ1NePiUbf98jjiMQSv0NMR9g==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.8.3"
+
+"@babel/plugin-syntax-typescript@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.8.3.tgz#c1f659dda97711a569cef75275f7e15dcaa6cabc"
+ integrity sha512-GO1MQ/SGGGoiEXY0e0bSpHimJvxqB7lktLLIq2pv8xG7WZ8IMEle74jIe1FhprHBWjwjZtXHkycDLZXIWM5Wfg==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.8.3"
+
+"@babel/plugin-transform-arrow-functions@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.8.3.tgz#82776c2ed0cd9e1a49956daeb896024c9473b8b6"
+ integrity sha512-0MRF+KC8EqH4dbuITCWwPSzsyO3HIWWlm30v8BbbpOrS1B++isGxPnnuq/IZvOX5J2D/p7DQalQm+/2PnlKGxg==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.8.3"
+
+"@babel/plugin-transform-async-to-generator@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.8.3.tgz#4308fad0d9409d71eafb9b1a6ee35f9d64b64086"
+ integrity sha512-imt9tFLD9ogt56Dd5CI/6XgpukMwd/fLGSrix2httihVe7LOGVPhyhMh1BU5kDM7iHD08i8uUtmV2sWaBFlHVQ==
+ dependencies:
+ "@babel/helper-module-imports" "^7.8.3"
+ "@babel/helper-plugin-utils" "^7.8.3"
+ "@babel/helper-remap-async-to-generator" "^7.8.3"
+
+"@babel/plugin-transform-block-scoped-functions@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.8.3.tgz#437eec5b799b5852072084b3ae5ef66e8349e8a3"
+ integrity sha512-vo4F2OewqjbB1+yaJ7k2EJFHlTP3jR634Z9Cj9itpqNjuLXvhlVxgnjsHsdRgASR8xYDrx6onw4vW5H6We0Jmg==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.8.3"
+
+"@babel/plugin-transform-block-scoping@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.8.3.tgz#97d35dab66857a437c166358b91d09050c868f3a"
+ integrity sha512-pGnYfm7RNRgYRi7bids5bHluENHqJhrV4bCZRwc5GamaWIIs07N4rZECcmJL6ZClwjDz1GbdMZFtPs27hTB06w==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.8.3"
lodash "^4.17.13"
-"@babel/plugin-transform-classes@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.7.0.tgz#b411ecc1b8822d24b81e5d184f24149136eddd4a"
- integrity sha512-/b3cKIZwGeUesZheU9jNYcwrEA7f/Bo4IdPmvp7oHgvks2majB5BoT5byAql44fiNQYOPzhk2w8DbgfuafkMoA==
+"@babel/plugin-transform-classes@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.8.3.tgz#46fd7a9d2bb9ea89ce88720477979fe0d71b21b8"
+ integrity sha512-SjT0cwFJ+7Rbr1vQsvphAHwUHvSUPmMjMU/0P59G8U2HLFqSa082JO7zkbDNWs9kH/IUqpHI6xWNesGf8haF1w==
dependencies:
- "@babel/helper-annotate-as-pure" "^7.7.0"
- "@babel/helper-define-map" "^7.7.0"
- "@babel/helper-function-name" "^7.7.0"
- "@babel/helper-optimise-call-expression" "^7.7.0"
- "@babel/helper-plugin-utils" "^7.0.0"
- "@babel/helper-replace-supers" "^7.7.0"
- "@babel/helper-split-export-declaration" "^7.7.0"
+ "@babel/helper-annotate-as-pure" "^7.8.3"
+ "@babel/helper-define-map" "^7.8.3"
+ "@babel/helper-function-name" "^7.8.3"
+ "@babel/helper-optimise-call-expression" "^7.8.3"
+ "@babel/helper-plugin-utils" "^7.8.3"
+ "@babel/helper-replace-supers" "^7.8.3"
+ "@babel/helper-split-export-declaration" "^7.8.3"
globals "^11.1.0"
-"@babel/plugin-transform-computed-properties@^7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.2.0.tgz#83a7df6a658865b1c8f641d510c6f3af220216da"
- integrity sha512-kP/drqTxY6Xt3NNpKiMomfgkNn4o7+vKxK2DDKcBG9sHj51vHqMBGy8wbDS/J4lMxnqs153/T3+DmCEAkC5cpA==
+"@babel/plugin-transform-computed-properties@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.8.3.tgz#96d0d28b7f7ce4eb5b120bb2e0e943343c86f81b"
+ integrity sha512-O5hiIpSyOGdrQZRQ2ccwtTVkgUDBBiCuK//4RJ6UfePllUTCENOzKxfh6ulckXKc0DixTFLCfb2HVkNA7aDpzA==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
-"@babel/plugin-transform-destructuring@^7.6.0":
- version "7.6.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.6.0.tgz#44bbe08b57f4480094d57d9ffbcd96d309075ba6"
- integrity sha512-2bGIS5P1v4+sWTCnKNDZDxbGvEqi0ijeqM/YqHtVGrvG2y0ySgnEEhXErvE9dA0bnIzY9bIzdFK0jFA46ASIIQ==
+"@babel/plugin-transform-destructuring@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.8.3.tgz#20ddfbd9e4676906b1056ee60af88590cc7aaa0b"
+ integrity sha512-H4X646nCkiEcHZUZaRkhE2XVsoz0J/1x3VVujnn96pSoGCtKPA99ZZA+va+gK+92Zycd6OBKCD8tDb/731bhgQ==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
-"@babel/plugin-transform-dotall-regex@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.7.0.tgz#c5c9ecacab3a5e0c11db6981610f0c32fd698b3b"
- integrity sha512-3QQlF7hSBnSuM1hQ0pS3pmAbWLax/uGNCbPBND9y+oJ4Y776jsyujG2k0Sn2Aj2a0QwVOiOFL5QVPA7spjvzSA==
+"@babel/plugin-transform-dotall-regex@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.8.3.tgz#c3c6ec5ee6125c6993c5cbca20dc8621a9ea7a6e"
+ integrity sha512-kLs1j9Nn4MQoBYdRXH6AeaXMbEJFaFu/v1nQkvib6QzTj8MZI5OQzqmD83/2jEM1z0DLilra5aWO5YpyC0ALIw==
dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.7.0"
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-create-regexp-features-plugin" "^7.8.3"
+ "@babel/helper-plugin-utils" "^7.8.3"
-"@babel/plugin-transform-duplicate-keys@^7.5.0":
- version "7.5.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.5.0.tgz#c5dbf5106bf84cdf691222c0974c12b1df931853"
- integrity sha512-igcziksHizyQPlX9gfSjHkE2wmoCH3evvD2qR5w29/Dk0SMKE/eOI7f1HhBdNhR/zxJDqrgpoDTq5YSLH/XMsQ==
+"@babel/plugin-transform-duplicate-keys@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.8.3.tgz#8d12df309aa537f272899c565ea1768e286e21f1"
+ integrity sha512-s8dHiBUbcbSgipS4SMFuWGqCvyge5V2ZeAWzR6INTVC3Ltjig/Vw1G2Gztv0vU/hRG9X8IvKvYdoksnUfgXOEQ==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
-"@babel/plugin-transform-exponentiation-operator@^7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.2.0.tgz#a63868289e5b4007f7054d46491af51435766008"
- integrity sha512-umh4hR6N7mu4Elq9GG8TOu9M0bakvlsREEC+ialrQN6ABS4oDQ69qJv1VtR3uxlKMCQMCvzk7vr17RHKcjx68A==
+"@babel/plugin-transform-exponentiation-operator@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.8.3.tgz#581a6d7f56970e06bf51560cd64f5e947b70d7b7"
+ integrity sha512-zwIpuIymb3ACcInbksHaNcR12S++0MDLKkiqXHl3AzpgdKlFNhog+z/K0+TGW+b0w5pgTq4H6IwV/WhxbGYSjQ==
dependencies:
- "@babel/helper-builder-binary-assignment-operator-visitor" "^7.1.0"
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-builder-binary-assignment-operator-visitor" "^7.8.3"
+ "@babel/helper-plugin-utils" "^7.8.3"
-"@babel/plugin-transform-flow-strip-types@^7.0.0", "@babel/plugin-transform-flow-strip-types@^7.4.4":
- version "7.6.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.6.3.tgz#8110f153e7360cfd5996eee68706cfad92d85256"
- integrity sha512-l0ETkyEofkqFJ9LS6HChNIKtVJw2ylKbhYMlJ5C6df+ldxxaLIyXY4yOdDQQspfFpV8/vDiaWoJlvflstlYNxg==
+"@babel/plugin-transform-flow-strip-types@^7.4.4", "@babel/plugin-transform-flow-strip-types@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.8.3.tgz#da705a655466b2a9b36046b57bf0cbcd53551bd4"
+ integrity sha512-g/6WTWG/xbdd2exBBzMfygjX/zw4eyNC4X8pRaq7aRHRoDUCzAIu3kGYIXviOv8BjCuWm8vDBwjHcjiRNgXrPA==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
- "@babel/plugin-syntax-flow" "^7.2.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
+ "@babel/plugin-syntax-flow" "^7.8.3"
-"@babel/plugin-transform-for-of@^7.4.4":
- version "7.4.4"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.4.4.tgz#0267fc735e24c808ba173866c6c4d1440fc3c556"
- integrity sha512-9T/5Dlr14Z9TIEXLXkt8T1DU7F24cbhwhMNUziN3hB1AXoZcdzPcTiKGRn/6iOymDqtTKWnr/BtRKN9JwbKtdQ==
+"@babel/plugin-transform-for-of@^7.8.4":
+ version "7.8.4"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.8.4.tgz#6fe8eae5d6875086ee185dd0b098a8513783b47d"
+ integrity sha512-iAXNlOWvcYUYoV8YIxwS7TxGRJcxyl8eQCfT+A5j8sKUzRFvJdcyjp97jL2IghWSRDaL2PU2O2tX8Cu9dTBq5A==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
-"@babel/plugin-transform-function-name@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.7.0.tgz#0fa786f1eef52e3b7d4fc02e54b2129de8a04c2a"
- integrity sha512-P5HKu0d9+CzZxP5jcrWdpe7ZlFDe24bmqP6a6X8BHEBl/eizAsY8K6LX8LASZL0Jxdjm5eEfzp+FIrxCm/p8bA==
+"@babel/plugin-transform-function-name@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.8.3.tgz#279373cb27322aaad67c2683e776dfc47196ed8b"
+ integrity sha512-rO/OnDS78Eifbjn5Py9v8y0aR+aSYhDhqAwVfsTl0ERuMZyr05L1aFSCJnbv2mmsLkit/4ReeQ9N2BgLnOcPCQ==
dependencies:
- "@babel/helper-function-name" "^7.7.0"
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-function-name" "^7.8.3"
+ "@babel/helper-plugin-utils" "^7.8.3"
-"@babel/plugin-transform-literals@^7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.2.0.tgz#690353e81f9267dad4fd8cfd77eafa86aba53ea1"
- integrity sha512-2ThDhm4lI4oV7fVQ6pNNK+sx+c/GM5/SaML0w/r4ZB7sAneD/piDJtwdKlNckXeyGK7wlwg2E2w33C/Hh+VFCg==
+"@babel/plugin-transform-literals@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.8.3.tgz#aef239823d91994ec7b68e55193525d76dbd5dc1"
+ integrity sha512-3Tqf8JJ/qB7TeldGl+TT55+uQei9JfYaregDcEAyBZ7akutriFrt6C/wLYIer6OYhleVQvH/ntEhjE/xMmy10A==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
-"@babel/plugin-transform-member-expression-literals@^7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.2.0.tgz#fa10aa5c58a2cb6afcf2c9ffa8cb4d8b3d489a2d"
- integrity sha512-HiU3zKkSU6scTidmnFJ0bMX8hz5ixC93b4MHMiYebmk2lUVNGOboPsqQvx5LzooihijUoLR/v7Nc1rbBtnc7FA==
+"@babel/plugin-transform-member-expression-literals@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.8.3.tgz#963fed4b620ac7cbf6029c755424029fa3a40410"
+ integrity sha512-3Wk2EXhnw+rP+IDkK6BdtPKsUE5IeZ6QOGrPYvw52NwBStw9V1ZVzxgK6fSKSxqUvH9eQPR3tm3cOq79HlsKYA==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
-"@babel/plugin-transform-modules-amd@^7.5.0":
- version "7.5.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.5.0.tgz#ef00435d46da0a5961aa728a1d2ecff063e4fb91"
- integrity sha512-n20UsQMKnWrltocZZm24cRURxQnWIvsABPJlw/fvoy9c6AgHZzoelAIzajDHAQrDpuKFFPPcFGd7ChsYuIUMpg==
+"@babel/plugin-transform-modules-amd@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.8.3.tgz#65606d44616b50225e76f5578f33c568a0b876a5"
+ integrity sha512-MadJiU3rLKclzT5kBH4yxdry96odTUwuqrZM+GllFI/VhxfPz+k9MshJM+MwhfkCdxxclSbSBbUGciBngR+kEQ==
dependencies:
- "@babel/helper-module-transforms" "^7.1.0"
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-module-transforms" "^7.8.3"
+ "@babel/helper-plugin-utils" "^7.8.3"
babel-plugin-dynamic-import-node "^2.3.0"
-"@babel/plugin-transform-modules-commonjs@^7.1.0", "@babel/plugin-transform-modules-commonjs@^7.4.4", "@babel/plugin-transform-modules-commonjs@^7.7.0":
+"@babel/plugin-transform-modules-commonjs@^7.1.0", "@babel/plugin-transform-modules-commonjs@^7.4.4", "@babel/plugin-transform-modules-commonjs@^7.8.3":
version "7.8.3"
resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.8.3.tgz#df251706ec331bd058a34bdd72613915f82928a5"
integrity sha512-JpdMEfA15HZ/1gNuB9XEDlZM1h/gF/YOH7zaZzQu2xCFRfwc01NXBMHHSTT6hRjlXJJs5x/bfODM3LiCk94Sxg==
@@ -657,60 +584,61 @@
"@babel/helper-simple-access" "^7.8.3"
babel-plugin-dynamic-import-node "^2.3.0"
-"@babel/plugin-transform-modules-systemjs@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.7.0.tgz#9baf471213af9761c1617bb12fd278e629041417"
- integrity sha512-ZAuFgYjJzDNv77AjXRqzQGlQl4HdUM6j296ee4fwKVZfhDR9LAGxfvXjBkb06gNETPnN0sLqRm9Gxg4wZH6dXg==
+"@babel/plugin-transform-modules-systemjs@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.8.3.tgz#d8bbf222c1dbe3661f440f2f00c16e9bb7d0d420"
+ integrity sha512-8cESMCJjmArMYqa9AO5YuMEkE4ds28tMpZcGZB/jl3n0ZzlsxOAi3mC+SKypTfT8gjMupCnd3YiXCkMjj2jfOg==
dependencies:
- "@babel/helper-hoist-variables" "^7.7.0"
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-hoist-variables" "^7.8.3"
+ "@babel/helper-module-transforms" "^7.8.3"
+ "@babel/helper-plugin-utils" "^7.8.3"
babel-plugin-dynamic-import-node "^2.3.0"
-"@babel/plugin-transform-modules-umd@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.7.0.tgz#d62c7da16670908e1d8c68ca0b5d4c0097b69966"
- integrity sha512-u7eBA03zmUswQ9LQ7Qw0/ieC1pcAkbp5OQatbWUzY1PaBccvuJXUkYzoN1g7cqp7dbTu6Dp9bXyalBvD04AANA==
+"@babel/plugin-transform-modules-umd@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.8.3.tgz#592d578ce06c52f5b98b02f913d653ffe972661a"
+ integrity sha512-evhTyWhbwbI3/U6dZAnx/ePoV7H6OUG+OjiJFHmhr9FPn0VShjwC2kdxqIuQ/+1P50TMrneGzMeyMTFOjKSnAw==
dependencies:
- "@babel/helper-module-transforms" "^7.7.0"
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-module-transforms" "^7.8.3"
+ "@babel/helper-plugin-utils" "^7.8.3"
-"@babel/plugin-transform-named-capturing-groups-regex@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.7.0.tgz#358e6fd869b9a4d8f5cbc79e4ed4fc340e60dcaf"
- integrity sha512-+SicSJoKouPctL+j1pqktRVCgy+xAch1hWWTMy13j0IflnyNjaoskj+DwRQFimHbLqO3sq2oN2CXMvXq3Bgapg==
+"@babel/plugin-transform-named-capturing-groups-regex@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.8.3.tgz#a2a72bffa202ac0e2d0506afd0939c5ecbc48c6c"
+ integrity sha512-f+tF/8UVPU86TrCb06JoPWIdDpTNSGGcAtaD9mLP0aYGA0OS0j7j7DHJR0GTFrUZPUU6loZhbsVZgTh0N+Qdnw==
dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.7.0"
+ "@babel/helper-create-regexp-features-plugin" "^7.8.3"
-"@babel/plugin-transform-new-target@^7.4.4":
- version "7.4.4"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.4.4.tgz#18d120438b0cc9ee95a47f2c72bc9768fbed60a5"
- integrity sha512-r1z3T2DNGQwwe2vPGZMBNjioT2scgWzK9BCnDEh+46z8EEwXBq24uRzd65I7pjtugzPSj921aM15RpESgzsSuA==
+"@babel/plugin-transform-new-target@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.8.3.tgz#60cc2ae66d85c95ab540eb34babb6434d4c70c43"
+ integrity sha512-QuSGysibQpyxexRyui2vca+Cmbljo8bcRckgzYV4kRIsHpVeyeC3JDO63pY+xFZ6bWOBn7pfKZTqV4o/ix9sFw==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
-"@babel/plugin-transform-object-super@^7.5.5":
- version "7.5.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.5.5.tgz#c70021df834073c65eb613b8679cc4a381d1a9f9"
- integrity sha512-un1zJQAhSosGFBduPgN/YFNvWVpRuHKU7IHBglLoLZsGmruJPOo6pbInneflUdmq7YvSVqhpPs5zdBvLnteltQ==
+"@babel/plugin-transform-object-super@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.8.3.tgz#ebb6a1e7a86ffa96858bd6ac0102d65944261725"
+ integrity sha512-57FXk+gItG/GejofIyLIgBKTas4+pEU47IXKDBWFTxdPd7F80H8zybyAY7UoblVfBhBGs2EKM+bJUu2+iUYPDQ==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
- "@babel/helper-replace-supers" "^7.5.5"
+ "@babel/helper-plugin-utils" "^7.8.3"
+ "@babel/helper-replace-supers" "^7.8.3"
-"@babel/plugin-transform-parameters@^7.4.4":
- version "7.4.4"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.4.4.tgz#7556cf03f318bd2719fe4c922d2d808be5571e16"
- integrity sha512-oMh5DUO1V63nZcu/ZVLQFqiihBGo4OpxJxR1otF50GMeCLiRx5nUdtokd+u9SuVJrvvuIh9OosRFPP4pIPnwmw==
+"@babel/plugin-transform-parameters@^7.8.4":
+ version "7.8.4"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.8.4.tgz#1d5155de0b65db0ccf9971165745d3bb990d77d3"
+ integrity sha512-IsS3oTxeTsZlE5KqzTbcC2sV0P9pXdec53SU+Yxv7o/6dvGM5AkTotQKhoSffhNgZ/dftsSiOoxy7evCYJXzVA==
dependencies:
- "@babel/helper-call-delegate" "^7.4.4"
- "@babel/helper-get-function-arity" "^7.0.0"
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-call-delegate" "^7.8.3"
+ "@babel/helper-get-function-arity" "^7.8.3"
+ "@babel/helper-plugin-utils" "^7.8.3"
-"@babel/plugin-transform-property-literals@^7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.2.0.tgz#03e33f653f5b25c4eb572c98b9485055b389e905"
- integrity sha512-9q7Dbk4RhgcLp8ebduOpCbtjh7C0itoLYHXd9ueASKAG/is5PQtMR5VJGka9NKqGhYEGn5ITahd4h9QeBMylWQ==
+"@babel/plugin-transform-property-literals@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.8.3.tgz#33194300d8539c1ed28c62ad5087ba3807b98263"
+ integrity sha512-uGiiXAZMqEoQhRWMK17VospMZh5sXWg+dlh2soffpkAl96KAm+WZuJfa6lcELotSRmooLqg0MWdH6UUq85nmmg==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
"@babel/plugin-transform-react-constant-elements@^7.0.0", "@babel/plugin-transform-react-constant-elements@^7.2.0", "@babel/plugin-transform-react-constant-elements@^7.6.3":
version "7.8.3"
@@ -720,197 +648,204 @@
"@babel/helper-annotate-as-pure" "^7.8.3"
"@babel/helper-plugin-utils" "^7.8.3"
-"@babel/plugin-transform-react-display-name@^7.0.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.2.0.tgz#ebfaed87834ce8dc4279609a4f0c324c156e3eb0"
- integrity sha512-Htf/tPa5haZvRMiNSQSFifK12gtr/8vwfr+A9y69uF0QcU77AVu4K7MiHEkTxF7lQoHOL0F9ErqgfNEAKgXj7A==
+"@babel/plugin-transform-react-display-name@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.8.3.tgz#70ded987c91609f78353dd76d2fb2a0bb991e8e5"
+ integrity sha512-3Jy/PCw8Fe6uBKtEgz3M82ljt+lTg+xJaM4og+eyu83qLT87ZUSckn0wy7r31jflURWLO83TW6Ylf7lyXj3m5A==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
-"@babel/plugin-transform-react-jsx-self@^7.0.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.2.0.tgz#461e21ad9478f1031dd5e276108d027f1b5240ba"
- integrity sha512-v6S5L/myicZEy+jr6ielB0OR8h+EH/1QFx/YJ7c7Ua+7lqsjj/vW6fD5FR9hB/6y7mGbfT4vAURn3xqBxsUcdg==
+"@babel/plugin-transform-react-jsx-self@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.8.3.tgz#c4f178b2aa588ecfa8d077ea80d4194ee77ed702"
+ integrity sha512-01OT7s5oa0XTLf2I8XGsL8+KqV9lx3EZV+jxn/L2LQ97CGKila2YMroTkCEIE0HV/FF7CMSRsIAybopdN9NTdg==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
- "@babel/plugin-syntax-jsx" "^7.2.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
+ "@babel/plugin-syntax-jsx" "^7.8.3"
-"@babel/plugin-transform-react-jsx-source@^7.0.0":
- version "7.5.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.5.0.tgz#583b10c49cf057e237085bcbd8cc960bd83bd96b"
- integrity sha512-58Q+Jsy4IDCZx7kqEZuSDdam/1oW8OdDX8f+Loo6xyxdfg1yF0GE2XNJQSTZCaMol93+FBzpWiPEwtbMloAcPg==
+"@babel/plugin-transform-react-jsx-source@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.8.3.tgz#951e75a8af47f9f120db731be095d2b2c34920e0"
+ integrity sha512-PLMgdMGuVDtRS/SzjNEQYUT8f4z1xb2BAT54vM1X5efkVuYBf5WyGUMbpmARcfq3NaglIwz08UVQK4HHHbC6ag==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
- "@babel/plugin-syntax-jsx" "^7.2.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
+ "@babel/plugin-syntax-jsx" "^7.8.3"
-"@babel/plugin-transform-react-jsx@^7.0.0", "@babel/plugin-transform-react-jsx@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.7.0.tgz#834b0723ba78cd4d24d7d629300c2270f516d0b7"
- integrity sha512-mXhBtyVB1Ujfy+0L6934jeJcSXj/VCg6whZzEcgiiZHNS0PGC7vUCsZDQCxxztkpIdF+dY1fUMcjAgEOC3ZOMQ==
+"@babel/plugin-transform-react-jsx@^7.0.0", "@babel/plugin-transform-react-jsx@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.8.3.tgz#4220349c0390fdefa505365f68c103562ab2fc4a"
+ integrity sha512-r0h+mUiyL595ikykci+fbwm9YzmuOrUBi0b+FDIKmi3fPQyFokWVEMJnRWHJPPQEjyFJyna9WZC6Viv6UHSv1g==
dependencies:
- "@babel/helper-builder-react-jsx" "^7.7.0"
- "@babel/helper-plugin-utils" "^7.0.0"
- "@babel/plugin-syntax-jsx" "^7.2.0"
+ "@babel/helper-builder-react-jsx" "^7.8.3"
+ "@babel/helper-plugin-utils" "^7.8.3"
+ "@babel/plugin-syntax-jsx" "^7.8.3"
-"@babel/plugin-transform-regenerator@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.7.0.tgz#f1b20b535e7716b622c99e989259d7dd942dd9cc"
- integrity sha512-AXmvnC+0wuj/cFkkS/HFHIojxH3ffSXE+ttulrqWjZZRaUOonfJc60e1wSNT4rV8tIunvu/R3wCp71/tLAa9xg==
+"@babel/plugin-transform-regenerator@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.8.3.tgz#b31031e8059c07495bf23614c97f3d9698bc6ec8"
+ integrity sha512-qt/kcur/FxrQrzFR432FGZznkVAjiyFtCOANjkAKwCbt465L6ZCiUQh2oMYGU3Wo8LRFJxNDFwWn106S5wVUNA==
dependencies:
regenerator-transform "^0.14.0"
-"@babel/plugin-transform-reserved-words@^7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.2.0.tgz#4792af87c998a49367597d07fedf02636d2e1634"
- integrity sha512-fz43fqW8E1tAB3DKF19/vxbpib1fuyCwSPE418ge5ZxILnBhWyhtPgz8eh1RCGGJlwvksHkyxMxh0eenFi+kFw==
+"@babel/plugin-transform-reserved-words@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.8.3.tgz#9a0635ac4e665d29b162837dd3cc50745dfdf1f5"
+ integrity sha512-mwMxcycN3omKFDjDQUl+8zyMsBfjRFr0Zn/64I41pmjv4NJuqcYlEtezwYtw9TFd9WR1vN5kiM+O0gMZzO6L0A==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
-"@babel/plugin-transform-shorthand-properties@^7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.2.0.tgz#6333aee2f8d6ee7e28615457298934a3b46198f0"
- integrity sha512-QP4eUM83ha9zmYtpbnyjTLAGKQritA5XW/iG9cjtuOI8s1RuL/3V6a3DeSHfKutJQ+ayUfeZJPcnCYEQzaPQqg==
+"@babel/plugin-transform-shorthand-properties@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.8.3.tgz#28545216e023a832d4d3a1185ed492bcfeac08c8"
+ integrity sha512-I9DI6Odg0JJwxCHzbzW08ggMdCezoWcuQRz3ptdudgwaHxTjxw5HgdFJmZIkIMlRymL6YiZcped4TTCB0JcC8w==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
-"@babel/plugin-transform-spread@^7.6.2":
- version "7.6.2"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.6.2.tgz#fc77cf798b24b10c46e1b51b1b88c2bf661bb8dd"
- integrity sha512-DpSvPFryKdK1x+EDJYCy28nmAaIMdxmhot62jAXF/o99iA33Zj2Lmcp3vDmz+MUh0LNYVPvfj5iC3feb3/+PFg==
+"@babel/plugin-transform-spread@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.8.3.tgz#9c8ffe8170fdfb88b114ecb920b82fb6e95fe5e8"
+ integrity sha512-CkuTU9mbmAoFOI1tklFWYYbzX5qCIZVXPVy0jpXgGwkplCndQAa58s2jr66fTeQnA64bDox0HL4U56CFYoyC7g==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
-"@babel/plugin-transform-sticky-regex@^7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.2.0.tgz#a1e454b5995560a9c1e0d537dfc15061fd2687e1"
- integrity sha512-KKYCoGaRAf+ckH8gEL3JHUaFVyNHKe3ASNsZ+AlktgHevvxGigoIttrEJb8iKN03Q7Eazlv1s6cx2B2cQ3Jabw==
+"@babel/plugin-transform-sticky-regex@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.8.3.tgz#be7a1290f81dae767475452199e1f76d6175b100"
+ integrity sha512-9Spq0vGCD5Bb4Z/ZXXSK5wbbLFMG085qd2vhL1JYu1WcQ5bXqZBAYRzU1d+p79GcHs2szYv5pVQCX13QgldaWw==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
- "@babel/helper-regex" "^7.0.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
+ "@babel/helper-regex" "^7.8.3"
-"@babel/plugin-transform-template-literals@^7.4.4":
- version "7.4.4"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.4.4.tgz#9d28fea7bbce637fb7612a0750989d8321d4bcb0"
- integrity sha512-mQrEC4TWkhLN0z8ygIvEL9ZEToPhG5K7KDW3pzGqOfIGZ28Jb0POUkeWcoz8HnHvhFy6dwAT1j8OzqN8s804+g==
+"@babel/plugin-transform-template-literals@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.8.3.tgz#7bfa4732b455ea6a43130adc0ba767ec0e402a80"
+ integrity sha512-820QBtykIQOLFT8NZOcTRJ1UNuztIELe4p9DCgvj4NK+PwluSJ49we7s9FB1HIGNIYT7wFUJ0ar2QpCDj0escQ==
dependencies:
- "@babel/helper-annotate-as-pure" "^7.0.0"
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-annotate-as-pure" "^7.8.3"
+ "@babel/helper-plugin-utils" "^7.8.3"
-"@babel/plugin-transform-typeof-symbol@^7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.2.0.tgz#117d2bcec2fbf64b4b59d1f9819894682d29f2b2"
- integrity sha512-2LNhETWYxiYysBtrBTqL8+La0jIoQQnIScUJc74OYvUGRmkskNY4EzLCnjHBzdmb38wqtTaixpo1NctEcvMDZw==
+"@babel/plugin-transform-typeof-symbol@^7.8.4":
+ version "7.8.4"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.8.4.tgz#ede4062315ce0aaf8a657a920858f1a2f35fc412"
+ integrity sha512-2QKyfjGdvuNfHsb7qnBBlKclbD4CfshH2KvDabiijLMGXPHJXGxtDzwIF7bQP+T0ysw8fYTtxPafgfs/c1Lrqg==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
-"@babel/plugin-transform-unicode-regex@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.7.0.tgz#743d9bcc44080e3cc7d49259a066efa30f9187a3"
- integrity sha512-RrThb0gdrNwFAqEAAx9OWgtx6ICK69x7i9tCnMdVrxQwSDp/Abu9DXFU5Hh16VP33Rmxh04+NGW28NsIkFvFKA==
+"@babel/plugin-transform-typescript@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.8.3.tgz#be6f01a7ef423be68e65ace1f04fc407e6d88917"
+ integrity sha512-Ebj230AxcrKGZPKIp4g4TdQLrqX95TobLUWKd/CwG7X1XHUH1ZpkpFvXuXqWbtGRWb7uuEWNlrl681wsOArAdQ==
dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.7.0"
- "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/helper-create-class-features-plugin" "^7.8.3"
+ "@babel/helper-plugin-utils" "^7.8.3"
+ "@babel/plugin-syntax-typescript" "^7.8.3"
+
+"@babel/plugin-transform-unicode-regex@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.8.3.tgz#0cef36e3ba73e5c57273effb182f46b91a1ecaad"
+ integrity sha512-+ufgJjYdmWfSQ+6NS9VGUR2ns8cjJjYbrbi11mZBTaWm+Fui/ncTLFF28Ei1okavY+xkojGr1eJxNsWYeA5aZw==
+ dependencies:
+ "@babel/helper-create-regexp-features-plugin" "^7.8.3"
+ "@babel/helper-plugin-utils" "^7.8.3"
-"@babel/preset-env@^7.4.4", "@babel/preset-env@^7.4.5", "@babel/preset-env@^7.7.1":
- version "7.7.1"
- resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.7.1.tgz#04a2ff53552c5885cf1083e291c8dd5490f744bb"
- integrity sha512-/93SWhi3PxcVTDpSqC+Dp4YxUu3qZ4m7I76k0w73wYfn7bGVuRIO4QUz95aJksbS+AD1/mT1Ie7rbkT0wSplaA==
+"@babel/preset-env@^7.4.4", "@babel/preset-env@^7.4.5", "@babel/preset-env@^7.8.4":
+ version "7.8.4"
+ resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.8.4.tgz#9dac6df5f423015d3d49b6e9e5fa3413e4a72c4e"
+ integrity sha512-HihCgpr45AnSOHRbS5cWNTINs0TwaR8BS8xIIH+QwiW8cKL0llV91njQMpeMReEPVs+1Ao0x3RLEBLtt1hOq4w==
dependencies:
- "@babel/helper-module-imports" "^7.7.0"
- "@babel/helper-plugin-utils" "^7.0.0"
- "@babel/plugin-proposal-async-generator-functions" "^7.7.0"
- "@babel/plugin-proposal-dynamic-import" "^7.7.0"
- "@babel/plugin-proposal-json-strings" "^7.2.0"
- "@babel/plugin-proposal-object-rest-spread" "^7.6.2"
- "@babel/plugin-proposal-optional-catch-binding" "^7.2.0"
- "@babel/plugin-proposal-unicode-property-regex" "^7.7.0"
- "@babel/plugin-syntax-async-generators" "^7.2.0"
- "@babel/plugin-syntax-dynamic-import" "^7.2.0"
- "@babel/plugin-syntax-json-strings" "^7.2.0"
- "@babel/plugin-syntax-object-rest-spread" "^7.2.0"
- "@babel/plugin-syntax-optional-catch-binding" "^7.2.0"
- "@babel/plugin-syntax-top-level-await" "^7.7.0"
- "@babel/plugin-transform-arrow-functions" "^7.2.0"
- "@babel/plugin-transform-async-to-generator" "^7.7.0"
- "@babel/plugin-transform-block-scoped-functions" "^7.2.0"
- "@babel/plugin-transform-block-scoping" "^7.6.3"
- "@babel/plugin-transform-classes" "^7.7.0"
- "@babel/plugin-transform-computed-properties" "^7.2.0"
- "@babel/plugin-transform-destructuring" "^7.6.0"
- "@babel/plugin-transform-dotall-regex" "^7.7.0"
- "@babel/plugin-transform-duplicate-keys" "^7.5.0"
- "@babel/plugin-transform-exponentiation-operator" "^7.2.0"
- "@babel/plugin-transform-for-of" "^7.4.4"
- "@babel/plugin-transform-function-name" "^7.7.0"
- "@babel/plugin-transform-literals" "^7.2.0"
- "@babel/plugin-transform-member-expression-literals" "^7.2.0"
- "@babel/plugin-transform-modules-amd" "^7.5.0"
- "@babel/plugin-transform-modules-commonjs" "^7.7.0"
- "@babel/plugin-transform-modules-systemjs" "^7.7.0"
- "@babel/plugin-transform-modules-umd" "^7.7.0"
- "@babel/plugin-transform-named-capturing-groups-regex" "^7.7.0"
- "@babel/plugin-transform-new-target" "^7.4.4"
- "@babel/plugin-transform-object-super" "^7.5.5"
- "@babel/plugin-transform-parameters" "^7.4.4"
- "@babel/plugin-transform-property-literals" "^7.2.0"
- "@babel/plugin-transform-regenerator" "^7.7.0"
- "@babel/plugin-transform-reserved-words" "^7.2.0"
- "@babel/plugin-transform-shorthand-properties" "^7.2.0"
- "@babel/plugin-transform-spread" "^7.6.2"
- "@babel/plugin-transform-sticky-regex" "^7.2.0"
- "@babel/plugin-transform-template-literals" "^7.4.4"
- "@babel/plugin-transform-typeof-symbol" "^7.2.0"
- "@babel/plugin-transform-unicode-regex" "^7.7.0"
- "@babel/types" "^7.7.1"
- browserslist "^4.6.0"
- core-js-compat "^3.1.1"
+ "@babel/compat-data" "^7.8.4"
+ "@babel/helper-compilation-targets" "^7.8.4"
+ "@babel/helper-module-imports" "^7.8.3"
+ "@babel/helper-plugin-utils" "^7.8.3"
+ "@babel/plugin-proposal-async-generator-functions" "^7.8.3"
+ "@babel/plugin-proposal-dynamic-import" "^7.8.3"
+ "@babel/plugin-proposal-json-strings" "^7.8.3"
+ "@babel/plugin-proposal-nullish-coalescing-operator" "^7.8.3"
+ "@babel/plugin-proposal-object-rest-spread" "^7.8.3"
+ "@babel/plugin-proposal-optional-catch-binding" "^7.8.3"
+ "@babel/plugin-proposal-optional-chaining" "^7.8.3"
+ "@babel/plugin-proposal-unicode-property-regex" "^7.8.3"
+ "@babel/plugin-syntax-async-generators" "^7.8.0"
+ "@babel/plugin-syntax-dynamic-import" "^7.8.0"
+ "@babel/plugin-syntax-json-strings" "^7.8.0"
+ "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.0"
+ "@babel/plugin-syntax-object-rest-spread" "^7.8.0"
+ "@babel/plugin-syntax-optional-catch-binding" "^7.8.0"
+ "@babel/plugin-syntax-optional-chaining" "^7.8.0"
+ "@babel/plugin-syntax-top-level-await" "^7.8.3"
+ "@babel/plugin-transform-arrow-functions" "^7.8.3"
+ "@babel/plugin-transform-async-to-generator" "^7.8.3"
+ "@babel/plugin-transform-block-scoped-functions" "^7.8.3"
+ "@babel/plugin-transform-block-scoping" "^7.8.3"
+ "@babel/plugin-transform-classes" "^7.8.3"
+ "@babel/plugin-transform-computed-properties" "^7.8.3"
+ "@babel/plugin-transform-destructuring" "^7.8.3"
+ "@babel/plugin-transform-dotall-regex" "^7.8.3"
+ "@babel/plugin-transform-duplicate-keys" "^7.8.3"
+ "@babel/plugin-transform-exponentiation-operator" "^7.8.3"
+ "@babel/plugin-transform-for-of" "^7.8.4"
+ "@babel/plugin-transform-function-name" "^7.8.3"
+ "@babel/plugin-transform-literals" "^7.8.3"
+ "@babel/plugin-transform-member-expression-literals" "^7.8.3"
+ "@babel/plugin-transform-modules-amd" "^7.8.3"
+ "@babel/plugin-transform-modules-commonjs" "^7.8.3"
+ "@babel/plugin-transform-modules-systemjs" "^7.8.3"
+ "@babel/plugin-transform-modules-umd" "^7.8.3"
+ "@babel/plugin-transform-named-capturing-groups-regex" "^7.8.3"
+ "@babel/plugin-transform-new-target" "^7.8.3"
+ "@babel/plugin-transform-object-super" "^7.8.3"
+ "@babel/plugin-transform-parameters" "^7.8.4"
+ "@babel/plugin-transform-property-literals" "^7.8.3"
+ "@babel/plugin-transform-regenerator" "^7.8.3"
+ "@babel/plugin-transform-reserved-words" "^7.8.3"
+ "@babel/plugin-transform-shorthand-properties" "^7.8.3"
+ "@babel/plugin-transform-spread" "^7.8.3"
+ "@babel/plugin-transform-sticky-regex" "^7.8.3"
+ "@babel/plugin-transform-template-literals" "^7.8.3"
+ "@babel/plugin-transform-typeof-symbol" "^7.8.4"
+ "@babel/plugin-transform-unicode-regex" "^7.8.3"
+ "@babel/types" "^7.8.3"
+ browserslist "^4.8.5"
+ core-js-compat "^3.6.2"
invariant "^2.2.2"
- js-levenshtein "^1.1.3"
+ levenary "^1.1.1"
semver "^5.5.0"
"@babel/preset-flow@^7.0.0":
- version "7.0.0"
- resolved "https://registry.yarnpkg.com/@babel/preset-flow/-/preset-flow-7.0.0.tgz#afd764835d9535ec63d8c7d4caf1c06457263da2"
- integrity sha512-bJOHrYOPqJZCkPVbG1Lot2r5OSsB+iUOaxiHdlOeB1yPWS6evswVHwvkDLZ54WTaTRIk89ds0iHmGZSnxlPejQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
- "@babel/plugin-transform-flow-strip-types" "^7.0.0"
-
-"@babel/preset-react@^7.0.0", "@babel/preset-react@^7.7.0":
- version "7.7.0"
- resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.7.0.tgz#8ab0c4787d98cf1f5f22dabf115552bf9e4e406c"
- integrity sha512-IXXgSUYBPHUGhUkH+89TR6faMcBtuMW0h5OHbMuVbL3/5wK2g6a2M2BBpkLa+Kw0sAHiZ9dNVgqJMDP/O4GRBA==
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/preset-flow/-/preset-flow-7.8.3.tgz#52af74c6a4e80d889bd9436e8e278d0fecac6e18"
+ integrity sha512-iCXFk+T4demnq+dNLLvlGOgvYF6sPZ/hS1EmswugOqh1Ysp2vuiqJzpgsnp5rW8+6dLJT/0CXDzye28ZH6BAfQ==
dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
- "@babel/plugin-transform-react-display-name" "^7.0.0"
- "@babel/plugin-transform-react-jsx" "^7.7.0"
- "@babel/plugin-transform-react-jsx-self" "^7.0.0"
- "@babel/plugin-transform-react-jsx-source" "^7.0.0"
+ "@babel/helper-plugin-utils" "^7.8.3"
+ "@babel/plugin-transform-flow-strip-types" "^7.8.3"
-"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.3.4", "@babel/runtime@^7.4.2", "@babel/runtime@^7.4.4", "@babel/runtime@^7.4.5", "@babel/runtime@^7.5.0", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.3":
- version "7.7.2"
- resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.7.2.tgz#111a78002a5c25fc8e3361bedc9529c696b85a6a"
- integrity sha512-JONRbXbTXc9WQE2mAZd1p0Z3DZ/6vaQIkgYMSTP3KjRCyd7rCZCcfhCyX+YjwcKxcZ82UrxbRD358bpExNgrjw==
+"@babel/preset-react@^7.0.0", "@babel/preset-react@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.8.3.tgz#23dc63f1b5b0751283e04252e78cf1d6589273d2"
+ integrity sha512-9hx0CwZg92jGb7iHYQVgi0tOEHP/kM60CtWJQnmbATSPIQQ2xYzfoCI3EdqAhFBeeJwYMdWQuDUHMsuDbH9hyQ==
dependencies:
- regenerator-runtime "^0.13.2"
+ "@babel/helper-plugin-utils" "^7.8.3"
+ "@babel/plugin-transform-react-display-name" "^7.8.3"
+ "@babel/plugin-transform-react-jsx" "^7.8.3"
+ "@babel/plugin-transform-react-jsx-self" "^7.8.3"
+ "@babel/plugin-transform-react-jsx-source" "^7.8.3"
-"@babel/runtime@^7.3.1", "@babel/runtime@^7.7.2", "@babel/runtime@^7.7.6":
+"@babel/preset-typescript@^7.8.3":
version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.8.3.tgz#0811944f73a6c926bb2ad35e918dcc1bfab279f1"
- integrity sha512-fVHx1rzEmwB130VTkLnxR+HmxcTjGzH12LYQcFFoBwakMd3aOMD4OsRN7tGG/UOYE2ektgFrS8uACAoRk1CY0w==
+ resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.8.3.tgz#90af8690121beecd9a75d0cc26c6be39d1595d13"
+ integrity sha512-qee5LgPGui9zQ0jR1TeU5/fP9L+ovoArklEqY12ek8P/wV5ZeM/VYSQYwICeoT6FfpJTekG9Ilay5PhwsOpMHA==
dependencies:
- regenerator-runtime "^0.13.2"
+ "@babel/helper-plugin-utils" "^7.8.3"
+ "@babel/plugin-transform-typescript" "^7.8.3"
-"@babel/template@^7.4.0", "@babel/template@^7.4.4", "@babel/template@^7.7.0", "@babel/template@^7.7.4":
- version "7.7.4"
- resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.7.4.tgz#428a7d9eecffe27deac0a98e23bf8e3675d2a77b"
- integrity sha512-qUzihgVPguAzXCK7WXw8pqs6cEwi54s3E+HrejlkuWO6ivMKx9hZl3Y2fSXp9i5HgyWmj7RKP+ulaYnKM4yYxw==
+"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.3.1", "@babel/runtime@^7.3.4", "@babel/runtime@^7.4.4", "@babel/runtime@^7.4.5", "@babel/runtime@^7.5.0", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.3", "@babel/runtime@^7.7.2", "@babel/runtime@^7.7.4", "@babel/runtime@^7.7.6":
+ version "7.8.4"
+ resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.8.4.tgz#d79f5a2040f7caa24d53e563aad49cbc05581308"
+ integrity sha512-neAp3zt80trRVBI1x0azq6c57aNBqYZH8KhMm3TaB7wEI5Q4A2SHfBHE8w9gOhI/lrqxtEbXZgQIrHP+wvSGwQ==
dependencies:
- "@babel/code-frame" "^7.0.0"
- "@babel/parser" "^7.7.4"
- "@babel/types" "^7.7.4"
+ regenerator-runtime "^0.13.2"
-"@babel/template@^7.8.3":
+"@babel/template@^7.4.0", "@babel/template@^7.4.4", "@babel/template@^7.7.4", "@babel/template@^7.8.3":
version "7.8.3"
resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.8.3.tgz#e02ad04fe262a657809327f578056ca15fd4d1b8"
integrity sha512-04m87AcQgAFdvuoyiQ2kgELr2tV8B4fP/xJAVUL3Yb3bkNdMedD3d0rlSQr3PegP0cms3eHjl1F7PWlvWbU8FQ==
@@ -919,46 +854,22 @@
"@babel/parser" "^7.8.3"
"@babel/types" "^7.8.3"
-"@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0", "@babel/traverse@^7.4.3", "@babel/traverse@^7.4.4", "@babel/traverse@^7.7.0", "@babel/traverse@^7.7.4":
- version "7.7.4"
- resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.7.4.tgz#9c1e7c60fb679fe4fcfaa42500833333c2058558"
- integrity sha512-P1L58hQyupn8+ezVA2z5KBm4/Zr4lCC8dwKCMYzsa5jFMDMQAzaBNy9W5VjB+KAmBjb40U7a/H6ao+Xo+9saIw==
- dependencies:
- "@babel/code-frame" "^7.5.5"
- "@babel/generator" "^7.7.4"
- "@babel/helper-function-name" "^7.7.4"
- "@babel/helper-split-export-declaration" "^7.7.4"
- "@babel/parser" "^7.7.4"
- "@babel/types" "^7.7.4"
- debug "^4.1.0"
- globals "^11.1.0"
- lodash "^4.17.13"
-
-"@babel/traverse@^7.8.3":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.8.3.tgz#a826215b011c9b4f73f3a893afbc05151358bf9a"
- integrity sha512-we+a2lti+eEImHmEXp7bM9cTxGzxPmBiVJlLVD+FuuQMeeO7RaDbutbgeheDkw+Xe3mCfJHnGOWLswT74m2IPg==
+"@babel/traverse@^7.1.0", "@babel/traverse@^7.4.3", "@babel/traverse@^7.4.4", "@babel/traverse@^7.7.4", "@babel/traverse@^7.8.3", "@babel/traverse@^7.8.4":
+ version "7.8.4"
+ resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.8.4.tgz#f0845822365f9d5b0e312ed3959d3f827f869e3c"
+ integrity sha512-NGLJPZwnVEyBPLI+bl9y9aSnxMhsKz42so7ApAv9D+b4vAFPpY013FTS9LdKxcABoIYFU52HcYga1pPlx454mg==
dependencies:
"@babel/code-frame" "^7.8.3"
- "@babel/generator" "^7.8.3"
+ "@babel/generator" "^7.8.4"
"@babel/helper-function-name" "^7.8.3"
"@babel/helper-split-export-declaration" "^7.8.3"
- "@babel/parser" "^7.8.3"
+ "@babel/parser" "^7.8.4"
"@babel/types" "^7.8.3"
debug "^4.1.0"
globals "^11.1.0"
lodash "^4.17.13"
-"@babel/types@^7.0.0", "@babel/types@^7.3.0", "@babel/types@^7.4.0", "@babel/types@^7.4.4", "@babel/types@^7.7.0", "@babel/types@^7.7.1", "@babel/types@^7.7.4":
- version "7.7.4"
- resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.7.4.tgz#516570d539e44ddf308c07569c258ff94fde9193"
- integrity sha512-cz5Ji23KCi4T+YIE/BolWosrJuSmoZeN1EFnRtBwF+KKLi8GG/Z2c2hOJJeCXPk4mwk4QFvTmwIodJowXgttRA==
- dependencies:
- esutils "^2.0.2"
- lodash "^4.17.13"
- to-fast-properties "^2.0.0"
-
-"@babel/types@^7.8.3":
+"@babel/types@^7.0.0", "@babel/types@^7.3.0", "@babel/types@^7.4.0", "@babel/types@^7.4.4", "@babel/types@^7.8.3":
version "7.8.3"
resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.8.3.tgz#5a383dffa5416db1b73dedffd311ffd0788fb31c"
integrity sha512-jBD+G8+LWpMBBWvVcdr4QysjUE4mU/syrhN17o1u3gx0/WzJB1kwiVZAXRtWbsIPOwW8pF/YJV5+nmetPzepXg==
@@ -967,24 +878,19 @@
lodash "^4.17.13"
to-fast-properties "^2.0.0"
+"@bcoe/v8-coverage@^0.2.3":
+ version "0.2.3"
+ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39"
+ integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==
+
"@cnakazawa/watch@^1.0.3":
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.3.tgz#099139eaec7ebf07a27c1786a3ff64f39464d2ef"
- integrity sha512-r5160ogAvGyHsal38Kux7YYtodEKOj89RGb28ht1jh3SJb08VwRwAKKJL0bGb04Zd/3r9FL3BFIc3bBidYffCA==
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.4.tgz#f864ae85004d0fcab6f50be9141c4da368d1656a"
+ integrity sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ==
dependencies:
exec-sh "^0.3.2"
minimist "^1.2.0"
-"@emotion/cache@^10.0.17":
- version "10.0.19"
- resolved "https://registry.yarnpkg.com/@emotion/cache/-/cache-10.0.19.tgz#d258d94d9c707dcadaf1558def968b86bb87ad71"
- integrity sha512-BoiLlk4vEsGBg2dAqGSJu0vJl/PgVtCYLBFJaEO8RmQzPugXewQCXZJNXTDFaRlfCs0W+quesayav4fvaif5WQ==
- dependencies:
- "@emotion/sheet" "0.9.3"
- "@emotion/stylis" "0.8.4"
- "@emotion/utils" "0.11.2"
- "@emotion/weak-memoize" "0.2.4"
-
"@emotion/cache@^10.0.27":
version "10.0.27"
resolved "https://registry.yarnpkg.com/@emotion/cache/-/cache-10.0.27.tgz#7895db204e2c1a991ae33d51262a3a44f6737303"
@@ -995,18 +901,6 @@
"@emotion/utils" "0.11.3"
"@emotion/weak-memoize" "0.2.5"
-"@emotion/core@^10.0.14":
- version "10.0.22"
- resolved "https://registry.yarnpkg.com/@emotion/core/-/core-10.0.22.tgz#2ac7bcf9b99a1979ab5b0a876fbf37ab0688b177"
- integrity sha512-7eoP6KQVUyOjAkE6y4fdlxbZRA4ILs7dqkkm6oZUJmihtHv0UBq98VgPirq9T8F9K2gKu0J/au/TpKryKMinaA==
- dependencies:
- "@babel/runtime" "^7.5.5"
- "@emotion/cache" "^10.0.17"
- "@emotion/css" "^10.0.22"
- "@emotion/serialize" "^0.11.12"
- "@emotion/sheet" "0.9.3"
- "@emotion/utils" "0.11.2"
-
"@emotion/core@^10.0.20":
version "10.0.27"
resolved "https://registry.yarnpkg.com/@emotion/core/-/core-10.0.27.tgz#7c3f78be681ab2273f3bf11ca3e2edc4a9dd1fdc"
@@ -1019,15 +913,6 @@
"@emotion/sheet" "0.9.4"
"@emotion/utils" "0.11.3"
-"@emotion/css@^10.0.22":
- version "10.0.22"
- resolved "https://registry.yarnpkg.com/@emotion/css/-/css-10.0.22.tgz#37b1abb6826759fe8ac0af0ac0034d27de6d1793"
- integrity sha512-8phfa5mC/OadBTmGpMpwykIVH0gFCbUoO684LUkyixPq4F1Wwri7fK5Xlm8lURNBrd2TuvTbPUGxFsGxF9UacA==
- dependencies:
- "@emotion/serialize" "^0.11.12"
- "@emotion/utils" "0.11.2"
- babel-plugin-emotion "^10.0.22"
-
"@emotion/css@^10.0.27":
version "10.0.27"
resolved "https://registry.yarnpkg.com/@emotion/css/-/css-10.0.27.tgz#3a7458198fbbebb53b01b2b87f64e5e21241e14c"
@@ -1037,23 +922,11 @@
"@emotion/utils" "0.11.3"
babel-plugin-emotion "^10.0.27"
-"@emotion/hash@0.7.3":
- version "0.7.3"
- resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.7.3.tgz#a166882c81c0c6040975dd30df24fae8549bd96f"
- integrity sha512-14ZVlsB9akwvydAdaEnVnvqu6J2P6ySv39hYyl/aoB6w/V+bXX0tay8cF6paqbgZsN2n5Xh15uF4pE+GvE+itw==
-
"@emotion/hash@0.7.4":
version "0.7.4"
resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.7.4.tgz#f14932887422c9056b15a8d222a9074a7dfa2831"
integrity sha512-fxfMSBMX3tlIbKUdtGKxqB1fyrH6gVrX39Gsv3y8lRYKUqlgDt3UMqQyGnR1bQMa2B8aGnhLZokZgg8vT0Le+A==
-"@emotion/is-prop-valid@0.8.5":
- version "0.8.5"
- resolved "https://registry.yarnpkg.com/@emotion/is-prop-valid/-/is-prop-valid-0.8.5.tgz#2dda0791f0eafa12b7a0a5b39858405cc7bde983"
- integrity sha512-6ZODuZSFofbxSbcxwsFz+6ioPjb0ISJRRPLZ+WIbjcU2IMU0Io+RGQjjaTgOvNQl007KICBm7zXQaYQEC1r6Bg==
- dependencies:
- "@emotion/memoize" "0.7.3"
-
"@emotion/is-prop-valid@0.8.6":
version "0.8.6"
resolved "https://registry.yarnpkg.com/@emotion/is-prop-valid/-/is-prop-valid-0.8.6.tgz#4757646f0a58e9dec614c47c838e7147d88c263c"
@@ -1061,27 +934,11 @@
dependencies:
"@emotion/memoize" "0.7.4"
-"@emotion/memoize@0.7.3":
- version "0.7.3"
- resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.7.3.tgz#5b6b1c11d6a6dddf1f2fc996f74cf3b219644d78"
- integrity sha512-2Md9mH6mvo+ygq1trTeVp2uzAKwE2P7In0cRpD/M9Q70aH8L+rxMLbb3JCN2JoSWsV2O+DdFjfbbXoMoLBczow==
-
"@emotion/memoize@0.7.4":
version "0.7.4"
resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.7.4.tgz#19bf0f5af19149111c40d98bb0cf82119f5d9eeb"
integrity sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==
-"@emotion/serialize@^0.11.12", "@emotion/serialize@^0.11.14":
- version "0.11.14"
- resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-0.11.14.tgz#56a6d8d04d837cc5b0126788b2134c51353c6488"
- integrity sha512-6hTsySIuQTbDbv00AnUO6O6Xafdwo5GswRlMZ5hHqiFx+4pZ7uGWXUQFW46Kc2taGhP89uXMXn/lWQkdyTosPA==
- dependencies:
- "@emotion/hash" "0.7.3"
- "@emotion/memoize" "0.7.3"
- "@emotion/unitless" "0.7.4"
- "@emotion/utils" "0.11.2"
- csstype "^2.5.7"
-
"@emotion/serialize@^0.11.15":
version "0.11.15"
resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-0.11.15.tgz#9a0f5873fb458d87d4f23e034413c12ed60a705a"
@@ -1093,26 +950,11 @@
"@emotion/utils" "0.11.3"
csstype "^2.5.7"
-"@emotion/sheet@0.9.3":
- version "0.9.3"
- resolved "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-0.9.3.tgz#689f135ecf87d3c650ed0c4f5ddcbe579883564a"
- integrity sha512-c3Q6V7Df7jfwSq5AzQWbXHa5soeE4F5cbqi40xn0CzXxWW9/6Mxq48WJEtqfWzbZtW9odZdnRAkwCQwN12ob4A==
-
"@emotion/sheet@0.9.4":
version "0.9.4"
resolved "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-0.9.4.tgz#894374bea39ec30f489bbfc3438192b9774d32e5"
integrity sha512-zM9PFmgVSqBw4zL101Q0HrBVTGmpAxFZH/pYx/cjJT5advXguvcgjHFTCaIO3enL/xr89vK2bh0Mfyj9aa0ANA==
-"@emotion/styled-base@^10.0.23":
- version "10.0.24"
- resolved "https://registry.yarnpkg.com/@emotion/styled-base/-/styled-base-10.0.24.tgz#9497efd8902dfeddee89d24b0eeb26b0665bfe8b"
- integrity sha512-AnBImerf0h4dGAJVo0p0VE8KoAns71F28ErGFK474zbNAHX6yqSWQUasb+1jvg/VPwZjCp19+tAr6oOB0pwmLQ==
- dependencies:
- "@babel/runtime" "^7.5.5"
- "@emotion/is-prop-valid" "0.8.5"
- "@emotion/serialize" "^0.11.14"
- "@emotion/utils" "0.11.2"
-
"@emotion/styled-base@^10.0.27":
version "10.0.27"
resolved "https://registry.yarnpkg.com/@emotion/styled-base/-/styled-base-10.0.27.tgz#d9efa307ae4e938fcc4d0596b40b7e8bc10f7c7c"
@@ -1123,14 +965,6 @@
"@emotion/serialize" "^0.11.15"
"@emotion/utils" "0.11.3"
-"@emotion/styled@^10.0.14":
- version "10.0.23"
- resolved "https://registry.yarnpkg.com/@emotion/styled/-/styled-10.0.23.tgz#2f8279bd59b99d82deade76d1046249ddfab7c1b"
- integrity sha512-gNr04eqBQ2iYUx8wFLZDfm3N8/QUOODu/ReDXa693uyQGy2OqA+IhPJk+kA7id8aOfwAsMuvZ0pJImEXXKtaVQ==
- dependencies:
- "@emotion/styled-base" "^10.0.23"
- babel-plugin-emotion "^10.0.23"
-
"@emotion/styled@^10.0.17":
version "10.0.27"
resolved "https://registry.yarnpkg.com/@emotion/styled/-/styled-10.0.27.tgz#12cb67e91f7ad7431e1875b1d83a94b814133eaf"
@@ -1139,41 +973,21 @@
"@emotion/styled-base" "^10.0.27"
babel-plugin-emotion "^10.0.27"
-"@emotion/stylis@0.8.4":
- version "0.8.4"
- resolved "https://registry.yarnpkg.com/@emotion/stylis/-/stylis-0.8.4.tgz#6c51afdf1dd0d73666ba09d2eb6c25c220d6fe4c"
- integrity sha512-TLmkCVm8f8gH0oLv+HWKiu7e8xmBIaokhxcEKPh1m8pXiV/akCiq50FvYgOwY42rjejck8nsdQxZlXZ7pmyBUQ==
-
"@emotion/stylis@0.8.5":
version "0.8.5"
resolved "https://registry.yarnpkg.com/@emotion/stylis/-/stylis-0.8.5.tgz#deacb389bd6ee77d1e7fcaccce9e16c5c7e78e04"
integrity sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ==
-"@emotion/unitless@0.7.4":
- version "0.7.4"
- resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.7.4.tgz#a87b4b04e5ae14a88d48ebef15015f6b7d1f5677"
- integrity sha512-kBa+cDHOR9jpRJ+kcGMsysrls0leukrm68DmFQoMIWQcXdr2cZvyvypWuGYT7U+9kAExUE7+T7r6G3C3A6L8MQ==
-
"@emotion/unitless@0.7.5":
version "0.7.5"
resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.7.5.tgz#77211291c1900a700b8a78cfafda3160d76949ed"
integrity sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==
-"@emotion/utils@0.11.2":
- version "0.11.2"
- resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-0.11.2.tgz#713056bfdffb396b0a14f1c8f18e7b4d0d200183"
- integrity sha512-UHX2XklLl3sIaP6oiMmlVzT0J+2ATTVpf0dHQVyPJHTkOITvXfaSqnRk6mdDhV9pR8T/tHc3cex78IKXssmzrA==
-
"@emotion/utils@0.11.3":
version "0.11.3"
resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-0.11.3.tgz#a759863867befa7e583400d322652a3f44820924"
integrity sha512-0o4l6pZC+hI88+bzuaX/6BgOvQVhbt2PfmxauVaYOGgbsAw14wdKyvMCZXnsnsHys94iadcF+RG/wZyx6+ZZBw==
-"@emotion/weak-memoize@0.2.4":
- version "0.2.4"
- resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.2.4.tgz#622a72bebd1e3f48d921563b4b60a762295a81fc"
- integrity sha512-6PYY5DVdAY1ifaQW6XYTnOMihmBVT27elqSjEoodchsGjzYlEsTQMcEhSud99kVawatyTZRTiVkJ/c6lwbQ7nA==
-
"@emotion/weak-memoize@0.2.5":
version "0.2.5"
resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz#8eed982e2ee6f7f4e44c253e12962980791efd46"
@@ -1184,7 +998,22 @@
resolved "https://registry.yarnpkg.com/@iarna/toml/-/toml-2.2.3.tgz#f060bf6eaafae4d56a7dac618980838b0696e2ab"
integrity sha512-FmuxfCuolpLl0AnQ2NHSzoUKWEJDFl63qXjzdoWBVyFCXzMGm1spBzk7LeHNoVCiWCF7mRVms9e6jEV9+MoPbg==
-"@jest/console@^24.7.1", "@jest/console@^24.9.0":
+"@istanbuljs/load-nyc-config@^1.0.0":
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.0.0.tgz#10602de5570baea82f8afbfa2630b24e7a8cfe5b"
+ integrity sha512-ZR0rq/f/E4f4XcgnDvtMWXCUJpi8eO0rssVhmztsZqLIEFA9UUP9zmpE0VxlM+kv/E1ul2I876Fwil2ayptDVg==
+ dependencies:
+ camelcase "^5.3.1"
+ find-up "^4.1.0"
+ js-yaml "^3.13.1"
+ resolve-from "^5.0.0"
+
+"@istanbuljs/schema@^0.1.2":
+ version "0.1.2"
+ resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.2.tgz#26520bf09abe4a5644cd5414e37125a8954241dd"
+ integrity sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==
+
+"@jest/console@^24.9.0":
version "24.9.0"
resolved "https://registry.yarnpkg.com/@jest/console/-/console-24.9.0.tgz#79b1bc06fb74a8cfb01cbdedf945584b1b9707f0"
integrity sha512-Zuj6b8TnKXi3q4ymac8EQfc3ea/uhLeCGThFqXeC8H9/raaH8ARPUTdId+XyGd03Z4In0/VjD2OYFcBF09fNLQ==
@@ -1193,39 +1022,49 @@
chalk "^2.0.1"
slash "^2.0.0"
-"@jest/core@^24.9.0":
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/@jest/core/-/core-24.9.0.tgz#2ceccd0b93181f9c4850e74f2a9ad43d351369c4"
- integrity sha512-Fogg3s4wlAr1VX7q+rhV9RVnUv5tD7VuWfYy1+whMiWUrvl7U3QJSJyWcDio9Lq2prqYsZaeTv2Rz24pWGkJ2A==
+"@jest/console@^25.1.0":
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/@jest/console/-/console-25.1.0.tgz#1fc765d44a1e11aec5029c08e798246bd37075ab"
+ integrity sha512-3P1DpqAMK/L07ag/Y9/Jup5iDEG9P4pRAuZiMQnU0JB3UOvCyYCjCoxr7sIA80SeyUCUKrr24fKAxVpmBgQonA==
dependencies:
- "@jest/console" "^24.7.1"
- "@jest/reporters" "^24.9.0"
- "@jest/test-result" "^24.9.0"
- "@jest/transform" "^24.9.0"
- "@jest/types" "^24.9.0"
- ansi-escapes "^3.0.0"
- chalk "^2.0.1"
+ "@jest/source-map" "^25.1.0"
+ chalk "^3.0.0"
+ jest-util "^25.1.0"
+ slash "^3.0.0"
+
+"@jest/core@^25.1.0":
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/@jest/core/-/core-25.1.0.tgz#3d4634fc3348bb2d7532915d67781cdac0869e47"
+ integrity sha512-iz05+NmwCmZRzMXvMo6KFipW7nzhbpEawrKrkkdJzgytavPse0biEnCNr2wRlyCsp3SmKaEY+SGv7YWYQnIdig==
+ dependencies:
+ "@jest/console" "^25.1.0"
+ "@jest/reporters" "^25.1.0"
+ "@jest/test-result" "^25.1.0"
+ "@jest/transform" "^25.1.0"
+ "@jest/types" "^25.1.0"
+ ansi-escapes "^4.2.1"
+ chalk "^3.0.0"
exit "^0.1.2"
- graceful-fs "^4.1.15"
- jest-changed-files "^24.9.0"
- jest-config "^24.9.0"
- jest-haste-map "^24.9.0"
- jest-message-util "^24.9.0"
- jest-regex-util "^24.3.0"
- jest-resolve "^24.9.0"
- jest-resolve-dependencies "^24.9.0"
- jest-runner "^24.9.0"
- jest-runtime "^24.9.0"
- jest-snapshot "^24.9.0"
- jest-util "^24.9.0"
- jest-validate "^24.9.0"
- jest-watcher "^24.9.0"
- micromatch "^3.1.10"
- p-each-series "^1.0.0"
+ graceful-fs "^4.2.3"
+ jest-changed-files "^25.1.0"
+ jest-config "^25.1.0"
+ jest-haste-map "^25.1.0"
+ jest-message-util "^25.1.0"
+ jest-regex-util "^25.1.0"
+ jest-resolve "^25.1.0"
+ jest-resolve-dependencies "^25.1.0"
+ jest-runner "^25.1.0"
+ jest-runtime "^25.1.0"
+ jest-snapshot "^25.1.0"
+ jest-util "^25.1.0"
+ jest-validate "^25.1.0"
+ jest-watcher "^25.1.0"
+ micromatch "^4.0.2"
+ p-each-series "^2.1.0"
realpath-native "^1.1.0"
- rimraf "^2.5.4"
- slash "^2.0.0"
- strip-ansi "^5.0.0"
+ rimraf "^3.0.0"
+ slash "^3.0.0"
+ strip-ansi "^6.0.0"
"@jest/environment@^24.9.0":
version "24.9.0"
@@ -1237,6 +1076,15 @@
"@jest/types" "^24.9.0"
jest-mock "^24.9.0"
+"@jest/environment@^25.1.0":
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-25.1.0.tgz#4a97f64770c9d075f5d2b662b5169207f0a3f787"
+ integrity sha512-cTpUtsjU4cum53VqBDlcW0E4KbQF03Cn0jckGPW/5rrE9tb+porD3+hhLtHAwhthsqfyF+bizyodTlsRA++sHg==
+ dependencies:
+ "@jest/fake-timers" "^25.1.0"
+ "@jest/types" "^25.1.0"
+ jest-mock "^25.1.0"
+
"@jest/fake-timers@^24.9.0":
version "24.9.0"
resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-24.9.0.tgz#ba3e6bf0eecd09a636049896434d306636540c93"
@@ -1246,34 +1094,51 @@
jest-message-util "^24.9.0"
jest-mock "^24.9.0"
-"@jest/reporters@^24.9.0":
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-24.9.0.tgz#86660eff8e2b9661d042a8e98a028b8d631a5b43"
- integrity sha512-mu4X0yjaHrffOsWmVLzitKmmmWSQ3GGuefgNscUSWNiUNcEOSEQk9k3pERKEQVBb0Cnn88+UESIsZEMH3o88Gw==
- dependencies:
- "@jest/environment" "^24.9.0"
- "@jest/test-result" "^24.9.0"
- "@jest/transform" "^24.9.0"
- "@jest/types" "^24.9.0"
- chalk "^2.0.1"
+"@jest/fake-timers@^25.1.0":
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-25.1.0.tgz#a1e0eff51ffdbb13ee81f35b52e0c1c11a350ce8"
+ integrity sha512-Eu3dysBzSAO1lD7cylZd/CVKdZZ1/43SF35iYBNV1Lvvn2Undp3Grwsv8PrzvbLhqwRzDd4zxrY4gsiHc+wygQ==
+ dependencies:
+ "@jest/types" "^25.1.0"
+ jest-message-util "^25.1.0"
+ jest-mock "^25.1.0"
+ jest-util "^25.1.0"
+ lolex "^5.0.0"
+
+"@jest/reporters@^25.1.0":
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-25.1.0.tgz#9178ecf136c48f125674ac328f82ddea46e482b0"
+ integrity sha512-ORLT7hq2acJQa8N+NKfs68ZtHFnJPxsGqmofxW7v7urVhzJvpKZG9M7FAcgh9Ee1ZbCteMrirHA3m5JfBtAaDg==
+ dependencies:
+ "@bcoe/v8-coverage" "^0.2.3"
+ "@jest/console" "^25.1.0"
+ "@jest/environment" "^25.1.0"
+ "@jest/test-result" "^25.1.0"
+ "@jest/transform" "^25.1.0"
+ "@jest/types" "^25.1.0"
+ chalk "^3.0.0"
+ collect-v8-coverage "^1.0.0"
exit "^0.1.2"
glob "^7.1.2"
- istanbul-lib-coverage "^2.0.2"
- istanbul-lib-instrument "^3.0.1"
- istanbul-lib-report "^2.0.4"
- istanbul-lib-source-maps "^3.0.1"
- istanbul-reports "^2.2.6"
- jest-haste-map "^24.9.0"
- jest-resolve "^24.9.0"
- jest-runtime "^24.9.0"
- jest-util "^24.9.0"
- jest-worker "^24.6.0"
- node-notifier "^5.4.2"
- slash "^2.0.0"
+ istanbul-lib-coverage "^3.0.0"
+ istanbul-lib-instrument "^4.0.0"
+ istanbul-lib-report "^3.0.0"
+ istanbul-lib-source-maps "^4.0.0"
+ istanbul-reports "^3.0.0"
+ jest-haste-map "^25.1.0"
+ jest-resolve "^25.1.0"
+ jest-runtime "^25.1.0"
+ jest-util "^25.1.0"
+ jest-worker "^25.1.0"
+ slash "^3.0.0"
source-map "^0.6.0"
- string-length "^2.0.0"
+ string-length "^3.1.0"
+ terminal-link "^2.0.0"
+ v8-to-istanbul "^4.0.1"
+ optionalDependencies:
+ node-notifier "^6.0.0"
-"@jest/source-map@^24.3.0", "@jest/source-map@^24.9.0":
+"@jest/source-map@^24.9.0":
version "24.9.0"
resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-24.9.0.tgz#0e263a94430be4b41da683ccc1e6bffe2a191714"
integrity sha512-/Xw7xGlsZb4MJzNDgB7PW5crou5JqWiBQaz6xyPd3ArOg2nfn/PunV8+olXbbEZzNl591o5rWKE9BRDaFAuIBg==
@@ -1282,6 +1147,15 @@
graceful-fs "^4.1.15"
source-map "^0.6.0"
+"@jest/source-map@^25.1.0":
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-25.1.0.tgz#b012e6c469ccdbc379413f5c1b1ffb7ba7034fb0"
+ integrity sha512-ohf2iKT0xnLWcIUhL6U6QN+CwFWf9XnrM2a6ybL9NXxJjgYijjLSitkYHIdzkd8wFliH73qj/+epIpTiWjRtAA==
+ dependencies:
+ callsites "^3.0.0"
+ graceful-fs "^4.2.3"
+ source-map "^0.6.0"
+
"@jest/test-result@^24.9.0":
version "24.9.0"
resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-24.9.0.tgz#11796e8aa9dbf88ea025757b3152595ad06ba0ca"
@@ -1291,15 +1165,26 @@
"@jest/types" "^24.9.0"
"@types/istanbul-lib-coverage" "^2.0.0"
-"@jest/test-sequencer@^24.9.0":
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-24.9.0.tgz#f8f334f35b625a4f2f355f2fe7e6036dad2e6b31"
- integrity sha512-6qqsU4o0kW1dvA95qfNog8v8gkRN9ph6Lz7r96IvZpHdNipP2cBcb07J1Z45mz/VIS01OHJ3pY8T5fUY38tg4A==
+"@jest/test-result@^25.1.0":
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-25.1.0.tgz#847af2972c1df9822a8200457e64be4ff62821f7"
+ integrity sha512-FZzSo36h++U93vNWZ0KgvlNuZ9pnDnztvaM7P/UcTx87aPDotG18bXifkf1Ji44B7k/eIatmMzkBapnAzjkJkg==
dependencies:
- "@jest/test-result" "^24.9.0"
- jest-haste-map "^24.9.0"
- jest-runner "^24.9.0"
- jest-runtime "^24.9.0"
+ "@jest/console" "^25.1.0"
+ "@jest/transform" "^25.1.0"
+ "@jest/types" "^25.1.0"
+ "@types/istanbul-lib-coverage" "^2.0.0"
+ collect-v8-coverage "^1.0.0"
+
+"@jest/test-sequencer@^25.1.0":
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-25.1.0.tgz#4df47208542f0065f356fcdb80026e3c042851ab"
+ integrity sha512-WgZLRgVr2b4l/7ED1J1RJQBOharxS11EFhmwDqknpknE0Pm87HLZVS2Asuuw+HQdfQvm2aXL2FvvBLxOD1D0iw==
+ dependencies:
+ "@jest/test-result" "^25.1.0"
+ jest-haste-map "^25.1.0"
+ jest-runner "^25.1.0"
+ jest-runtime "^25.1.0"
"@jest/transform@^24.9.0":
version "24.9.0"
@@ -1323,6 +1208,28 @@
source-map "^0.6.1"
write-file-atomic "2.4.1"
+"@jest/transform@^25.1.0":
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-25.1.0.tgz#221f354f512b4628d88ce776d5b9e601028ea9da"
+ integrity sha512-4ktrQ2TPREVeM+KxB4zskAT84SnmG1vaz4S+51aTefyqn3zocZUnliLLm5Fsl85I3p/kFPN4CRp1RElIfXGegQ==
+ dependencies:
+ "@babel/core" "^7.1.0"
+ "@jest/types" "^25.1.0"
+ babel-plugin-istanbul "^6.0.0"
+ chalk "^3.0.0"
+ convert-source-map "^1.4.0"
+ fast-json-stable-stringify "^2.0.0"
+ graceful-fs "^4.2.3"
+ jest-haste-map "^25.1.0"
+ jest-regex-util "^25.1.0"
+ jest-util "^25.1.0"
+ micromatch "^4.0.2"
+ pirates "^4.0.1"
+ realpath-native "^1.1.0"
+ slash "^3.0.0"
+ source-map "^0.6.1"
+ write-file-atomic "^3.0.0"
+
"@jest/types@^24.9.0":
version "24.9.0"
resolved "https://registry.yarnpkg.com/@jest/types/-/types-24.9.0.tgz#63cb26cb7500d069e5a389441a7c6ab5e909fc59"
@@ -1332,6 +1239,16 @@
"@types/istanbul-reports" "^1.1.1"
"@types/yargs" "^13.0.0"
+"@jest/types@^25.1.0":
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/@jest/types/-/types-25.1.0.tgz#b26831916f0d7c381e11dbb5e103a72aed1b4395"
+ integrity sha512-VpOtt7tCrgvamWZh1reVsGADujKigBUFTi19mlRjqEGsE8qH4r3s+skY33dNdXOwyZIvuftZ5tqdF1IgsMejMA==
+ dependencies:
+ "@types/istanbul-lib-coverage" "^2.0.0"
+ "@types/istanbul-reports" "^1.1.1"
+ "@types/yargs" "^15.0.0"
+ chalk "^3.0.0"
+
"@mrmlnc/readdir-enhanced@^2.2.1":
version "2.2.1"
resolved "https://registry.yarnpkg.com/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz#524af240d1a360527b730475ecfa1344aa540dde"
@@ -1387,111 +1304,121 @@
physical-cpu-count "^2.0.0"
"@reach/router@^1.2.1":
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/@reach/router/-/router-1.2.1.tgz#34ae3541a5ac44fa7796e5506a5d7274a162be4e"
- integrity sha512-kTaX08X4g27tzIFQGRukaHmNbtMYDS3LEWIS8+l6OayGIw6Oyo1HIF/JzeuR2FoF9z6oV+x/wJSVSq4v8tcUGQ==
+ version "1.3.1"
+ resolved "https://registry.yarnpkg.com/@reach/router/-/router-1.3.1.tgz#0a49f75fa9621323d6e21c803447bcfcde1713b2"
+ integrity sha512-Ov1j1J+pSgXliJHFL7XWhjyREwc6GxeWfgBTa5MMH5eRmYtHbPhaovba4xKo7aTVCg8fxkt2yDMNSpvwfUP+pA==
dependencies:
- create-react-context "^0.2.1"
+ create-react-context "0.3.0"
invariant "^2.2.3"
prop-types "^15.6.1"
react-lifecycles-compat "^3.0.4"
- warning "^3.0.0"
"@react-dnd/asap@^4.0.0":
version "4.0.0"
resolved "https://registry.yarnpkg.com/@react-dnd/asap/-/asap-4.0.0.tgz#b300eeed83e9801f51bd66b0337c9a6f04548651"
integrity sha512-0XhqJSc6pPoNnf8DhdsPHtUhRzZALVzYMTzRwV4VI6DJNJ/5xxfL9OQUwb8IH5/2x7lSf7nAZrnzUD+16VyOVQ==
-"@react-dnd/invariant@^2.0.0":
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/@react-dnd/invariant/-/invariant-2.0.0.tgz#09d2e81cd39e0e767d7da62df9325860f24e517e"
- integrity sha512-xL4RCQBCBDJ+GRwKTFhGUW8GXa4yoDfJrPbLblc3U09ciS+9ZJXJ3Qrcs/x2IODOdIE5kQxvMmE2UKyqUictUw==
+"@react-dnd/invariant@^2.0.0":
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/@react-dnd/invariant/-/invariant-2.0.0.tgz#09d2e81cd39e0e767d7da62df9325860f24e517e"
+ integrity sha512-xL4RCQBCBDJ+GRwKTFhGUW8GXa4yoDfJrPbLblc3U09ciS+9ZJXJ3Qrcs/x2IODOdIE5kQxvMmE2UKyqUictUw==
+
+"@react-dnd/shallowequal@^2.0.0":
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/@react-dnd/shallowequal/-/shallowequal-2.0.0.tgz#a3031eb54129f2c66b2753f8404266ec7bf67f0a"
+ integrity sha512-Pc/AFTdwZwEKJxFJvlxrSmGe/di+aAOBn60sremrpLo6VI/6cmiUYNNwlI5KNYttg7uypzA3ILPMPgxB2GYZEg==
+
+"@rollup/plugin-commonjs@^11.0.2":
+ version "11.0.2"
+ resolved "https://registry.yarnpkg.com/@rollup/plugin-commonjs/-/plugin-commonjs-11.0.2.tgz#837cc6950752327cb90177b608f0928a4e60b582"
+ integrity sha512-MPYGZr0qdbV5zZj8/2AuomVpnRVXRU5XKXb3HVniwRoRCreGlf5kOE081isNWeiLIi6IYkwTX9zE0/c7V8g81g==
+ dependencies:
+ "@rollup/pluginutils" "^3.0.0"
+ estree-walker "^1.0.1"
+ is-reference "^1.1.2"
+ magic-string "^0.25.2"
+ resolve "^1.11.0"
+
+"@rollup/plugin-node-resolve@^7.1.1":
+ version "7.1.1"
+ resolved "https://registry.yarnpkg.com/@rollup/plugin-node-resolve/-/plugin-node-resolve-7.1.1.tgz#8c6e59c4b28baf9d223028d0e450e06a485bb2b7"
+ integrity sha512-14ddhD7TnemeHE97a4rLOhobfYvUVcaYuqTnL8Ti7Jxi9V9Jr5LY7Gko4HZ5k4h4vqQM0gBQt6tsp9xXW94WPA==
+ dependencies:
+ "@rollup/pluginutils" "^3.0.6"
+ "@types/resolve" "0.0.8"
+ builtin-modules "^3.1.0"
+ is-module "^1.0.0"
+ resolve "^1.14.2"
+
+"@rollup/pluginutils@^3.0.0", "@rollup/pluginutils@^3.0.6":
+ version "3.0.8"
+ resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-3.0.8.tgz#4e94d128d94b90699e517ef045422960d18c8fde"
+ integrity sha512-rYGeAc4sxcZ+kPG/Tw4/fwJODC3IXHYDH4qusdN/b6aLw5LPUbzpecYbEJh4sVQGPFJxd2dBU4kc1H3oy9/bnw==
+ dependencies:
+ estree-walker "^1.0.1"
+
+"@sinonjs/commons@^1.7.0":
+ version "1.7.0"
+ resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.7.0.tgz#f90ffc52a2e519f018b13b6c4da03cbff36ebed6"
+ integrity sha512-qbk9AP+cZUsKdW1GJsBpxPKFmCJ0T8swwzVje3qFd+AkQb74Q/tiuzrdfFg8AD2g5HH/XbE/I8Uc1KYHVYWfhg==
+ dependencies:
+ type-detect "4.0.8"
-"@storybook/addon-options@^5.2.6":
- version "5.2.6"
- resolved "https://registry.yarnpkg.com/@storybook/addon-options/-/addon-options-5.2.6.tgz#a9b5d3d81a6c4e4004ae8d048c4f06076ae5029e"
- integrity sha512-M/+9H4UmjZCv2tpmQKwLcxN/ptAgcTK7Fg6xXH4z/jSqSJ084JrRXMrh8MHvMQwSMpqADyo8AeHxzgs6jSdoeQ==
+"@storybook/addon-options@^5.3.13":
+ version "5.3.13"
+ resolved "https://registry.yarnpkg.com/@storybook/addon-options/-/addon-options-5.3.13.tgz#d28c03a95ed2dfee7521b783226c3409c7491c0b"
+ integrity sha512-ZBbVNR4NbCcL6Jg0T1LVH1fntD6XV8PUhCBVmRvQM0MDUXbf5JdE6LLyoA/W8x5jck/yGHskLZIZRsOKnYK8Vw==
dependencies:
- "@storybook/addons" "5.2.6"
+ "@storybook/addons" "5.3.13"
core-js "^3.0.1"
util-deprecate "^1.0.2"
-"@storybook/addon-storyshots@^5.2.6":
- version "5.2.6"
- resolved "https://registry.yarnpkg.com/@storybook/addon-storyshots/-/addon-storyshots-5.2.6.tgz#cc94f256cb28e2769a3dd472af420f8e0fcc306f"
- integrity sha512-04UX6VXFOrv1o41L8P3mevFYN2H9RU6JCNXfqCJLtD4ZxP5iDoXjF8/0VWLdqCPANe9Ng58r5BnZgNwWPjcGbA==
+"@storybook/addon-storyshots@^5.3.13":
+ version "5.3.13"
+ resolved "https://registry.yarnpkg.com/@storybook/addon-storyshots/-/addon-storyshots-5.3.13.tgz#b2619655947303a13baebe2b6a00de5a0e41c9c7"
+ integrity sha512-qRVnNmlVxd/JBqpdZnAvdhpNYAJzk7sO4rrt1hFA2T+EwXciYpEX9fuvErEalQYCedHi5yDmbeA/p8zsWyKvow==
dependencies:
"@jest/transform" "^24.9.0"
- "@storybook/addons" "5.2.6"
+ "@storybook/addons" "5.3.13"
+ "@storybook/client-api" "5.3.13"
+ "@storybook/core" "5.3.13"
+ "@types/glob" "^7.1.1"
+ "@types/jest" "^24.0.16"
+ "@types/jest-specific-snapshot" "^0.5.3"
+ babel-plugin-require-context-hook "^1.0.0"
core-js "^3.0.1"
glob "^7.1.3"
global "^4.3.2"
jest-specific-snapshot "^2.0.0"
- read-pkg-up "^6.0.0"
- regenerator-runtime "^0.12.1"
+ read-pkg-up "^7.0.0"
+ regenerator-runtime "^0.13.3"
ts-dedent "^1.1.0"
-"@storybook/addons@5.2.6":
- version "5.2.6"
- resolved "https://registry.yarnpkg.com/@storybook/addons/-/addons-5.2.6.tgz#c1278137acb3502e068b0b0d07a8371c607e9c02"
- integrity sha512-5MF64lsAhIEMxTbVpYROz5Wez595iwSw45yXyP8gWt12d+EmFO5tdy7cYJCxcMuVhDfaCI78tFqS9orr1atVyA==
- dependencies:
- "@storybook/api" "5.2.6"
- "@storybook/channels" "5.2.6"
- "@storybook/client-logger" "5.2.6"
- "@storybook/core-events" "5.2.6"
- core-js "^3.0.1"
- global "^4.3.2"
- util-deprecate "^1.0.2"
-
-"@storybook/addons@5.3.8":
- version "5.3.8"
- resolved "https://registry.yarnpkg.com/@storybook/addons/-/addons-5.3.8.tgz#62d62bafd4a73195f617e39f3c61ec7e7837b1ee"
- integrity sha512-670QGxDuS4ZkQa7SEAGgcFaO3WvedEVJaRAoCMs0AKP+sllrbph77oCm6W0NjM6bMGwhsKc8/ownOoAbec+haw==
+"@storybook/addons@5.3.13":
+ version "5.3.13"
+ resolved "https://registry.yarnpkg.com/@storybook/addons/-/addons-5.3.13.tgz#8c16fbab1142e2cd4bdfb93ffcb35a883dac2866"
+ integrity sha512-Yjn8PXhSYw4bnB/l8ybhMw3eqpJlV3HlwMECYhRtVm+wTqal9OQlZkam5xclWm6PF/6DhyiPCt6vlXN3vfVGPA==
dependencies:
- "@storybook/api" "5.3.8"
- "@storybook/channels" "5.3.8"
- "@storybook/client-logger" "5.3.8"
- "@storybook/core-events" "5.3.8"
+ "@storybook/api" "5.3.13"
+ "@storybook/channels" "5.3.13"
+ "@storybook/client-logger" "5.3.13"
+ "@storybook/core-events" "5.3.13"
core-js "^3.0.1"
global "^4.3.2"
util-deprecate "^1.0.2"
-"@storybook/api@5.2.6":
- version "5.2.6"
- resolved "https://registry.yarnpkg.com/@storybook/api/-/api-5.2.6.tgz#43d3c20b90e585e6c94b36e29845d39704ae2135"
- integrity sha512-X/di44/SAL68mD6RHTX2qdWwhjRW6BgcfPtu0dMd38ErB3AfsfP4BITXs6kFOeSM8kWiaQoyuw0pOBzA8vlYug==
- dependencies:
- "@storybook/channels" "5.2.6"
- "@storybook/client-logger" "5.2.6"
- "@storybook/core-events" "5.2.6"
- "@storybook/router" "5.2.6"
- "@storybook/theming" "5.2.6"
- core-js "^3.0.1"
- fast-deep-equal "^2.0.1"
- global "^4.3.2"
- lodash "^4.17.15"
- memoizerific "^1.11.3"
- prop-types "^15.6.2"
- react "^16.8.3"
- semver "^6.0.0"
- shallow-equal "^1.1.0"
- store2 "^2.7.1"
- telejson "^3.0.2"
- util-deprecate "^1.0.2"
-
-"@storybook/api@5.3.8":
- version "5.3.8"
- resolved "https://registry.yarnpkg.com/@storybook/api/-/api-5.3.8.tgz#5f887911c87d1e6e1d8c12106c17f05377c6544b"
- integrity sha512-Pso860gtyRc8HJ0dUkprZBSPHNrQj2zpX+C2a4TdpXgM/IW8cDQaZ4JW8ShkxxT1upKTQzVKAuogh4uWfKCJVA==
+"@storybook/api@5.3.13":
+ version "5.3.13"
+ resolved "https://registry.yarnpkg.com/@storybook/api/-/api-5.3.13.tgz#51cbdb461ff2ee8468a3c54411f42f07aa307f5d"
+ integrity sha512-ZOBUOz0aRPD7w8UngcVOjwcXt417Zboi0ERW+Atn22ZUYqI3zri8M9EerLHvyKw7J42/gEIqQqg5PyfPcLJmeQ==
dependencies:
"@reach/router" "^1.2.1"
- "@storybook/channels" "5.3.8"
- "@storybook/client-logger" "5.3.8"
- "@storybook/core-events" "5.3.8"
+ "@storybook/channels" "5.3.13"
+ "@storybook/client-logger" "5.3.13"
+ "@storybook/core-events" "5.3.13"
"@storybook/csf" "0.0.1"
- "@storybook/router" "5.3.8"
- "@storybook/theming" "5.3.8"
+ "@storybook/router" "5.3.13"
+ "@storybook/theming" "5.3.13"
"@types/reach__router" "^1.2.3"
core-js "^3.0.1"
fast-deep-equal "^2.0.1"
@@ -1506,41 +1433,34 @@
telejson "^3.2.0"
util-deprecate "^1.0.2"
-"@storybook/channel-postmessage@5.3.8":
- version "5.3.8"
- resolved "https://registry.yarnpkg.com/@storybook/channel-postmessage/-/channel-postmessage-5.3.8.tgz#76544f1fd276338df9f427eec11d3ec12de86215"
- integrity sha512-dnWD39+ABBy4bkXIUnlgo9CArfWfQ9D3xYykY8GXLlNMIVlAQBqPmBIHrd05ly7Z1CDjh0WY7dLK7vNG5nZm6A==
+"@storybook/channel-postmessage@5.3.13":
+ version "5.3.13"
+ resolved "https://registry.yarnpkg.com/@storybook/channel-postmessage/-/channel-postmessage-5.3.13.tgz#80cf8136bf4b96b2f9b291d3cc81e5d02abecc98"
+ integrity sha512-FMrl49ipHPXB0XPuwXm/2GWM5b53iFFz9V4/SQC1s31kxAU99QFmWXWvRKbM29FpAVHvTdjQllIiOWgdTH8jAA==
dependencies:
- "@storybook/channels" "5.3.8"
- "@storybook/client-logger" "5.3.8"
+ "@storybook/channels" "5.3.13"
+ "@storybook/client-logger" "5.3.13"
core-js "^3.0.1"
global "^4.3.2"
telejson "^3.2.0"
-"@storybook/channels@5.2.6":
- version "5.2.6"
- resolved "https://registry.yarnpkg.com/@storybook/channels/-/channels-5.2.6.tgz#e2837508864dc4d5b5e03f078886f0ce113762ea"
- integrity sha512-/UsktYsXuvb1efjVPCEivhh5ywRhm7hl73pQnpJLJHRqyLMM2I5nGPFELTTNuU9yWy7sP9QL5gRqBBPe1sqjZQ==
- dependencies:
- core-js "^3.0.1"
-
-"@storybook/channels@5.3.8":
- version "5.3.8"
- resolved "https://registry.yarnpkg.com/@storybook/channels/-/channels-5.3.8.tgz#778696b791e49c19b8de95c4bfb0ebb363745059"
- integrity sha512-nYcBRUE5k855saNqTRU8X2p6QEDE28T05rinJTC2IOZA+iemrZNSobe56lAXBuNZk4vQFuJQb0Caxuu9o4+ADw==
+"@storybook/channels@5.3.13":
+ version "5.3.13"
+ resolved "https://registry.yarnpkg.com/@storybook/channels/-/channels-5.3.13.tgz#2adf4595988e2586f1a360cf4760f16338ffec26"
+ integrity sha512-lD4HXmfoKJAnAlAYwQJ5dDXG3WnW7jpW3wJieRwvQGDFHQSXdJ3Lv5/zv2y+TM06Jx8O2esaepNw+VzjMw3/Qg==
dependencies:
core-js "^3.0.1"
-"@storybook/client-api@5.3.8":
- version "5.3.8"
- resolved "https://registry.yarnpkg.com/@storybook/client-api/-/client-api-5.3.8.tgz#e2e461e915c5e5796638efb3913d59411a9012d4"
- integrity sha512-jPdkPuTBQ7uLTAAcaB9m84o+pJDQy3N3zPuSkt8SFz3LdJS0WJESsaPqxUV1BL0Lzr8Y2wumjKwVgQLumhUmvA==
+"@storybook/client-api@5.3.13":
+ version "5.3.13"
+ resolved "https://registry.yarnpkg.com/@storybook/client-api/-/client-api-5.3.13.tgz#0d41ae3846a6ae2ebbbeef0ca945c3ee6448ba2e"
+ integrity sha512-GZCFtpU764X8TW+RYRNybIGHKJOa2fYW28I0hEPXXE0J4BeU4Z++SCeNhVBa+0tPoQ3jbsdA7M4Q5Q5UeaG2Nw==
dependencies:
- "@storybook/addons" "5.3.8"
- "@storybook/channel-postmessage" "5.3.8"
- "@storybook/channels" "5.3.8"
- "@storybook/client-logger" "5.3.8"
- "@storybook/core-events" "5.3.8"
+ "@storybook/addons" "5.3.13"
+ "@storybook/channel-postmessage" "5.3.13"
+ "@storybook/channels" "5.3.13"
+ "@storybook/client-logger" "5.3.13"
+ "@storybook/core-events" "5.3.13"
"@storybook/csf" "0.0.1"
"@types/webpack-env" "^1.15.0"
core-js "^3.0.1"
@@ -1554,27 +1474,20 @@
ts-dedent "^1.1.0"
util-deprecate "^1.0.2"
-"@storybook/client-logger@5.2.6":
- version "5.2.6"
- resolved "https://registry.yarnpkg.com/@storybook/client-logger/-/client-logger-5.2.6.tgz#cfc4536e9b724b086f7509c2bb34c221016713c9"
- integrity sha512-hJvPD267cCwLIRMOISjDH8h9wbwOcXIJip29UlJbU9iMtZtgE+YelmlpmZJvqcDfUiXWWrOh7tP76mj8EAfwIQ==
+"@storybook/client-logger@5.3.13":
+ version "5.3.13"
+ resolved "https://registry.yarnpkg.com/@storybook/client-logger/-/client-logger-5.3.13.tgz#1c2abf0fc53009cf159eb76e30cf32ce2b9327b1"
+ integrity sha512-unfhCgsGWWqNpM8t8S5coDcTgpWtOq3Kj4LEHivNjdHZFdf8WMLidW79ZTiyk/Nzx7RvZKgkvf7f6EtZniD55w==
dependencies:
core-js "^3.0.1"
-"@storybook/client-logger@5.3.8":
- version "5.3.8"
- resolved "https://registry.yarnpkg.com/@storybook/client-logger/-/client-logger-5.3.8.tgz#2e846eb43c42e9602a2cf619c0f3ea7381e312b3"
- integrity sha512-OaWVBwGcvQq2rArSNn+s/ePWWETwal5JQn00D6feWNxqprUkUb3aE6Ao/jgBcW/g3lDAQivT7wYwhP33tkx91w==
+"@storybook/components@5.3.13":
+ version "5.3.13"
+ resolved "https://registry.yarnpkg.com/@storybook/components/-/components-5.3.13.tgz#646f8347ffa38298e3f9c1d15866c2167f577027"
+ integrity sha512-AwMnLCStwqLWsBzXp7m/QXuJin//0l4FH+OXmnD/6GC8qEy4JuutEOPW35IE/Mp9KAvbapHcnPTRMmDohUsTcw==
dependencies:
- core-js "^3.0.1"
-
-"@storybook/components@5.3.8":
- version "5.3.8"
- resolved "https://registry.yarnpkg.com/@storybook/components/-/components-5.3.8.tgz#1d21a02ea0058fa8ee20d44248550f9f5b500114"
- integrity sha512-V8ByPSGruChH0CeTFrABGWmY8EfFOukbYSH+Rul/AG2+xg7l0Mx8LJIeq63Yc3XAvAeRyvbwf1rLe3F5l4/QZA==
- dependencies:
- "@storybook/client-logger" "5.3.8"
- "@storybook/theming" "5.3.8"
+ "@storybook/client-logger" "5.3.13"
+ "@storybook/theming" "5.3.13"
"@types/react-syntax-highlighter" "11.0.2"
"@types/react-textarea-autosize" "^4.3.3"
core-js "^3.0.1"
@@ -1595,40 +1508,33 @@
simplebar-react "^1.0.0-alpha.6"
ts-dedent "^1.1.0"
-"@storybook/core-events@5.2.6":
- version "5.2.6"
- resolved "https://registry.yarnpkg.com/@storybook/core-events/-/core-events-5.2.6.tgz#34c9aae256e7e5f4a565b81f1e77dda8bccc6752"
- integrity sha512-W8kLJ7tc0aAxs11CPUxUOCReocKL4MYGyjTg8qwk0USLzPUb/FUQWmhcm2ilFz6Nz8dXLcKrXdRVYTmiMsgAeg==
- dependencies:
- core-js "^3.0.1"
-
-"@storybook/core-events@5.3.8":
- version "5.3.8"
- resolved "https://registry.yarnpkg.com/@storybook/core-events/-/core-events-5.3.8.tgz#2cc85c8109e4734298b3e1f5919c764d6abbf2f4"
- integrity sha512-2GGjZj+AM4OpxU7qI2ixBeek3eigMzlyvQnDpe7cZlWDzNPNvWTspiSyQScFrtD1XV/vJTHdgDBpGb3uNHz7Eg==
+"@storybook/core-events@5.3.13":
+ version "5.3.13"
+ resolved "https://registry.yarnpkg.com/@storybook/core-events/-/core-events-5.3.13.tgz#df74d2ffe29a1924557dc67e46d5d399893b2b11"
+ integrity sha512-RAnQe/I+1Ri+aYGhaNn07467cyespNX9R9i1AzFT/baBOQF2N+998mfgRu4/i/Q9YuOXIyHhw1a7JHbE/8e1lw==
dependencies:
core-js "^3.0.1"
-"@storybook/core@5.3.8":
- version "5.3.8"
- resolved "https://registry.yarnpkg.com/@storybook/core/-/core-5.3.8.tgz#7748875afdddc9fb0ca24d0b712cc9c25fcaad9d"
- integrity sha512-srMeSseUrSmh4pTe9DBD7IdFcLZoIm5r2cnH0nzPNpbrCknegW1LLLuVmSz8wLjobIrU/GYs6AO0VxKDnnbXuw==
+"@storybook/core@5.3.13":
+ version "5.3.13"
+ resolved "https://registry.yarnpkg.com/@storybook/core/-/core-5.3.13.tgz#a6653befc867aa46bb53b43c1f4b8c51a9aa5845"
+ integrity sha512-HS//95j14XOb9ChYJBDHyZKAqFD2WsUh1q7sMMynSpKgHJjyfYI12rwxH5vDIrJ7CLBQbrMWrgOITjB9/cLJKA==
dependencies:
"@babel/plugin-proposal-class-properties" "^7.7.0"
"@babel/plugin-proposal-object-rest-spread" "^7.6.2"
"@babel/plugin-syntax-dynamic-import" "^7.2.0"
"@babel/plugin-transform-react-constant-elements" "^7.2.0"
"@babel/preset-env" "^7.4.5"
- "@storybook/addons" "5.3.8"
- "@storybook/channel-postmessage" "5.3.8"
- "@storybook/client-api" "5.3.8"
- "@storybook/client-logger" "5.3.8"
- "@storybook/core-events" "5.3.8"
+ "@storybook/addons" "5.3.13"
+ "@storybook/channel-postmessage" "5.3.13"
+ "@storybook/client-api" "5.3.13"
+ "@storybook/client-logger" "5.3.13"
+ "@storybook/core-events" "5.3.13"
"@storybook/csf" "0.0.1"
- "@storybook/node-logger" "5.3.8"
- "@storybook/router" "5.3.8"
- "@storybook/theming" "5.3.8"
- "@storybook/ui" "5.3.8"
+ "@storybook/node-logger" "5.3.13"
+ "@storybook/router" "5.3.13"
+ "@storybook/theming" "5.3.13"
+ "@storybook/ui" "5.3.13"
airbnb-js-shims "^2.2.1"
ansi-to-html "^0.6.11"
autoprefixer "^9.7.2"
@@ -1695,10 +1601,10 @@
dependencies:
lodash "^4.17.15"
-"@storybook/node-logger@5.3.8":
- version "5.3.8"
- resolved "https://registry.yarnpkg.com/@storybook/node-logger/-/node-logger-5.3.8.tgz#dd6bfba5532adece7e387457ed8077edde008a20"
- integrity sha512-/UL3fOWRRAR7zMP+66Bqn3wJPkzj5AtnBDHqqkhzFM/sqMn+fvJUXqxNm9C3+CVG1RtgFQ9qLPyb16LZ596a6A==
+"@storybook/node-logger@5.3.13":
+ version "5.3.13"
+ resolved "https://registry.yarnpkg.com/@storybook/node-logger/-/node-logger-5.3.13.tgz#f41c611c3b200add8d85777f19970bdabaa94634"
+ integrity sha512-ZpuyKALHq/ZyynXnsW254JaULWZLPBFw007tkJhE5z/CLy059cIVovQhX/8Ivt3FG3qwWmcqQ0ISHFi0dJpqnA==
dependencies:
"@types/npmlog" "^4.1.2"
chalk "^3.0.0"
@@ -1707,17 +1613,17 @@
pretty-hrtime "^1.0.3"
regenerator-runtime "^0.13.3"
-"@storybook/react@^5.2.6":
- version "5.3.8"
- resolved "https://registry.yarnpkg.com/@storybook/react/-/react-5.3.8.tgz#6b2fcbc890363669531d42035ed7f5de79f99cb7"
- integrity sha512-nxW3KBxOdGlRbI2q0dueRdpIc4/nUiMjvZAeNgDBoYGetmdeTq5dudNJsdSqdruy/2GdgrW3KUb27wPRMDAfLQ==
+"@storybook/react@^5.3.13":
+ version "5.3.13"
+ resolved "https://registry.yarnpkg.com/@storybook/react/-/react-5.3.13.tgz#b2daa820ffce6cd07d52e89d9ac823b9f5562637"
+ integrity sha512-McBwRjGbe6vgjSqdcDtVxKyjGhRGBaN6JLsRr/Bi49KM/sw9SpXuoYxCQVQjK5jMpUV+1UeEpS/5j7HNeVc6YA==
dependencies:
"@babel/plugin-transform-react-constant-elements" "^7.6.3"
"@babel/preset-flow" "^7.0.0"
"@babel/preset-react" "^7.0.0"
- "@storybook/addons" "5.3.8"
- "@storybook/core" "5.3.8"
- "@storybook/node-logger" "5.3.8"
+ "@storybook/addons" "5.3.13"
+ "@storybook/core" "5.3.13"
+ "@storybook/node-logger" "5.3.13"
"@svgr/webpack" "^4.0.3"
"@types/webpack-env" "^1.15.0"
babel-plugin-add-react-displayname "^0.0.5"
@@ -1726,7 +1632,7 @@
core-js "^3.0.1"
global "^4.3.2"
lodash "^4.17.15"
- mini-css-extract-plugin "^0.8.0"
+ mini-css-extract-plugin "^0.7.0"
prop-types "^15.7.2"
react-dev-utils "^9.0.0"
regenerator-runtime "^0.13.3"
@@ -1734,23 +1640,10 @@
ts-dedent "^1.1.0"
webpack "^4.33.0"
-"@storybook/router@5.2.6":
- version "5.2.6"
- resolved "https://registry.yarnpkg.com/@storybook/router/-/router-5.2.6.tgz#5180d3785501699283c6c3717986c877f84fead5"
- integrity sha512-/FZd3fYg5s2QzOqSIP8UMOSnCIFFIlli/jKlOxvm3WpcpxgwQOY4lfHsLO+r9ThCLs2UvVg2R/HqGrOHqDFU7A==
- dependencies:
- "@reach/router" "^1.2.1"
- "@types/reach__router" "^1.2.3"
- core-js "^3.0.1"
- global "^4.3.2"
- lodash "^4.17.15"
- memoizerific "^1.11.3"
- qs "^6.6.0"
-
-"@storybook/router@5.3.8":
- version "5.3.8"
- resolved "https://registry.yarnpkg.com/@storybook/router/-/router-5.3.8.tgz#91eb8822e0aa6c5b59d2db1b52b88010d9800cc3"
- integrity sha512-QYVYq1tbFwABEU3pxiEO4bSO+NJJX37LazN/j59QQkz8Tf9r5V9eMNxqVu5IeY3Gi0dQazLM1ghveNU4zb5MCg==
+"@storybook/router@5.3.13":
+ version "5.3.13"
+ resolved "https://registry.yarnpkg.com/@storybook/router/-/router-5.3.13.tgz#1ef971488036083ee284323fe8814b8795f94626"
+ integrity sha512-C6PNKHxKwpNHPeQkd9ZfsIBfSBTEhWEbn9cVMPSTrUyjfaGWxbKBP8zuBIXhezIv8B2gv2bQrT62hrmsXUcCVg==
dependencies:
"@reach/router" "^1.2.1"
"@storybook/csf" "0.0.1"
@@ -1762,32 +1655,14 @@
qs "^6.6.0"
util-deprecate "^1.0.2"
-"@storybook/theming@5.2.6":
- version "5.2.6"
- resolved "https://registry.yarnpkg.com/@storybook/theming/-/theming-5.2.6.tgz#e04170b3e53dcfc791b2381c8a39192ae88cd291"
- integrity sha512-Xa9R/H8DDgmvxsCHloJUJ2d9ZQl80AeqHrL+c/AKNpx05s9lV74DcinusCf0kz72YGUO/Xt1bAjuOvLnAaS8Gw==
- dependencies:
- "@emotion/core" "^10.0.14"
- "@emotion/styled" "^10.0.14"
- "@storybook/client-logger" "5.2.6"
- common-tags "^1.8.0"
- core-js "^3.0.1"
- deep-object-diff "^1.1.0"
- emotion-theming "^10.0.14"
- global "^4.3.2"
- memoizerific "^1.11.3"
- polished "^3.3.1"
- prop-types "^15.7.2"
- resolve-from "^5.0.0"
-
-"@storybook/theming@5.3.8":
- version "5.3.8"
- resolved "https://registry.yarnpkg.com/@storybook/theming/-/theming-5.3.8.tgz#7c0cb31e65c9da690dab50a99996f3e7c106ce97"
- integrity sha512-W3LDFoLg7wnBnqz1GB6EZpTOdFvNObwyKV2vDjY2YNFPc2TN/w4LAQA+4Lgh3Py0O1j1v3796QwOgui+i1W0pw==
+"@storybook/theming@5.3.13":
+ version "5.3.13"
+ resolved "https://registry.yarnpkg.com/@storybook/theming/-/theming-5.3.13.tgz#17e8101e2d3ad3fb6245b2cb15b07e9f2a9881cd"
+ integrity sha512-Zb07pDt8Sv5uq+xDW3TsiTXS9IGwUNwpkR6UQgKILFJ7HX2q4Tt9r+wIi1QCwozcROx4w/bP/8MAKpEAT212lw==
dependencies:
"@emotion/core" "^10.0.20"
"@emotion/styled" "^10.0.17"
- "@storybook/client-logger" "5.3.8"
+ "@storybook/client-logger" "5.3.13"
core-js "^3.0.1"
deep-object-diff "^1.1.0"
emotion-theming "^10.0.19"
@@ -1798,20 +1673,20 @@
resolve-from "^5.0.0"
ts-dedent "^1.1.0"
-"@storybook/ui@5.3.8":
- version "5.3.8"
- resolved "https://registry.yarnpkg.com/@storybook/ui/-/ui-5.3.8.tgz#b2e314882b2fdda64425a24b12162f070320193e"
- integrity sha512-S/Zf1BHuPGsh+RXV20IFS+FUNVQy/3x44Qr1sqwP1ehUUPXq2giosDXW6OV9gaKsUYEGhywRwDKTUlN8MkI4Jg==
+"@storybook/ui@5.3.13":
+ version "5.3.13"
+ resolved "https://registry.yarnpkg.com/@storybook/ui/-/ui-5.3.13.tgz#c829bc1cbcd0995e4888056a9f43fbf8a7c22ee4"
+ integrity sha512-pEXWFPF097OjvbgwvMjLsjLsDViu6yBMmUcL+nd3jvtxyxkuzv5X+2J14N8Nz0veJysbp+5+5A8kKGTO+spZfA==
dependencies:
"@emotion/core" "^10.0.20"
- "@storybook/addons" "5.3.8"
- "@storybook/api" "5.3.8"
- "@storybook/channels" "5.3.8"
- "@storybook/client-logger" "5.3.8"
- "@storybook/components" "5.3.8"
- "@storybook/core-events" "5.3.8"
- "@storybook/router" "5.3.8"
- "@storybook/theming" "5.3.8"
+ "@storybook/addons" "5.3.13"
+ "@storybook/api" "5.3.13"
+ "@storybook/channels" "5.3.13"
+ "@storybook/client-logger" "5.3.13"
+ "@storybook/components" "5.3.13"
+ "@storybook/core-events" "5.3.13"
+ "@storybook/router" "5.3.13"
+ "@storybook/theming" "5.3.13"
copy-to-clipboard "^3.0.8"
core-js "^3.0.1"
core-js-pure "^3.0.1"
@@ -1941,15 +1816,10 @@
"@svgr/plugin-svgo" "^4.3.1"
loader-utils "^1.2.3"
-"@types/asap@^2.0.0":
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/@types/asap/-/asap-2.0.0.tgz#d529e9608c83499a62ae08c871c5e62271aa2963"
- integrity sha512-upIS0Gt9Mc8eEpCbYMZ1K8rhNosfKUtimNcINce+zLwJF5UpM3Vv7yz3S5l/1IX+DxTa8lTkUjqynvjRXyJzsg==
-
"@types/babel__core@^7.1.0":
- version "7.1.3"
- resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.3.tgz#e441ea7df63cd080dfcd02ab199e6d16a735fc30"
- integrity sha512-8fBo0UR2CcwWxeX7WIIgJ7lXjasFxoYgRnFHUj+hRvKkpiBJbxhdAPTCY6/ZKM0uxANFVzt4yObSLuTiTnazDA==
+ version "7.1.4"
+ resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.4.tgz#5c5569cc40e5f2737dfc00692f5444e871e4a234"
+ integrity sha512-c/5MuRz5HM4aizqL5ViYfW4iEnmfPcfbH4Xa6GgLT21dMc1NGeNnuS6egHheOmP+kCJ9CAzC4pv4SDCWTnRkbg==
dependencies:
"@babel/parser" "^7.1.0"
"@babel/types" "^7.0.0"
@@ -1958,9 +1828,9 @@
"@types/babel__traverse" "*"
"@types/babel__generator@*":
- version "7.6.0"
- resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.0.tgz#f1ec1c104d1bb463556ecb724018ab788d0c172a"
- integrity sha512-c1mZUu4up5cp9KROs/QAw0gTeHrw/x7m52LcnvMxxOZ03DmLwPV0MlGmlgzV3cnSdjhJOZsj7E7FHeioai+egw==
+ version "7.6.1"
+ resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.1.tgz#4901767b397e8711aeb99df8d396d7ba7b7f0e04"
+ integrity sha512-bBKm+2VPJcMRVwNhxKu8W+5/zT7pwNEqeokFOmbvVSqGzFneNxYcEBro9Ac7/N9tlsaPYnZLK8J1LWKkMsLAew==
dependencies:
"@babel/types" "^7.0.0"
@@ -1973,9 +1843,9 @@
"@babel/types" "^7.0.0"
"@types/babel__traverse@*", "@types/babel__traverse@^7.0.6":
- version "7.0.7"
- resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.0.7.tgz#2496e9ff56196cc1429c72034e07eab6121b6f3f"
- integrity sha512-CeBpmX1J8kWLcDEnI3Cl2Eo6RfbGvzUctA+CjZUhOKDFbLfcr7fc4usEqLNWetrlJd7RhAkyYe2czXop4fICpw==
+ version "7.0.8"
+ resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.0.8.tgz#479a4ee3e291a403a1096106013ec22cf9b64012"
+ integrity sha512-yGeB2dHEdvxjP0y4UbRtQaSkXJ9649fYCmIdRoul5kfAoGCwxuCbMhag0k3RPfnuh9kPGm8x89btcfDEXdVWGw==
dependencies:
"@babel/types" "^7.3.0"
@@ -1984,15 +1854,34 @@
resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0"
integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==
-"@types/estree@*", "@types/estree@0.0.39":
+"@types/estree@*":
+ version "0.0.42"
+ resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.42.tgz#8d0c1f480339efedb3e46070e22dd63e0430dd11"
+ integrity sha512-K1DPVvnBCPxzD+G51/cxVIoc2X8uUVl1zpJeE6iKcgHMj4+tbat5Xu4TjV7v2QSDbIeAfLi2hIk+u2+s0MlpUQ==
+
+"@types/estree@0.0.39":
version "0.0.39"
resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.39.tgz#e177e699ee1b8c22d23174caaa7422644389509f"
integrity sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==
+"@types/events@*":
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/@types/events/-/events-3.0.0.tgz#2862f3f58a9a7f7c3e78d79f130dd4d71c25c2a7"
+ integrity sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g==
+
+"@types/glob@^7.1.1":
+ version "7.1.1"
+ resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.1.1.tgz#aa59a1c6e3fbc421e07ccd31a944c30eba521575"
+ integrity sha512-1Bh06cbWJUHMC97acuD6UMG29nMt0Aqz1vF3guLfG+kHHJhy3AyohZFFxYk2f7Q1SQIrNwvncxAE0N/9s70F2w==
+ dependencies:
+ "@types/events" "*"
+ "@types/minimatch" "*"
+ "@types/node" "*"
+
"@types/history@*":
- version "4.7.3"
- resolved "https://registry.yarnpkg.com/@types/history/-/history-4.7.3.tgz#856c99cdc1551d22c22b18b5402719affec9839a"
- integrity sha512-cS5owqtwzLN5kY+l+KgKdRJ/Cee8tlmQoGQuIE9tWnSmS3JMKzmxo2HIAk2wODMifGwO20d62xZQLYz+RLfXmw==
+ version "4.7.5"
+ resolved "https://registry.yarnpkg.com/@types/history/-/history-4.7.5.tgz#527d20ef68571a4af02ed74350164e7a67544860"
+ integrity sha512-wLD/Aq2VggCJXSjxEwrMafIP51Z+13H78nXIX0ABEuIGhmB5sNGbR113MOKo+yfw+RDo1ZU3DM6yfnnRF/+ouw==
"@types/hoist-non-react-statics@^3.3.1":
version "3.3.1"
@@ -2002,25 +1891,20 @@
"@types/react" "*"
hoist-non-react-statics "^3.3.0"
-"@types/invariant@^2.2.30":
- version "2.2.30"
- resolved "https://registry.yarnpkg.com/@types/invariant/-/invariant-2.2.30.tgz#20efa342807606ada5483731a8137cb1561e5fe9"
- integrity sha512-98fB+yo7imSD2F7PF7GIpELNgtLNgo5wjivu0W5V4jx+KVVJxo6p/qN4zdzSTBWy4/sN3pPyXwnhRSD28QX+ag==
-
"@types/is-function@^1.0.0":
version "1.0.0"
resolved "https://registry.yarnpkg.com/@types/is-function/-/is-function-1.0.0.tgz#1b0b819b1636c7baf0d6785d030d12edf70c3e83"
integrity sha512-iTs9HReBu7evG77Q4EC8hZnqRt57irBDkK9nvmHroiOIVwYMQc4IvYvdRgwKfYepunIY7Oh/dBuuld+Gj9uo6w==
-"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0":
+"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1":
version "2.0.1"
resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz#42995b446db9a48a11a07ec083499a860e9138ff"
integrity sha512-hRJD2ahnnpLgsj6KWMYSrmXkM3rm2Dl1qkx6IOFD5FnuNPXJIG5L0dhgKXCYTRMGzU4n0wImQ/xfmRc4POUFlg==
"@types/istanbul-lib-report@*":
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-1.1.1.tgz#e5471e7fa33c61358dd38426189c037a58433b8c"
- integrity sha512-3BUTyMzbZa2DtDI2BkERNC6jJw2Mr2Y0oGI7mRxYNBPxppbtEK1F66u3bKwU2g+wxwWI7PAoRpJnOY1grJqzHg==
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#c14c24f18ea8190c118ee7562b7ff99a36552686"
+ integrity sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==
dependencies:
"@types/istanbul-lib-coverage" "*"
@@ -2032,10 +1916,37 @@
"@types/istanbul-lib-coverage" "*"
"@types/istanbul-lib-report" "*"
+"@types/jest-specific-snapshot@^0.5.3":
+ version "0.5.4"
+ resolved "https://registry.yarnpkg.com/@types/jest-specific-snapshot/-/jest-specific-snapshot-0.5.4.tgz#997364c39a59ddeff0ee790a19415e79dd061d1e"
+ integrity sha512-1qISn4fH8wkOOPFEx+uWRRjw6m/pP/It3OHLm8Ee1KQpO7Z9ZGYDtWPU5AgK05UXsNTAgOK+dPQvJKGdy9E/1g==
+ dependencies:
+ "@types/jest" "*"
+
+"@types/jest@*":
+ version "25.1.2"
+ resolved "https://registry.yarnpkg.com/@types/jest/-/jest-25.1.2.tgz#1c4c8770c27906c7d8def5d2033df9dbd39f60da"
+ integrity sha512-EsPIgEsonlXmYV7GzUqcvORsSS9Gqxw/OvkGwHfAdpjduNRxMlhsav0O5Kb0zijc/eXSO/uW6SJt9nwull8AUQ==
+ dependencies:
+ jest-diff "^25.1.0"
+ pretty-format "^25.1.0"
+
+"@types/jest@^24.0.16":
+ version "24.9.1"
+ resolved "https://registry.yarnpkg.com/@types/jest/-/jest-24.9.1.tgz#02baf9573c78f1b9974a5f36778b366aa77bd534"
+ integrity sha512-Fb38HkXSVA4L8fGKEZ6le5bB8r6MRWlOCZbVuWZcmOMSCd2wCYOwN1ibj8daIoV9naq7aaOZjrLCoCMptKU/4Q==
+ dependencies:
+ jest-diff "^24.3.0"
+
+"@types/minimatch@*":
+ version "3.0.3"
+ resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.3.tgz#3dca0e3f33b200fc7d1139c0cd96c1268cadfd9d"
+ integrity sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==
+
"@types/node@*":
- version "12.12.7"
- resolved "https://registry.yarnpkg.com/@types/node/-/node-12.12.7.tgz#01e4ea724d9e3bd50d90c11fd5980ba317d8fa11"
- integrity sha512-E6Zn0rffhgd130zbCbAr/JdXfXkoOUFAKNs/rF8qnafSJ8KYaA/j3oz7dcwal+lYjLA7xvdd5J4wdYpCTlP8+w==
+ version "13.7.1"
+ resolved "https://registry.yarnpkg.com/@types/node/-/node-13.7.1.tgz#238eb34a66431b71d2aaddeaa7db166f25971a0d"
+ integrity sha512-Zq8gcQGmn4txQEJeiXo/KiLpon8TzAl0kmKH4zdWctPj05nWwp1ClMdAVEloqrQKfaC48PNLdgN/aVaLqUrluA==
"@types/normalize-package-data@^2.4.0":
version "2.4.0"
@@ -2063,9 +1974,9 @@
integrity sha512-ce5d3q03Ex0sy4R14722Rmt6MT07Ua+k4FwDfdcToYJcMKNtRVQvJ6JCAPdAmAnbRb6CsX6aYb9m96NGod9uTw==
"@types/reach__router@^1.2.3":
- version "1.2.6"
- resolved "https://registry.yarnpkg.com/@types/reach__router/-/reach__router-1.2.6.tgz#b14cf1adbd1a365d204bbf6605cd9dd7b8816c87"
- integrity sha512-Oh5DAVr/L2svBvubw6QEFpXGu295Y406BPs4i9t1n2pp7M+q3pmCmhzb9oZV5wncR41KCD3NHl1Yhi7uKnTPsA==
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/@types/reach__router/-/reach__router-1.3.0.tgz#4c05a947ccecca05c72bb335a0f7bb43fec12446"
+ integrity sha512-0aL79bFPJzJOJOOMZm2301ErQVaveBdpW88uuavXymUlcYIAOCmI1ujJ2XLH6Mzn76O94eQCHIl1FDzNNKJCYA==
dependencies:
"@types/history" "*"
"@types/react" "*"
@@ -2084,10 +1995,10 @@
dependencies:
"@types/react" "*"
-"@types/react@*":
- version "16.9.11"
- resolved "https://registry.yarnpkg.com/@types/react/-/react-16.9.11.tgz#70e0b7ad79058a7842f25ccf2999807076ada120"
- integrity sha512-UBT4GZ3PokTXSWmdgC/GeCGEJXE5ofWyibCcecRLUVN2ZBpXQGVgQGtG2foS7CrTKFKlQVVswLvf7Js6XA/CVQ==
+"@types/react@*", "@types/react@^16.9.19":
+ version "16.9.19"
+ resolved "https://registry.yarnpkg.com/@types/react/-/react-16.9.19.tgz#c842aa83ea490007d29938146ff2e4d9e4360c40"
+ integrity sha512-LJV97//H+zqKWMms0kvxaKYJDG05U2TtQB3chRLF8MPNs+MQh/H1aGlyDUxjaHvu08EAGerdX2z4LTBc7ns77A==
dependencies:
"@types/prop-types" "*"
csstype "^2.2.0"
@@ -2099,30 +2010,32 @@
dependencies:
"@types/node" "*"
-"@types/shallowequal@^1.1.1":
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/@types/shallowequal/-/shallowequal-1.1.1.tgz#aad262bb3f2b1257d94c71d545268d592575c9b1"
- integrity sha512-Lhni3aX80zbpdxRuWhnuYPm8j8UQaa571lHP/xI4W+7BAFhSIhRReXnqjEgT/XzPoXZTJkCqstFMJ8CZTK6IlQ==
-
"@types/stack-utils@^1.0.1":
version "1.0.1"
resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-1.0.1.tgz#0a851d3bd96498fa25c33ab7278ed3bd65f06c3e"
integrity sha512-l42BggppR6zLmpfU6fq9HEa2oGPEI8yrSPL3GITjfRInppYFahObbIQOQK3UGxEnyQpltZLaPe75046NOZQikw==
"@types/webpack-env@^1.15.0":
- version "1.15.0"
- resolved "https://registry.yarnpkg.com/@types/webpack-env/-/webpack-env-1.15.0.tgz#bd9956d5044b1fb43e869a9ba9148862ff98d9fd"
- integrity sha512-TfcyNecCz8Z9/s90gBOBniyzZrTru8u2Vp0VZODq4KEBaQu8bfXvu7o/KUOecMpzjbFPUA7aqgSq628Iue5BQg==
+ version "1.15.1"
+ resolved "https://registry.yarnpkg.com/@types/webpack-env/-/webpack-env-1.15.1.tgz#c8e84705e08eed430b5e15b39c65b0944e4d1422"
+ integrity sha512-eWN5ElDTeBc5lRDh95SqA8x18D0ll2pWudU3uWiyfsRmIZcmUXpEsxPU+7+BsdCrO2vfLRC629u/MmjbmF+2tA==
"@types/yargs-parser@*":
- version "13.1.0"
- resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-13.1.0.tgz#c563aa192f39350a1d18da36c5a8da382bbd8228"
- integrity sha512-gCubfBUZ6KxzoibJ+SCUc/57Ms1jz5NjHe4+dI2krNmU5zCPAphyLJYyTOg06ueIyfj+SaCUqmzun7ImlxDcKg==
+ version "15.0.0"
+ resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-15.0.0.tgz#cb3f9f741869e20cce330ffbeb9271590483882d"
+ integrity sha512-FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw==
"@types/yargs@^13.0.0":
- version "13.0.3"
- resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-13.0.3.tgz#76482af3981d4412d65371a318f992d33464a380"
- integrity sha512-K8/LfZq2duW33XW/tFwEAfnZlqIfVsoyRB3kfXdPXYhl0nfM8mmh7GS0jg7WrX2Dgq/0Ha/pR1PaR+BvmWwjiQ==
+ version "13.0.8"
+ resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-13.0.8.tgz#a38c22def2f1c2068f8971acb3ea734eb3c64a99"
+ integrity sha512-XAvHLwG7UQ+8M4caKIH0ZozIOYay5fQkAgyIXegXT9jPtdIGdhga+sUEdAr1CiG46aB+c64xQEYyEzlwWVTNzA==
+ dependencies:
+ "@types/yargs-parser" "*"
+
+"@types/yargs@^15.0.0":
+ version "15.0.3"
+ resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.3.tgz#41453a0bc7ab393e995d1f5451455638edbd2baf"
+ integrity sha512-XCMQRK6kfpNBixHLyHUsGmXrpEmFFxzMrcnSXFMziHd8CoNJo8l16FkHyQq4x+xbM7E2XL83/O78OD8u+iZTdQ==
dependencies:
"@types/yargs-parser" "*"
@@ -2295,11 +2208,6 @@ abab@^2.0.0:
resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.3.tgz#623e2075e02eb2d3f2475e49f99c91846467907a"
integrity sha512-tsFzPpcttalNjFBCFMqsKYQcWxxen1pgJR56by//QwvJc4/OUS3kPOOttx2tSIfjsylB0pYu7f5D3K1RCxUnUg==
-abbrev@1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8"
- integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==
-
accepts@~1.3.7:
version "1.3.7"
resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.7.tgz#531bc726517a3b2b41f850021c6cc15eaab507cd"
@@ -2308,7 +2216,7 @@ accepts@~1.3.7:
mime-types "~2.1.24"
negotiator "0.6.2"
-acorn-globals@^4.1.0, acorn-globals@^4.3.0:
+acorn-globals@^4.1.0, acorn-globals@^4.3.0, acorn-globals@^4.3.2:
version "4.3.4"
resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-4.3.4.tgz#9fa1926addc11c97308c4e66d7add0d40c3272e7"
integrity sha512-clfQEh21R+D0leSbUdWf3OcfqyaCSAQ8Ryq00bofSekfr9W8u1jyYZo6ir0xu9Gtcf7BjcHJpnbZH7JOCpP60A==
@@ -2332,15 +2240,20 @@ acorn@^5.0.0, acorn@^5.5.3:
integrity sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==
acorn@^6.0.1, acorn@^6.0.4, acorn@^6.2.1:
- version "6.3.0"
- resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.3.0.tgz#0087509119ffa4fc0a0041d1e93a417e68cb856e"
- integrity sha512-/czfa8BwS88b9gWQVhc8eknunSA2DoJpJyTQkhheIf5E48u1N0R4q/YxxsAeqRrmK9TQ/uYfgLDfZo91UlANIA==
+ version "6.4.0"
+ resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.0.tgz#b659d2ffbafa24baf5db1cdbb2c94a983ecd2784"
+ integrity sha512-gac8OEcQ2Li1dxIEWGZzsp2BitJxwkwcOm0zHAJLcPJaVvm58FRnk6RkuLRpU1EujipU2ZFODv2P9DLMfnV8mw==
acorn@^7.1.0:
version "7.1.0"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.1.0.tgz#949d36f2c292535da602283586c2477c57eb2d6c"
integrity sha512-kL5CuoXA/dgxlBbVrflsflzQ3PAas7RYZB52NOm/6839iVYJgKMJ3cQJD+t2i5+qFa8h3MDpEOJiS64E8JLnSQ==
+add-stream@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/add-stream/-/add-stream-1.0.0.tgz#6a7990437ca736d5e1288db92bd3266d5f5cb2aa"
+ integrity sha1-anmQQ3ynNtXhKI25K9MmbV9csqo=
+
address@1.1.2, address@^1.0.1:
version "1.1.2"
resolved "https://registry.yarnpkg.com/address/-/address-1.1.2.tgz#bf1116c9c758c51b7a933d296b72c221ed9428b6"
@@ -2418,11 +2331,11 @@ ajv-keywords@^3.1.0, ajv-keywords@^3.4.1:
integrity sha512-RO1ibKvd27e6FEShVFfPALuHI3WjSVNeK5FIsmme/LYRNxjKuNj+Dt7bucLa6NdSv3JcVTyMlm9kGR84z1XpaQ==
ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.5.5:
- version "6.10.2"
- resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.10.2.tgz#d3cea04d6b017b2894ad69040fec8b623eb4bd52"
- integrity sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==
+ version "6.11.0"
+ resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.11.0.tgz#c3607cbc8ae392d8a5a536f25b21f8e5f3f87fe9"
+ integrity sha512-nCprB/0syFYy9fVYU1ox1l2KN8S9I+tziH8D4zdZuLT3N6RMlGSGt5FSTpAiHB/Whv8Qs1cWHma1aMKZyaHRKA==
dependencies:
- fast-deep-equal "^2.0.1"
+ fast-deep-equal "^3.1.1"
fast-json-stable-stringify "^2.0.0"
json-schema-traverse "^0.4.1"
uri-js "^4.2.2"
@@ -2451,17 +2364,17 @@ ansi-colors@^3.0.0:
resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.4.tgz#e3a3da4bfbae6c86a9c285625de124a234026fbf"
integrity sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==
-ansi-escapes@^3.0.0, ansi-escapes@^3.2.0:
+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-escapes@^4.2.1:
- version "4.2.1"
- resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.2.1.tgz#4dccdb846c3eee10f6d64dea66273eab90c37228"
- integrity sha512-Cg3ymMAdN10wOk/VYfLV7KCQyv7EDirJ64500sU7n9UlmioEtDuU5Gd+hj73hXSU/ex7tHJSssmyftDdkMLO8Q==
+ version "4.3.0"
+ resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.0.tgz#a4ce2b33d6b214b7950d8595c212f12ac9cc569d"
+ integrity sha512-EiYhwo0v255HUL6eDyuLrXEkTi7WwVCLAw+SeOQ7M7qdun1z1pum4DEm/nuqIVbPvi9RPPc9k9LbyBv6H0DwVg==
dependencies:
- type-fest "^0.5.2"
+ type-fest "^0.8.1"
ansi-html@0.0.7:
version "0.0.7"
@@ -2500,7 +2413,7 @@ ansi-styles@^3.2.0, ansi-styles@^3.2.1:
dependencies:
color-convert "^1.9.0"
-ansi-styles@^4.1.0:
+ansi-styles@^4.0.0, ansi-styles@^4.1.0:
version "4.2.1"
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.2.1.tgz#90ae75c424d008d2624c5bf29ead3177ebfcf359"
integrity sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==
@@ -2509,9 +2422,9 @@ ansi-styles@^4.1.0:
color-convert "^2.0.1"
ansi-to-html@^0.6.11, ansi-to-html@^0.6.4:
- version "0.6.13"
- resolved "https://registry.yarnpkg.com/ansi-to-html/-/ansi-to-html-0.6.13.tgz#c72eae8b63e5ca0643aab11bfc6e6f2217425833"
- integrity sha512-Ys2/umuaTlQvP9DLkaa7UzRKF2FLrfod/hNHXS9QhXCrw7seObG6ksOGmNz3UoK+adwM8L9vQfG7mvaxfJ3Jvw==
+ version "0.6.14"
+ resolved "https://registry.yarnpkg.com/ansi-to-html/-/ansi-to-html-0.6.14.tgz#65fe6d08bba5dd9db33f44a20aec331e0010dad8"
+ integrity sha512-7ZslfB1+EnFSDO5Ju+ue5Y6It19DRnZXWv8jrGHgIlPna5Mh4jz7BV5jCbQneXNFurQcKoolaaAjHtgSBfOIuA==
dependencies:
entities "^1.1.2"
@@ -2523,6 +2436,14 @@ anymatch@^2.0.0:
micromatch "^3.1.4"
normalize-path "^2.1.1"
+anymatch@^3.0.3:
+ version "3.1.1"
+ resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.1.tgz#c55ecf02185e2469259399310c173ce31233b142"
+ integrity sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==
+ dependencies:
+ normalize-path "^3.0.0"
+ picomatch "^2.0.4"
+
app-root-dir@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/app-root-dir/-/app-root-dir-1.0.2.tgz#38187ec2dea7577fff033ffcb12172692ff6e118"
@@ -2596,13 +2517,14 @@ array-ify@^1.0.0:
resolved "https://registry.yarnpkg.com/array-ify/-/array-ify-1.0.0.tgz#9e528762b4a9066ad163a6962a364418e9626ece"
integrity sha1-nlKHYrSpBmrRY6aWKjZEGOlibs4=
-array-includes@^3.0.3:
- version "3.0.3"
- resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.0.3.tgz#184b48f62d92d7452bb31b323165c7f8bd02266d"
- integrity sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0=
+array-includes@^3.0.3, array-includes@^3.1.1:
+ version "3.1.1"
+ resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.1.tgz#cdd67e6852bdf9c1215460786732255ed2459348"
+ integrity sha512-c2VXaCHl7zPsvpkFsw4nxvFie4fh1ur9bpcgsVkIjqn0H/Xwdg+7fv3n2r/isyS8EBj5b06M9kHyZuIr4El6WQ==
dependencies:
- define-properties "^1.1.2"
- es-abstract "^1.7.0"
+ define-properties "^1.1.3"
+ es-abstract "^1.17.0"
+ is-string "^1.0.5"
array-union@^1.0.1:
version "1.0.2"
@@ -2629,24 +2551,33 @@ array.prototype.find@^2.1.0:
define-properties "^1.1.3"
es-abstract "^1.13.0"
-array.prototype.flat@^1.2.1:
- version "1.2.2"
- resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.2.tgz#8f3c71d245ba349b6b64b4078f76f5576f1fd723"
- integrity sha512-VXjh7lAL4KXKF2hY4FnEW9eRW6IhdvFW1sN/JwLbmECbCgACCnBHNyP3lFiYuttr0jxRN9Bsc5+G27dMseSWqQ==
+array.prototype.flat@^1.2.1, array.prototype.flat@^1.2.3:
+ version "1.2.3"
+ resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.3.tgz#0de82b426b0318dbfdb940089e38b043d37f6c7b"
+ integrity sha512-gBlRZV0VSmfPIeWfuuy56XZMvbVfbEUnOXUvt3F/eUUUSyzlgLxhEX4YAEpxNAogRGehPSnfXyPtYyKAhkzQhQ==
dependencies:
define-properties "^1.1.3"
- es-abstract "^1.15.0"
- function-bind "^1.1.1"
+ es-abstract "^1.17.0-next.1"
array.prototype.flatmap@^1.2.1:
- version "1.2.2"
- resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.2.2.tgz#28d621d351c19a62b84331b01669395ef6cef4c4"
- integrity sha512-ZZtPLE74KNE+0XcPv/vQmcivxN+8FhwOLvt2udHauO0aDEpsXDQrmd5HuJGpgPVyaV8HvkDPWnJ2iaem0oCKtA==
+ version "1.2.3"
+ resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.2.3.tgz#1c13f84a178566042dd63de4414440db9222e443"
+ integrity sha512-OOEk+lkePcg+ODXIpvuU9PAryCikCJyo7GlDG1upleEpQRx6mzL9puEBkozQ5iAx20KV0l3DbyQwqciJtqe5Pg==
dependencies:
define-properties "^1.1.3"
- es-abstract "^1.15.0"
+ es-abstract "^1.17.0-next.1"
function-bind "^1.1.1"
+array.prototype.map@^1.0.1:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/array.prototype.map/-/array.prototype.map-1.0.2.tgz#9a4159f416458a23e9483078de1106b2ef68f8ec"
+ integrity sha512-Az3OYxgsa1g7xDYp86l0nnN4bcmuEITGe1rbdEBVkrqkzMgDcbdQ2R7r41pNzti+4NMces3H8gMmuioZUilLgw==
+ dependencies:
+ define-properties "^1.1.3"
+ es-abstract "^1.17.0-next.1"
+ es-array-method-boxes-properly "^1.0.0"
+ is-string "^1.0.4"
+
arrify@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d"
@@ -2721,7 +2652,7 @@ async-limiter@~1.0.0:
resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd"
integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==
-async@^2.1.4, async@^2.6.1:
+async@^2.6.1:
version "2.6.3"
resolved "https://registry.yarnpkg.com/async/-/async-2.6.3.tgz#d72625e2344a3656e3a3ad4fa749fa83299d82ff"
integrity sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==
@@ -2733,7 +2664,7 @@ asynckit@^0.4.0:
resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
integrity sha1-x57Zf380y48robyXkLzDZkdLS3k=
-atob@^2.1.1:
+atob@^2.1.2:
version "2.1.2"
resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9"
integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==
@@ -2757,24 +2688,22 @@ aws-sign2@~0.7.0:
integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=
aws4@^1.8.0:
- version "1.8.0"
- resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.8.0.tgz#f0e003d9ca9e7f59c7a508945d7b2ef9a04a542f"
- integrity sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==
+ version "1.9.1"
+ resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.9.1.tgz#7e33d8f7d449b3f673cd72deb9abdc552dbe528e"
+ integrity sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug==
-axios@^0.16.2:
- version "0.16.2"
- resolved "https://registry.yarnpkg.com/axios/-/axios-0.16.2.tgz#ba4f92f17167dfbab40983785454b9ac149c3c6d"
- integrity sha1-uk+S8XFn37q0CYN4VFS5rBScPG0=
+axios@^0.18.1:
+ version "0.18.1"
+ resolved "https://registry.yarnpkg.com/axios/-/axios-0.18.1.tgz#ff3f0de2e7b5d180e757ad98000f1081b87bcea3"
+ integrity sha512-0BfJq4NSfQXd+SkFdrvFbG7addhYSBA2mQwISr46pD6E5iqkWg02RAs8vyTT/j0RTnoYmeXauBuSv1qKwR179g==
dependencies:
- follow-redirects "^1.2.3"
- is-buffer "^1.1.5"
+ follow-redirects "1.5.10"
+ is-buffer "^2.0.2"
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"
+ version "2.1.2"
+ resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-2.1.2.tgz#2bdffc0371e643e5f03ba99065d5179b9ca79799"
+ integrity sha512-ICt34ZmrVt8UQnvPl6TVyDTkmhXmAyAT4Jh5ugfGUX4MOrZ+U/ZY6/sdylRw3qGNr9Ub5AJsaHeDMzNLehRdOQ==
babel-code-frame@^6.22.0:
version "6.26.0"
@@ -2785,23 +2714,6 @@ babel-code-frame@^6.22.0:
esutils "^2.0.2"
js-tokens "^3.0.2"
-babel-core@^7.0.0-bridge.0:
- version "7.0.0-bridge.0"
- resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-7.0.0-bridge.0.tgz#95a492ddd90f9b4e9a4a1da14eb335b87b634ece"
- integrity sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==
-
-babel-eslint@^10.0.3:
- version "10.0.3"
- resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-10.0.3.tgz#81a2c669be0f205e19462fed2482d33e4687a88a"
- integrity sha512-z3U7eMY6r/3f3/JB9mTsLjyxrv0Yb1zb8PCWCLpguxfCzBIZUwy23R1t/XKewP+8mEN2Ck8Dtr4q20z6ce6SoA==
- dependencies:
- "@babel/code-frame" "^7.0.0"
- "@babel/parser" "^7.0.0"
- "@babel/traverse" "^7.0.0"
- "@babel/types" "^7.0.0"
- eslint-visitor-keys "^1.0.0"
- resolve "^1.12.0"
-
babel-helper-evaluate-path@^0.5.0:
version "0.5.0"
resolved "https://registry.yarnpkg.com/babel-helper-evaluate-path/-/babel-helper-evaluate-path-0.5.0.tgz#a62fa9c4e64ff7ea5cea9353174ef023a900a67c"
@@ -2837,20 +2749,20 @@ babel-helper-to-multiple-sequence-expressions@^0.5.0:
resolved "https://registry.yarnpkg.com/babel-helper-to-multiple-sequence-expressions/-/babel-helper-to-multiple-sequence-expressions-0.5.0.tgz#a3f924e3561882d42fcf48907aa98f7979a4588d"
integrity sha512-m2CvfDW4+1qfDdsrtf4dwOslQC3yhbgyBFptncp4wvtdrDHqueW7slsYv4gArie056phvQFhT2nRcGS4bnm6mA==
-babel-jest@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-24.9.0.tgz#3fc327cb8467b89d14d7bc70e315104a783ccd54"
- integrity sha512-ntuddfyiN+EhMw58PTNL1ph4C9rECiQXjI4nMMBKBaNjXvqLdkXpPRcMSr4iyBrJg/+wz9brFUD6RhOAT6r4Iw==
+babel-jest@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-25.1.0.tgz#206093ac380a4b78c4404a05b3277391278f80fb"
+ integrity sha512-tz0VxUhhOE2y+g8R2oFrO/2VtVjA1lkJeavlhExuRBg3LdNJY9gwQ+Vcvqt9+cqy71MCTJhewvTB7Qtnnr9SWg==
dependencies:
- "@jest/transform" "^24.9.0"
- "@jest/types" "^24.9.0"
+ "@jest/transform" "^25.1.0"
+ "@jest/types" "^25.1.0"
"@types/babel__core" "^7.1.0"
- babel-plugin-istanbul "^5.1.0"
- babel-preset-jest "^24.9.0"
- chalk "^2.4.2"
- slash "^2.0.0"
+ babel-plugin-istanbul "^6.0.0"
+ babel-preset-jest "^25.1.0"
+ chalk "^3.0.0"
+ slash "^3.0.0"
-babel-loader@^8.0.4:
+babel-loader@8:
version "8.0.6"
resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.0.6.tgz#e33bdb6f362b03f4bb141a0c21ab87c501b70dfb"
integrity sha512-4BmWKtBOBm13uoUwd08UwjZlaw3O9GWf456R9j+5YykFZ6LUIjIKLc0zEZf+hauxPOJs96C8k6FvYD09vWzhYw==
@@ -2888,22 +2800,6 @@ babel-plugin-emotion@^10.0.20, babel-plugin-emotion@^10.0.27:
find-root "^1.1.0"
source-map "^0.5.7"
-babel-plugin-emotion@^10.0.22, babel-plugin-emotion@^10.0.23:
- version "10.0.23"
- resolved "https://registry.yarnpkg.com/babel-plugin-emotion/-/babel-plugin-emotion-10.0.23.tgz#040d40bf61dcab6d31dd6043d10e180240b8515b"
- integrity sha512-1JiCyXU0t5S2xCbItejCduLGGcKmF3POT0Ujbexog2MI4IlRcIn/kWjkYwCUZlxpON0O5FC635yPl/3slr7cKQ==
- dependencies:
- "@babel/helper-module-imports" "^7.0.0"
- "@emotion/hash" "0.7.3"
- "@emotion/memoize" "0.7.3"
- "@emotion/serialize" "^0.11.14"
- babel-plugin-macros "^2.0.0"
- babel-plugin-syntax-jsx "^6.18.0"
- convert-source-map "^1.5.0"
- escape-string-regexp "^1.0.5"
- find-root "^1.1.0"
- source-map "^0.5.7"
-
babel-plugin-istanbul@^5.1.0:
version "5.2.0"
resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-5.2.0.tgz#df4ade83d897a92df069c4d9a25cf2671293c854"
@@ -2914,23 +2810,25 @@ babel-plugin-istanbul@^5.1.0:
istanbul-lib-instrument "^3.3.0"
test-exclude "^5.2.3"
-babel-plugin-jest-hoist@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-24.9.0.tgz#4f837091eb407e01447c8843cbec546d0002d756"
- integrity sha512-2EMA2P8Vp7lG0RAzr4HXqtYwacfMErOuv1U3wrvxHX6rD1sV6xS3WXG3r8TRQ2r6w8OhvSdWt+z41hQNwNm3Xw==
+babel-plugin-istanbul@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz#e159ccdc9af95e0b570c75b4573b7c34d671d765"
+ integrity sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ==
dependencies:
- "@types/babel__traverse" "^7.0.6"
+ "@babel/helper-plugin-utils" "^7.0.0"
+ "@istanbuljs/load-nyc-config" "^1.0.0"
+ "@istanbuljs/schema" "^0.1.2"
+ istanbul-lib-instrument "^4.0.0"
+ test-exclude "^6.0.0"
-babel-plugin-macros@^2.0.0:
- version "2.6.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-2.6.1.tgz#41f7ead616fc36f6a93180e89697f69f51671181"
- integrity sha512-6W2nwiXme6j1n2erPOnmRiWfObUhWH7Qw1LMi9XZy8cj+KtESu3T6asZvtk5bMQQjX8te35o7CFueiSdL/2NmQ==
+babel-plugin-jest-hoist@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-25.1.0.tgz#fb62d7b3b53eb36c97d1bc7fec2072f9bd115981"
+ integrity sha512-oIsopO41vW4YFZ9yNYoLQATnnN46lp+MZ6H4VvPKFkcc2/fkl3CfE/NZZSmnEIEsJRmJAgkVEK0R7Zbl50CpTw==
dependencies:
- "@babel/runtime" "^7.4.2"
- cosmiconfig "^5.2.0"
- resolve "^1.10.0"
+ "@types/babel__traverse" "^7.0.6"
-babel-plugin-macros@^2.7.0:
+babel-plugin-macros@^2.0.0, babel-plugin-macros@^2.7.0:
version "2.8.0"
resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz#0f958a7cc6556b1e65344465d99111a1e5e10138"
integrity sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg==
@@ -3016,9 +2914,9 @@ babel-plugin-minify-type-constructors@^0.4.3:
babel-helper-is-void-0 "^0.4.3"
babel-plugin-named-asset-import@^0.3.1:
- version "0.3.4"
- resolved "https://registry.yarnpkg.com/babel-plugin-named-asset-import/-/babel-plugin-named-asset-import-0.3.4.tgz#4a8fc30e9a3e2b1f5ed36883386ab2d84e1089bd"
- integrity sha512-S6d+tEzc5Af1tKIMbsf2QirCcPdQ+mKUCY2H1nJj1DyA1ShwpsoxEOAwbWsG5gcXNV/olpvQd9vrUWRx4bnhpw==
+ version "0.3.6"
+ resolved "https://registry.yarnpkg.com/babel-plugin-named-asset-import/-/babel-plugin-named-asset-import-0.3.6.tgz#c9750a1b38d85112c9e166bf3ef7c5dbc605f4be"
+ integrity sha512-1aGDUfL1qOOIoqk9QKGIo2lANk+C7ko/fqH0uIyC71x3PEGz0uVP8ISgfEsFuG+FKmjHTvFK/nNM8dowpmUxLA==
babel-plugin-react-docgen@^4.0.0:
version "4.1.0"
@@ -3029,6 +2927,11 @@ babel-plugin-react-docgen@^4.0.0:
react-docgen "^5.0.0"
recast "^0.14.7"
+babel-plugin-require-context-hook@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-require-context-hook/-/babel-plugin-require-context-hook-1.0.0.tgz#3f0e7cce87c338f53639b948632fd4e73834632d"
+ integrity sha512-EMZD1563QUqLhzrqcThk759RhuNVX/ZJdrtGK6drwzgvnR+ARjWyXIHPbu+tUNaMGtPz/gQeAM2M6VUw2UiUeA==
+
babel-plugin-syntax-jsx@^6.18.0:
version "6.18.0"
resolved "https://registry.yarnpkg.com/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz#0af32a9a6e13ca7a3fd5069e62d7b0f58d0d8946"
@@ -3093,13 +2996,14 @@ babel-plugin-transform-undefined-to-void@^6.9.4:
resolved "https://registry.yarnpkg.com/babel-plugin-transform-undefined-to-void/-/babel-plugin-transform-undefined-to-void-6.9.4.tgz#be241ca81404030678b748717322b89d0c8fe280"
integrity sha1-viQcqBQEAwZ4t0hxcyK4nQyP4oA=
-babel-preset-jest@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-24.9.0.tgz#192b521e2217fb1d1f67cf73f70c336650ad3cdc"
- integrity sha512-izTUuhE4TMfTRPF92fFwD2QfdXaZW08qvWTFCI51V8rW5x00UuPgc3ajRoWofXOuxjfcOM5zzSYsQS3H8KGCAg==
+babel-preset-jest@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-25.1.0.tgz#d0aebfebb2177a21cde710996fce8486d34f1d33"
+ integrity sha512-eCGn64olaqwUMaugXsTtGAM2I0QTahjEtnRu0ql8Ie+gDWAc1N6wqN0k2NilnyTunM69Pad7gJY7LOtwLimoFQ==
dependencies:
+ "@babel/plugin-syntax-bigint" "^7.0.0"
"@babel/plugin-syntax-object-rest-spread" "^7.0.0"
- babel-plugin-jest-hoist "^24.9.0"
+ babel-plugin-jest-hoist "^25.1.0"
"babel-preset-minify@^0.5.0 || 0.6.0-alpha.5":
version "0.5.1"
@@ -3180,7 +3084,7 @@ base@^0.11.1:
mixin-deep "^1.2.0"
pascalcase "^0.1.1"
-batch-processor@^1.0.0:
+batch-processor@1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/batch-processor/-/batch-processor-1.0.0.tgz#75c95c32b748e0850d10c2b168f6bdbe9891ace8"
integrity sha1-dclcMrdI4IUNEMKxaPa9vpiRrOg=
@@ -3192,11 +3096,6 @@ bcrypt-pbkdf@^1.0.0:
dependencies:
tweetnacl "^0.14.3"
-big.js@^3.1.3:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/big.js/-/big.js-3.2.0.tgz#a5fc298b81b9e0dca2e458824784b65c52ba588e"
- integrity sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==
-
big.js@^5.2.2:
version "5.2.2"
resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328"
@@ -3208,14 +3107,16 @@ binary-extensions@^1.0.0:
integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==
binaryextensions@^2.1.2:
- version "2.1.2"
- resolved "https://registry.yarnpkg.com/binaryextensions/-/binaryextensions-2.1.2.tgz#c83c3d74233ba7674e4f313cb2a2b70f54e94b7c"
- integrity sha512-xVNN69YGDghOqCCtA6FI7avYrr02mTJjOgB0/f1VPD3pJC8QEvjTKWc4epDx8AqxxA75NI0QpVM2gPJXUbE4Tg==
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/binaryextensions/-/binaryextensions-2.2.0.tgz#e7c6ba82d4f5f5758c26078fe8eea28881233311"
+ integrity sha512-bHhs98rj/7i/RZpCSJ3uk55pLXOItjIrh2sRQZSM6OoktScX+LxJzvlU+FELp9j3TdcddTmmYArLSGptCTwjuw==
-bindings@~1.2.1:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.2.1.tgz#14ad6113812d2d37d72e67b4cacb4bb726505f11"
- integrity sha1-FK1hE4EtLTfXLme0ystLtyZQXxE=
+bindings@^1.5.0:
+ version "1.5.0"
+ resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df"
+ integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==
+ dependencies:
+ file-uri-to-path "1.0.0"
bl@^1.0.0:
version "1.2.2"
@@ -3226,9 +3127,9 @@ bl@^1.0.0:
safe-buffer "^5.1.1"
bluebird@^3.3.5, bluebird@^3.5.0, bluebird@^3.5.1, bluebird@^3.5.5:
- version "3.7.1"
- resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.1.tgz#df70e302b471d7473489acf26a93d63b53f874de"
- integrity sha512-DdmyoGCleJnkbp3nkbxTLJ18rjDsE4yCggEwKNXkeV123sPNfOCYeDoeuOY+F2FrSjO1YXcTU+dsy96KMy+gcg==
+ version "3.7.2"
+ resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f"
+ integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==
bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0:
version "4.11.8"
@@ -3409,16 +3310,16 @@ browserslist@4.7.0:
electron-to-chromium "^1.3.247"
node-releases "^1.1.29"
-browserslist@^4.0.0, browserslist@^4.1.0, browserslist@^4.6.0, browserslist@^4.7.2, browserslist@^4.8.3:
- version "4.8.3"
- resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.8.3.tgz#65802fcd77177c878e015f0e3189f2c4f627ba44"
- integrity sha512-iU43cMMknxG1ClEZ2MDKeonKE1CCrFVkQK2AqO2YWFmvIrx4JWrvQ4w4hQez6EpVI8rHTtqh/ruHHDHSOKxvUg==
+browserslist@^4.0.0, browserslist@^4.1.0, browserslist@^4.8.3, browserslist@^4.8.5:
+ version "4.8.7"
+ resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.8.7.tgz#ec8301ff415e6a42c949d0e66b405eb539c532d0"
+ integrity sha512-gFOnZNYBHrEyUML0xr5NJ6edFaaKbTFX9S9kQHlYfCP0Rit/boRIz4G+Avq6/4haEKJXdGGUnoolx+5MWW2BoA==
dependencies:
- caniuse-lite "^1.0.30001017"
- electron-to-chromium "^1.3.322"
- node-releases "^1.1.44"
+ caniuse-lite "^1.0.30001027"
+ electron-to-chromium "^1.3.349"
+ node-releases "^1.1.49"
-bser@^2.0.0:
+bser@2.1.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05"
integrity sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==
@@ -3669,10 +3570,10 @@ caniuse-api@^3.0.0:
lodash.memoize "^4.1.2"
lodash.uniq "^4.5.0"
-caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000989, caniuse-lite@^1.0.30001017, caniuse-lite@^1.0.30001020:
- version "1.0.30001021"
- resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001021.tgz#e75ed1ef6dbadd580ac7e7720bb16f07b083f254"
- integrity sha512-wuMhT7/hwkgd8gldgp2jcrUjOU9RXJ4XxGumQeOsUr91l3WwmM68Cpa/ymCnWEDqakwFXhuDQbaKNHXBPgeE9g==
+caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000989, caniuse-lite@^1.0.30001020, caniuse-lite@^1.0.30001027:
+ version "1.0.30001027"
+ resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001027.tgz#283e2ef17d94889cc216a22c6f85303d78ca852d"
+ integrity sha512-7xvKeErvXZFtUItTHgNtLgS9RJpVnwBlWX8jSo/BO8VsF6deszemZSkJJJA1KOKrXuzZH4WALpAJdq5EyfgMLg==
capture-exit@^2.0.0:
version "2.0.0"
@@ -3687,9 +3588,9 @@ capture-stack-trace@^1.0.0:
integrity sha512-mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw==
case-sensitive-paths-webpack-plugin@^2.2.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.2.0.tgz#3371ef6365ef9c25fa4b81c16ace0e9c7dc58c3e"
- integrity sha512-u5ElzokS8A1pm9vM3/iDgTcI3xqHxuCao94Oz8etI3cf0Tio0p8izkDYbTIn09uP3yUUr6+veaE6IkjnTYS46g==
+ version "2.3.0"
+ resolved "https://registry.yarnpkg.com/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.3.0.tgz#23ac613cc9a856e4f88ff8bb73bbb5e989825cf7"
+ integrity sha512-/4YgnZS8y1UXXmC02xD5rRrBEu6T5ub+mQHLNRj0fzTRbgdBYhsNo2V5EqwgqrExjxsjtF/OpAKAMkKsxbD5XQ==
caseless@~0.12.0:
version "0.12.0"
@@ -3725,26 +3626,26 @@ chalk@^3.0.0:
supports-color "^7.1.0"
character-entities-legacy@^1.0.0:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-1.1.3.tgz#3c729991d9293da0ede6dddcaf1f2ce1009ee8b4"
- integrity sha512-YAxUpPoPwxYFsslbdKkhrGnXAtXoHNgYjlBM3WMXkWGTl5RsY3QmOyhwAgL8Nxm9l5LBThXGawxKPn68y6/fww==
+ version "1.1.4"
+ resolved "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz#94bc1845dce70a5bb9d2ecc748725661293d8fc1"
+ integrity sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==
character-entities@^1.0.0:
- version "1.2.3"
- resolved "https://registry.yarnpkg.com/character-entities/-/character-entities-1.2.3.tgz#bbed4a52fe7ef98cc713c6d80d9faa26916d54e6"
- integrity sha512-yB4oYSAa9yLcGyTbB4ItFwHw43QHdH129IJ5R+WvxOkWlyFnR5FAaBNnUq4mcxsTVZGh28bHoeTHMKXH1wZf3w==
+ version "1.2.4"
+ resolved "https://registry.yarnpkg.com/character-entities/-/character-entities-1.2.4.tgz#e12c3939b7eaf4e5b15e7ad4c5e28e1d48c5b16b"
+ integrity sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==
character-reference-invalid@^1.0.0:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-1.1.3.tgz#1647f4f726638d3ea4a750cf5d1975c1c7919a85"
- integrity sha512-VOq6PRzQBam/8Jm6XBGk2fNEnHXAdGd6go0rtd4weAGECBamHDwwCQSOT12TACIYUZegUXnV6xBXqUssijtxIg==
+ version "1.1.4"
+ resolved "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz#083329cda0eae272ab3dbbf37e9a382c13af1560"
+ integrity sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==
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==
-cheerio@^1.0.0-rc.2:
+cheerio@^1.0.0-rc.3:
version "1.0.0-rc.3"
resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.3.tgz#094636d425b2e9c0f4eb91a46c05630c9a1a8bf6"
integrity sha512-0td5ijfUPuubwLUu0OBoe98gZj8C/AA+RW3v67GPlGOrvxWjZmBXiBCRU+I8VEiNyJzjth40POfHiz2RB3gImA==
@@ -3776,9 +3677,9 @@ chokidar@^2.0.2, chokidar@^2.0.4, chokidar@^2.1.5, chokidar@^2.1.8:
fsevents "^1.2.7"
chownr@^1.0.1, chownr@^1.1.1, chownr@^1.1.2:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.3.tgz#42d837d5239688d55f303003a508230fa6727142"
- integrity sha512-i70fVHhmV3DtTl6nqvZOnIjbY0Pe4kAUjwHj8z0zAdgBtYrJyYwLKCCuRBQ5ppkyL0AkN7HKRnETdmdp1zqNXw==
+ version "1.1.4"
+ resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b"
+ integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==
chrome-trace-event@^1.0.2:
version "1.0.2"
@@ -3826,9 +3727,9 @@ classnames@^2.2.5:
integrity sha512-JR/iSQOSt+LQIWwrwEzJ9uk0xfN3mTVYMwt1Ir5mUcSN6pU+V4zQFFaJsclJbPuAUQH+yfWef6tm7l1quW3C8Q==
clean-css@^4.2.1:
- version "4.2.1"
- resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.1.tgz#2d411ef76b8569b6d0c84068dabe85b0aa5e5c17"
- integrity sha512-4ZxI6dy4lrY6FHzfiy1aEOXgu4LIsW2MhwG0VBKdcoGoH/XLFgaHSdLTGr4O8Be6A8r3MOphEiI8Gc1n0ecf3g==
+ version "4.2.3"
+ resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.3.tgz#507b5de7d97b48ee53d84adb0160ff6216380f78"
+ integrity sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==
dependencies:
source-map "~0.6.0"
@@ -3899,6 +3800,15 @@ cliui@^5.0.0:
strip-ansi "^5.2.0"
wrap-ansi "^5.1.0"
+cliui@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/cliui/-/cliui-6.0.0.tgz#511d702c0c4e41ca156d7d0e96021f23e13225b1"
+ integrity sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==
+ dependencies:
+ string-width "^4.2.0"
+ strip-ansi "^6.0.0"
+ wrap-ansi "^6.2.0"
+
clone-deep@^0.2.4:
version "0.2.4"
resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-0.2.4.tgz#4e73dd09e9fb971cc38670c5dced9c1896481cc6"
@@ -3921,9 +3831,9 @@ clone@^2.1.1:
integrity sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=
clsx@^1.0.1:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/clsx/-/clsx-1.0.4.tgz#0c0171f6d5cb2fe83848463c15fcc26b4df8c2ec"
- integrity sha512-1mQ557MIZTrL/140j+JVdRM6e31/OA4vTYxXgqIIZlndyfjHpyawKZia1Im05Vp9BWmImkcNrNtFYQMyFcgJDg==
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/clsx/-/clsx-1.1.0.tgz#62937c6adfea771247c34b54d320fb99624f5702"
+ integrity sha512-3avwM37fSK5oP6M5rQ9CNe99lwxhXDOeSWVPAOYF6OazUTgZCMb0yWlJpmdD74REy1gkEaFiub2ULv4fq9GUhA==
co@^4.6.0:
version "4.6.0"
@@ -3949,24 +3859,24 @@ codesandbox-import-util-types@^2.1.9:
resolved "https://registry.yarnpkg.com/codesandbox-import-util-types/-/codesandbox-import-util-types-2.1.9.tgz#24ba5ec3d966f51f18b78c48d32e6411da90aa74"
integrity sha512-Vc4qh+neVfHtS3RG+7wvaErMoEKdNTnLFnyj4Dcbn3NV7v9nlPj/z6MGhHp9S+vAjegWorFzxg9lKB1WGHTt5Q==
-codesandbox-import-utils@^2.1.11:
- version "2.1.11"
- resolved "https://registry.yarnpkg.com/codesandbox-import-utils/-/codesandbox-import-utils-2.1.11.tgz#171ce53a77b8dcd196fdcfaf0f6bc52b1206444a"
- integrity sha512-vkA0drdzO2ArMUzl8/AhEuzaW6qX3ic1SXPmruVS7bo/3K1P8H+S9CbuUNPo67X54/LzHwMnAZgZMXwN8vrw7Q==
+codesandbox-import-utils@^2.1.12:
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/codesandbox-import-utils/-/codesandbox-import-utils-2.1.12.tgz#0cc6b649ed8bc5ef57c9fcb1bc98b161389a4b83"
+ integrity sha512-eTP3TboAlFEZDblCf3uwnV0S3tZCKnoubDONibAE9rI2pdximDGFQdHUpHPU4509bQ6UF2w+DVExlhkxmLFenA==
dependencies:
codesandbox-import-util-types "^2.1.9"
istextorbinary "^2.2.1"
lz-string "^1.4.4"
-codesandbox@~2.1.10:
- version "2.1.11"
- resolved "https://registry.yarnpkg.com/codesandbox/-/codesandbox-2.1.11.tgz#3c37ca56f6feea37e282c275a91c805f7b4f9f90"
- integrity sha512-ACUBMNk6Ppuu5KpQh0eqs5LePOPXeIW1bKtNNWzbJfybzbpr3F236BHPReRqYqMO8DXHlf370gAlknX/Z48oCQ==
+codesandbox@~2.1.12:
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/codesandbox/-/codesandbox-2.1.12.tgz#2ab7186b9db3f49b85b27dc95c171ff05101a5c2"
+ integrity sha512-DDveHGGR3dGDgLwAbK0Z75pgA+5Mm2OwigYwrNgEc0m4anzTXWnk0CrWAIRJzDm1QCk97w17/DYl1R3LCYi3Tw==
dependencies:
- axios "^0.16.2"
+ axios "^0.18.1"
chalk "^2.4.1"
codesandbox-import-util-types "^2.1.9"
- codesandbox-import-utils "^2.1.11"
+ codesandbox-import-utils "^2.1.12"
commander "^2.9.0"
datauri "^1.1.0"
filesize "^3.6.1"
@@ -3985,6 +3895,11 @@ codesandbox@~2.1.10:
shortid "^2.2.8"
update-notifier "^2.2.0"
+collect-v8-coverage@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.0.tgz#150ee634ac3650b71d9c985eb7f608942334feb1"
+ integrity sha512-VKIhJgvk8E1W28m5avZ2Gv2Ruv5YiF56ug2oclvaG9md69BuZImMG2sk9g7QNKLUbtYAKQjXjYxbYZVUlMMKmQ==
+
collection-visit@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0"
@@ -4046,9 +3961,9 @@ combined-stream@^1.0.6, combined-stream@~1.0.6:
delayed-stream "~1.0.0"
comma-separated-tokens@^1.0.0:
- version "1.0.7"
- resolved "https://registry.yarnpkg.com/comma-separated-tokens/-/comma-separated-tokens-1.0.7.tgz#419cd7fb3258b1ed838dc0953167a25e152f5b59"
- integrity sha512-Jrx3xsP4pPv4AwJUDWY9wOXGtwPXARej6Xd99h4TUGotmf8APuquKMpK+dnD3UgyxK7OEWaisjZz+3b5jtL6xQ==
+ version "1.0.8"
+ resolved "https://registry.yarnpkg.com/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz#632b80b6117867a158f1080ad498b2fbe7e3f5ea"
+ integrity sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==
command-exists@^1.2.6:
version "1.2.8"
@@ -4061,14 +3976,9 @@ commander@^2.11.0, commander@^2.18.0, commander@^2.19.0, commander@^2.20.0, comm
integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
commander@^4.0.0, commander@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/commander/-/commander-4.0.1.tgz#b67622721785993182e807f4883633e6401ba53c"
- integrity sha512-IPF4ouhCP+qdlcmCedhxX4xiGBPyigb8v5NeUp+0LyhwLgxMqyp3S0vl7TAPfS/hiP7FC3caI/PB9lTmP8r1NA==
-
-common-tags@^1.8.0:
- version "1.8.0"
- resolved "https://registry.yarnpkg.com/common-tags/-/common-tags-1.8.0.tgz#8e3153e542d4a39e9b10554434afaaf98956a937"
- integrity sha512-6P6g0uetGpW/sdyUy/iQQCbFF0kWVMSIVSyYz7Zgjcgh8mgw8PQzDNZeyZ5DQ2gM7LBoZPHmnjz8rUthkBG5tw==
+ version "4.1.1"
+ resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068"
+ integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==
commondir@^1.0.1:
version "1.0.1"
@@ -4169,7 +4079,7 @@ content-type@~1.0.4:
resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b"
integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==
-conventional-changelog-angular@^5.0.5:
+conventional-changelog-angular@^5.0.6:
version "5.0.6"
resolved "https://registry.yarnpkg.com/conventional-changelog-angular/-/conventional-changelog-angular-5.0.6.tgz#269540c624553aded809c29a3508fdc2b544c059"
integrity sha512-QDEmLa+7qdhVIv8sFZfVxU1VSyVvnXPsxq8Vam49mKUcO1Z8VTLEJk9uI21uiJUsnmm0I4Hrsdc9TgkOQo9WSA==
@@ -4196,7 +4106,7 @@ conventional-changelog-config-spec@2.1.0:
resolved "https://registry.yarnpkg.com/conventional-changelog-config-spec/-/conventional-changelog-config-spec-2.1.0.tgz#874a635287ef8b581fd8558532bf655d4fb59f2d"
integrity sha512-IpVePh16EbbB02V+UA+HQnnPIohgXvJRxHcS5+Uwk4AT5LjzCZJm5sp/yqs5C6KZJ1jMsV4paEV13BN1pvDuxQ==
-conventional-changelog-conventionalcommits@^4.2.1:
+conventional-changelog-conventionalcommits@4.2.3, conventional-changelog-conventionalcommits@^4.2.3:
version "4.2.3"
resolved "https://registry.yarnpkg.com/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-4.2.3.tgz#22855b32d57d0328951c1c2dc01b172a5f24ea37"
integrity sha512-atGa+R4vvEhb8N/8v3IoW59gCBJeeFiX6uIbPu876ENAmkMwsenyn0R21kdDHJFLQdy6zW4J6b4xN8KI3b9oww==
@@ -4205,11 +4115,12 @@ conventional-changelog-conventionalcommits@^4.2.1:
lodash "^4.17.15"
q "^1.5.1"
-conventional-changelog-core@^4.0.2:
- version "4.1.1"
- resolved "https://registry.yarnpkg.com/conventional-changelog-core/-/conventional-changelog-core-4.1.1.tgz#956f1a2fb476ef2f66c93f673ac040a4159de167"
- integrity sha512-fBre5P6U9n914Da6Cj82vIfRU2DhTLGr1eDPXWA7AamxTpd4cd0jgdS7Aieas5Vn5WXOJNFRDNl6PrYLEonImg==
+conventional-changelog-core@^4.1.1:
+ version "4.1.4"
+ resolved "https://registry.yarnpkg.com/conventional-changelog-core/-/conventional-changelog-core-4.1.4.tgz#39be27fca6ef20a0f998d7a3a1e97cfa8a055cb6"
+ integrity sha512-LO58ZbEpp1Ul+y/vOI8rJRsWkovsYkCFbOCVgi6UnVfU8WC0F8K8VQQwaBZWWUpb6JvEiN4GBR5baRP2txZ+Vg==
dependencies:
+ add-stream "^1.0.0"
conventional-changelog-writer "^4.0.11"
conventional-commits-parser "^3.0.8"
dateformat "^3.0.0"
@@ -4260,7 +4171,7 @@ conventional-changelog-jshint@^2.0.3:
compare-func "^1.3.1"
q "^1.5.1"
-conventional-changelog-preset-loader@^2.2.0:
+conventional-changelog-preset-loader@^2.3.0:
version "2.3.0"
resolved "https://registry.yarnpkg.com/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.3.0.tgz#580fa8ab02cef22c24294d25e52d7ccd247a9a6a"
integrity sha512-/rHb32J2EJnEXeK4NpDgMaAVTFZS3o1ExmjKMtYVgIC4MQn0vkNSbYpdGRotkfGGRWiqk3Ri3FBkiZGbAfIfOQ==
@@ -4281,22 +4192,22 @@ conventional-changelog-writer@^4.0.11:
split "^1.0.0"
through2 "^3.0.0"
-conventional-changelog@3.1.12:
- version "3.1.12"
- resolved "https://registry.yarnpkg.com/conventional-changelog/-/conventional-changelog-3.1.12.tgz#ede5b6803cfa8af6c7ea97e54ce5519508903afb"
- integrity sha512-zyGKwii8Z5zOq1nGFm5jn9Ou1jQ6UBoRT0+nqBIU8fEzh64+AcVxrY97tVuK77Ati0xwpBiFHpDXAW7pkq1jEw==
+conventional-changelog@3.1.15:
+ version "3.1.15"
+ resolved "https://registry.yarnpkg.com/conventional-changelog/-/conventional-changelog-3.1.15.tgz#103d0b550436cf83e8a59ba88be82ece2613cd9f"
+ integrity sha512-CoWM+Z9bYyF00QzNpTnxkCLiuLAeRocJz3C/foFjvhsdltdtkJgMChp7GytQNjm4pT7JFBVJTpqLHTpxNtOzaA==
dependencies:
- conventional-changelog-angular "^5.0.5"
+ conventional-changelog-angular "^5.0.6"
conventional-changelog-atom "^2.0.3"
conventional-changelog-codemirror "^2.0.3"
- conventional-changelog-conventionalcommits "^4.2.1"
- conventional-changelog-core "^4.0.2"
+ conventional-changelog-conventionalcommits "^4.2.3"
+ conventional-changelog-core "^4.1.1"
conventional-changelog-ember "^2.0.4"
conventional-changelog-eslint "^3.0.4"
conventional-changelog-express "^2.0.1"
conventional-changelog-jquery "^3.0.6"
conventional-changelog-jshint "^2.0.3"
- conventional-changelog-preset-loader "^2.2.0"
+ conventional-changelog-preset-loader "^2.3.0"
conventional-commits-filter@^2.0.2:
version "2.0.2"
@@ -4306,7 +4217,7 @@ conventional-commits-filter@^2.0.2:
lodash.ismatch "^4.4.0"
modify-values "^1.0.0"
-conventional-commits-parser@^3.0.5, conventional-commits-parser@^3.0.8:
+conventional-commits-parser@^3.0.8:
version "3.0.8"
resolved "https://registry.yarnpkg.com/conventional-commits-parser/-/conventional-commits-parser-3.0.8.tgz#23310a9bda6c93c874224375e72b09fb275fe710"
integrity sha512-YcBSGkZbYp7d+Cr3NWUeXbPDFUN6g3SaSIzOybi8bjHL5IJ5225OSCxJJ4LgziyEJ7AaJtE9L2/EU6H7Nt/DDQ==
@@ -4319,21 +4230,21 @@ conventional-commits-parser@^3.0.5, conventional-commits-parser@^3.0.8:
through2 "^3.0.0"
trim-off-newlines "^1.0.0"
-conventional-recommended-bump@6.0.2:
- version "6.0.2"
- resolved "https://registry.yarnpkg.com/conventional-recommended-bump/-/conventional-recommended-bump-6.0.2.tgz#086e3380e8d66ca2b962d84af863a28d532f355a"
- integrity sha512-9qWhAweJbT6CAHcCprBYzUb3tySsaRrUx0ckpMprHbtWOBfl3gxakUCBNd/4T3m2Iv9Cb8Y4P2Px3cR5ysXPDw==
+conventional-recommended-bump@6.0.5:
+ version "6.0.5"
+ resolved "https://registry.yarnpkg.com/conventional-recommended-bump/-/conventional-recommended-bump-6.0.5.tgz#be7ec24b43bef57108042ea1d49758b58beabc03"
+ integrity sha512-srkferrB4kACPEbKYltZwX1CQZAEqbQkabKN444mavLRVMetzwJFJf23/+pwvtMsWbd+cc4HaleV1nHke0f8Rw==
dependencies:
concat-stream "^2.0.0"
- conventional-changelog-preset-loader "^2.2.0"
+ conventional-changelog-preset-loader "^2.3.0"
conventional-commits-filter "^2.0.2"
- conventional-commits-parser "^3.0.5"
+ conventional-commits-parser "^3.0.8"
git-raw-commits "2.0.0"
- git-semver-tags "^3.0.0"
- meow "^4.0.0"
+ git-semver-tags "^3.0.1"
+ meow "^5.0.0"
q "^1.5.1"
-convert-source-map@^1.1.0, convert-source-map@^1.4.0, convert-source-map@^1.5.0, convert-source-map@^1.5.1, convert-source-map@^1.7.0:
+convert-source-map@^1.1.0, convert-source-map@^1.4.0, convert-source-map@^1.5.0, convert-source-map@^1.5.1, convert-source-map@^1.6.0, convert-source-map@^1.7.0:
version "1.7.0"
resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.7.0.tgz#17a2cb882d7f77d3490585e2ce6c524424a3a442"
integrity sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==
@@ -4368,24 +4279,24 @@ copy-descriptor@^0.1.0:
integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=
copy-to-clipboard@^3.0.8:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/copy-to-clipboard/-/copy-to-clipboard-3.2.0.tgz#d2724a3ccbfed89706fac8a894872c979ac74467"
- integrity sha512-eOZERzvCmxS8HWzugj4Uxl8OJxa7T2k1Gi0X5qavwydHIfuSHq2dTD09LOg/XyGq4Zpb5IsR/2OJ5lbOegz78w==
+ version "3.2.1"
+ resolved "https://registry.yarnpkg.com/copy-to-clipboard/-/copy-to-clipboard-3.2.1.tgz#b1a1137100e5665d5a96015cb579e30e90e07c44"
+ integrity sha512-btru1Q6RD9wbonIvEU5EfnhIRGHLo//BGXQ1hNAD2avIs/nBZlpbOeKtv3mhoUByN4DB9Cb6/vXBymj1S43KmA==
dependencies:
toggle-selection "^1.0.6"
-core-js-compat@^3.1.1:
- version "3.4.1"
- resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.4.1.tgz#e12c5a3ef9fcb50fd9d9a32805bfe674f9139246"
- integrity sha512-YdeJI26gLc0CQJ9asLE5obEgBz2I0+CIgnoTbS2T0d5IPQw/OCgCIFR527RmpduxjrB3gSEHoGOCTq9sigOyfw==
+core-js-compat@^3.6.2:
+ version "3.6.4"
+ resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.6.4.tgz#938476569ebb6cda80d339bcf199fae4f16fff17"
+ integrity sha512-zAa3IZPvsJ0slViBQ2z+vgyyTuhd3MFn1rBQjZSKVEgB0UMYhUkCj9jJUVPgGTGqWvsBVmfnruXgTcNyTlEiSA==
dependencies:
- browserslist "^4.7.2"
- semver "^6.3.0"
+ browserslist "^4.8.3"
+ semver "7.0.0"
core-js-pure@^3.0.1:
- version "3.4.1"
- resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.4.1.tgz#483dbc687016b45cab4c185cf998c2c59e772c2a"
- integrity sha512-q3FgAYoFGS0LaqV4K7oMsJUpGU7Ud3IR6D2qcu7BAvg0OQPuwakrdNlal+0Zsm3bUPBpI5i/r9C6W3uQCcCrSw==
+ version "3.6.4"
+ resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.6.4.tgz#4bf1ba866e25814f149d4e9aaa08c36173506e3a"
+ integrity sha512-epIhRLkXdgv32xIUFaaAry2wdxZYBi6bgM7cB136dzzXXa+dFyRLTZeLUJxnd8ShrmyVXBub63n2NHo2JAt8Cw==
core-js@^1.0.0:
version "1.2.7"
@@ -4393,14 +4304,14 @@ core-js@^1.0.0:
integrity sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=
core-js@^2.4.0, core-js@^2.6.5:
- version "2.6.10"
- resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.10.tgz#8a5b8391f8cc7013da703411ce5b585706300d7f"
- integrity sha512-I39t74+4t+zau64EN1fE5v2W31Adtc/REhzWN+gWRRXg6WH5qAsZm62DHpQ1+Yhe4047T55jvzz7MUqF/dBBlA==
+ version "2.6.11"
+ resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.11.tgz#38831469f9922bded8ee21c9dc46985e0399308c"
+ integrity sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==
core-js@^3.0.1, core-js@^3.0.4:
- version "3.4.1"
- resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.4.1.tgz#76dd6828412900ab27c8ce0b22e6114d7ce21b18"
- integrity sha512-KX/dnuY/J8FtEwbnrzmAjUYgLqtk+cxM86hfG60LGiW3MmltIc2yAmDgBgEkfm0blZhUrdr1Zd84J2Y14mLxzg==
+ version "3.6.4"
+ resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.6.4.tgz#440a83536b458114b9cb2ac1580ba377dc470647"
+ integrity sha512-4paDGScNgZP2IXXilaffL9X7968RuvwlkK3xWtZRVqgd8SYNiVKRJvkFd1aqqEuPfN7E68ZHEp9hDj6lHj4Hyw==
core-util-is@1.0.2, core-util-is@~1.0.0:
version "1.0.2"
@@ -4415,7 +4326,7 @@ corejs-upgrade-webpack-plugin@^2.2.0:
resolve-from "^5.0.0"
webpack "^4.38.0"
-cosmiconfig@^5.0.0, cosmiconfig@^5.2.0, cosmiconfig@^5.2.1:
+cosmiconfig@^5.0.0, cosmiconfig@^5.2.1:
version "5.2.1"
resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.2.1.tgz#040f726809c591e77a17c0a3626ca45b4f168b1a"
integrity sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==
@@ -4485,15 +4396,7 @@ create-hmac@^1.1.0, create-hmac@^1.1.2, create-hmac@^1.1.4:
safe-buffer "^5.0.1"
sha.js "^2.4.8"
-create-react-context@^0.2.1:
- version "0.2.3"
- resolved "https://registry.yarnpkg.com/create-react-context/-/create-react-context-0.2.3.tgz#9ec140a6914a22ef04b8b09b7771de89567cb6f3"
- integrity sha512-CQBmD0+QGgTaxDL3OX1IDXYqjkp2It4RIbcb99jS6AEg27Ga+a9G3JtK6SIu0HBwPLZlmwt9F7UwWA4Bn92Rag==
- dependencies:
- fbjs "^0.8.0"
- gud "^1.0.0"
-
-create-react-context@^0.3.0:
+create-react-context@0.3.0, create-react-context@^0.3.0:
version "0.3.0"
resolved "https://registry.yarnpkg.com/create-react-context/-/create-react-context-0.3.0.tgz#546dede9dc422def0d3fc2fe03afe0bc0f4f7d8c"
integrity sha512-dNldIoSuNSvlTJ7slIKC/ZFGKexBMBrrcc+TTe1NdmROnaASuLPvqpwj9v4XS4uXZ8+YPu0sNmShX2rXI5LNsw==
@@ -4501,12 +4404,12 @@ create-react-context@^0.3.0:
gud "^1.0.0"
warning "^4.0.3"
-cross-env@^6.0.3:
- version "6.0.3"
- resolved "https://registry.yarnpkg.com/cross-env/-/cross-env-6.0.3.tgz#4256b71e49b3a40637a0ce70768a6ef5c72ae941"
- integrity sha512-+KqxF6LCvfhWvADcDPqo64yVIB31gv/jQulX2NGzKS/g3GEVz6/pt4wjHFtFWsHMddebWD/sDthJemzM4MaAag==
+cross-env@^7.0.0:
+ version "7.0.0"
+ resolved "https://registry.yarnpkg.com/cross-env/-/cross-env-7.0.0.tgz#5a3b2ddce51ec713ea58f2fb79ce22e65b4f5479"
+ integrity sha512-rV6M9ldNgmwP7bx5u6rZsTbYidzwvrwIYZnT08hSGLcQCcggofgFW+sNe7IhA1SRauPS0QuLbbX+wdNtpqE5CQ==
dependencies:
- cross-spawn "^7.0.0"
+ cross-spawn "^7.0.1"
cross-spawn@6.0.5, cross-spawn@^6.0.0, cross-spawn@^6.0.4, cross-spawn@^6.0.5:
version "6.0.5"
@@ -4528,7 +4431,7 @@ cross-spawn@^5.0.1:
shebang-command "^1.2.0"
which "^1.2.9"
-cross-spawn@^7.0.0:
+cross-spawn@^7.0.0, cross-spawn@^7.0.1:
version "7.0.1"
resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.1.tgz#0ab56286e0f7c24e153d04cc2aa027e43a9a5d14"
integrity sha512-u7v4o84SwFpD32Z8IIcPZ6z1/ie24O6RU3RbtL5Y316l3KuHVPx9ItBgWQ6VlfAFnRnTtMUrsQ9MUUTuEZjogg==
@@ -4573,22 +4476,22 @@ css-declaration-sorter@^4.0.1:
timsort "^0.3.0"
css-loader@^3.0.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-3.2.0.tgz#bb570d89c194f763627fcf1f80059c6832d009b2"
- integrity sha512-QTF3Ud5H7DaZotgdcJjGMvyDj5F3Pn1j/sC6VBEOVp94cbwqyIBdcs/quzj4MC1BKQSrTpQznegH/5giYbhnCQ==
+ version "3.4.2"
+ resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-3.4.2.tgz#d3fdb3358b43f233b78501c5ed7b1c6da6133202"
+ integrity sha512-jYq4zdZT0oS0Iykt+fqnzVLRIeiPWhka+7BqPn+oSIpWJAHak5tmB/WZrJ2a21JhCeFyNnnlroSl8c+MtVndzA==
dependencies:
camelcase "^5.3.1"
cssesc "^3.0.0"
icss-utils "^4.1.1"
loader-utils "^1.2.3"
normalize-path "^3.0.0"
- postcss "^7.0.17"
+ postcss "^7.0.23"
postcss-modules-extract-imports "^2.0.0"
postcss-modules-local-by-default "^3.0.2"
- postcss-modules-scope "^2.1.0"
+ postcss-modules-scope "^2.1.1"
postcss-modules-values "^3.0.0"
- postcss-value-parser "^4.0.0"
- schema-utils "^2.0.0"
+ postcss-value-parser "^4.0.2"
+ schema-utils "^2.6.0"
css-modules-loader-core@^1.1.0:
version "1.1.0"
@@ -4749,11 +4652,16 @@ csso@^4.0.2:
dependencies:
css-tree "1.0.0-alpha.37"
-cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0", cssom@^0.3.4:
+cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0", cssom@^0.3.4, cssom@~0.3.6:
version "0.3.8"
resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a"
integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==
+cssom@^0.4.1:
+ version "0.4.4"
+ resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10"
+ integrity sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==
+
cssstyle@^1.0.0, cssstyle@^1.1.1:
version "1.4.0"
resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-1.4.0.tgz#9d31328229d3c565c61e586b02041a28fccdccf1"
@@ -4761,10 +4669,17 @@ cssstyle@^1.0.0, cssstyle@^1.1.1:
dependencies:
cssom "0.3.x"
+cssstyle@^2.0.0:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.2.0.tgz#e4c44debccd6b7911ed617a4395e5754bba59992"
+ integrity sha512-sEb3XFPx3jNnCAMtqrXPDeSgQr+jojtCeNf8cvMNMh1cG970+lljssvQDzPq6lmmJu2Vhqood/gtEomBiHOGnA==
+ dependencies:
+ cssom "~0.3.6"
+
csstype@^2.2.0, csstype@^2.5.7, csstype@^2.6.7:
- version "2.6.7"
- resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.7.tgz#20b0024c20b6718f4eda3853a1f5a1cce7f5e4a5"
- integrity sha512-9Mcn9sFbGBAdmimWb2gLVDtFJzeKtDGIr76TUqmjZrw9LFXBMSU70lcs+C0/7fyCd6iBDqmksUcCOUIkisPHsQ==
+ version "2.6.9"
+ resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.9.tgz#05141d0cd557a56b8891394c1911c40c8a98d098"
+ integrity sha512-xz39Sb4+OaTsULgUERcCk+TJj8ylkL4aSVDQiX/ksxbELSqwkgt4d4RD7fovIdgJGSuNYqwZEiVjYY5l0ask+Q==
currently-unhandled@^0.4.1:
version "0.4.1"
@@ -4786,9 +4701,9 @@ cyclist@^1.0.1:
integrity sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=
damerau-levenshtein@^1.0.4:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.5.tgz#780cf7144eb2e8dbd1c3bb83ae31100ccc31a414"
- integrity sha512-CBCRqFnpu715iPmw1KrdOrzRqbdFwQTwAWyyyYS42+iAgHCuXZ+/TdMgQkUENPomxEz9z1BEzuQU2Xw0kUuAgA==
+ version "1.0.6"
+ resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.6.tgz#143c1641cb3d85c60c32329e26899adea8701791"
+ integrity sha512-JVrozIeElnj3QzfUIt8tB8YMluBJom4Vw9qTPpjGYQ9fYlB3D/rb6OordUxf3xeFB35LKWs0xqcO5U6ySvBtug==
dargs@^4.0.1:
version "4.1.0"
@@ -4828,12 +4743,12 @@ dateformat@^3.0.0:
integrity sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==
deasync@^0.1.14:
- version "0.1.15"
- resolved "https://registry.yarnpkg.com/deasync/-/deasync-0.1.15.tgz#788c4bbe6d32521233b28d23936de1bbadd2e112"
- integrity sha512-pxMaCYu8cQIbGkA4Y1R0PLSooPIpH1WgFBLeJ+zLxQgHfkZG86ViJSmZmONSjZJ/R3NjwkMcIWZAzpLB2G9/CA==
+ version "0.1.19"
+ resolved "https://registry.yarnpkg.com/deasync/-/deasync-0.1.19.tgz#e7ea89fcc9ad483367e8a48fe78f508ca86286e8"
+ integrity sha512-oh3MRktfnPlLysCPpBpKZZzb4cUC/p0aA3SyRGp15lN30juJBTo/CiD0d4fR+f1kBtUQoJj1NE9RPNWQ7BQ9Mg==
dependencies:
- bindings "~1.2.1"
- node-addon-api "^1.6.0"
+ bindings "^1.5.0"
+ node-addon-api "^1.7.1"
debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.9:
version "2.6.9"
@@ -4842,14 +4757,14 @@ debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.9:
dependencies:
ms "2.0.0"
-debug@3.1.0:
+debug@3.1.0, debug@=3.1.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261"
integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==
dependencies:
ms "2.0.0"
-debug@^3.0.0, debug@^3.1.0, debug@^3.2.5, debug@^3.2.6:
+debug@^3.0.0, debug@^3.1.0, debug@^3.2.5:
version "3.2.6"
resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b"
integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==
@@ -4888,6 +4803,18 @@ deep-equal-ident@^1.1.1:
dependencies:
lodash.isequal "^3.0"
+deep-equal@^1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.1.1.tgz#b5c98c942ceffaf7cb051e24e1434a25a2e6076a"
+ integrity sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==
+ dependencies:
+ is-arguments "^1.0.4"
+ is-date-object "^1.0.1"
+ is-regex "^1.0.4"
+ object-is "^1.0.1"
+ object-keys "^1.1.1"
+ regexp.prototype.flags "^1.2.0"
+
deep-extend@^0.6.0:
version "0.6.0"
resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac"
@@ -4977,20 +4904,10 @@ detect-indent@6.0.0:
resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-6.0.0.tgz#0abd0f549f69fc6659a254fe96786186b6f528fd"
integrity sha512-oSyFlqaTHCItVRGK5RmrmjB+CmaMOW7IaNA/kdxqhoa6d17j/5ce9O9eWXmV/KEdRwqpQA+Vqe8a8Bsybu4YnA==
-detect-libc@^1.0.2:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b"
- integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=
-
-detect-newline@3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.0.0.tgz#8ae477c089e51872c264531cd6547719c0b86b2f"
- integrity sha512-JAP22dVPAqvhdRFFxK1G5GViIokyUn0UWXRNW0ztK96fsqi9cuM8w8ESbSk+T2w5OVorcMcL6m7yUg1RrX+2CA==
-
-detect-newline@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2"
- integrity sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I=
+detect-newline@3.1.0, detect-newline@^3.0.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651"
+ integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==
detect-node@^2.0.4:
version "2.0.4"
@@ -5018,6 +4935,11 @@ diff-sequences@^24.9.0:
resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-24.9.0.tgz#5715d6244e2aa65f48bba0bc972db0b0b11e95b5"
integrity sha512-Dj6Wk3tWyTE+Fo1rW8v0Xhwk80um6yFYKbuAxc9c3EZxIHFDYwbi34Uk42u1CdnIiVorvt4RmlSDjIPyzGC2ew==
+diff-sequences@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-25.1.0.tgz#fd29a46f1c913fd66c22645dc75bffbe43051f32"
+ integrity sha512-nFIfVk5B/NStCsJ+zaPO4vYuLjlzQ6uFvPxzYyHlejNZ/UGa7G/n7peOXVrVNvRuyfstt+mZQYGpjxg9Z6N8Kw==
+
diffie-hellman@^5.0.0:
version "5.0.3"
resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875"
@@ -5064,17 +4986,6 @@ dnd-core@^2.5.4:
lodash "^4.2.0"
redux "^3.7.1"
-dnd-core@^9.4.0:
- version "9.4.0"
- resolved "https://registry.yarnpkg.com/dnd-core/-/dnd-core-9.4.0.tgz#ccf605d36887f18cdde8fd5576ca3145d2e69fa8"
- integrity sha512-Kg+8VwU8s7TgdR/BUYGUHrvFiS+5ePMZ0Q0XD7p+cFVJvgKqykBaeQDuaziuauFMPm8QxtnUy8Pncey9flXW3Q==
- dependencies:
- "@types/asap" "^2.0.0"
- "@types/invariant" "^2.2.30"
- asap "^2.0.6"
- invariant "^2.2.4"
- redux "^4.0.4"
-
doctrine@1.5.0:
version "1.5.0"
resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa"
@@ -5185,17 +5096,24 @@ dot-prop@^3.0.0:
dependencies:
is-obj "^1.0.0"
-dot-prop@^4.1.0, dot-prop@^4.1.1:
+dot-prop@^4.1.0:
version "4.2.0"
resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-4.2.0.tgz#1f19e0c2e1aa0e32797c49799f2837ac6af69c57"
integrity sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==
dependencies:
is-obj "^1.0.0"
+dot-prop@^5.2.0:
+ version "5.2.0"
+ resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.2.0.tgz#c34ecc29556dc45f1f4c22697b6f4904e0cc4fcb"
+ integrity sha512-uEUyaDKoSQ1M4Oq8l45hSE26SnTxL6snNnqvK/VWx5wJhmff5z0FUVJDKDanor/6w3kzE3i7XZOk+7wC0EXr1A==
+ dependencies:
+ is-obj "^2.0.0"
+
dotenv-defaults@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/dotenv-defaults/-/dotenv-defaults-1.0.2.tgz#441cf5f067653fca4bbdce9dd3b803f6f84c585d"
- integrity sha512-iXFvHtXl/hZPiFj++1hBg4lbKwGM+t/GlvELDnRtOFdjXyWP7mubkVr+eZGWG62kdsbulXAef6v/j6kiWc/xGA==
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/dotenv-defaults/-/dotenv-defaults-1.1.1.tgz#032c024f4b5906d9990eb06d722dc74cc60ec1bd"
+ integrity sha512-6fPRo9o/3MxKvmRZBD3oNFdxODdhJtIy1zcJeUSCs6HCy4tarUpd+G67UTU9tF6OWXeSPqsm4fPAB+2eY9Rt9Q==
dependencies:
dotenv "^6.2.0"
@@ -5269,12 +5187,12 @@ ecc-jsbn@~0.1.1:
jsbn "~0.1.0"
safer-buffer "^2.1.0"
-editions@^2.1.3:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/editions/-/editions-2.2.0.tgz#dacd0c2a9441ebef592bba316a6264febb337f35"
- integrity sha512-RYg3iEA2BDLCNVe8PUkD+ox5vAKxB9XS/mAhx1bdxGCF0CpX077C0pyTA9t5D6idCYA3avl5/XDHKPsHFrygfw==
+editions@^2.2.0:
+ version "2.3.0"
+ resolved "https://registry.yarnpkg.com/editions/-/editions-2.3.0.tgz#47f2d5309340bce93ab5eb6ad755b9e90ff825e4"
+ integrity sha512-jeXYwHPKbitU1l14dWlsl5Nm+b1Hsm7VX73BsrQ4RVwEcAQQIPFHTZAbVtuIGxZBrpdT2FXd8lbtrNBrzZxIsA==
dependencies:
- errlop "^1.1.2"
+ errlop "^2.0.0"
semver "^6.3.0"
ee-first@1.1.1:
@@ -5287,27 +5205,22 @@ ejs@^2.7.4:
resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.7.4.tgz#48661287573dcc53e366c7a1ae52c3a120eec9ba"
integrity sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==
-electron-to-chromium@^1.3.247:
- version "1.3.306"
- resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.306.tgz#e8265301d053d5f74e36cb876486830261fbe946"
- integrity sha512-frDqXvrIROoYvikSKTIKbHbzO6M3/qC6kCIt/1FOa9kALe++c4VAJnwjSFvf1tYLEUsP2n9XZ4XSCyqc3l7A/A==
-
-electron-to-chromium@^1.3.322:
- version "1.3.334"
- resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.334.tgz#0588359f4ac5c4185ebacdf5fc7e1937e2c99872"
- integrity sha512-RcjJhpsVaX0X6ntu/WSBlW9HE9pnCgXS9B8mTUObl1aDxaiOa0Lu+NMveIS5IDC+VELzhM32rFJDCC+AApVwcA==
+electron-to-chromium@^1.3.247, electron-to-chromium@^1.3.349:
+ version "1.3.351"
+ resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.351.tgz#78bcf8e9092013232b2fb72b9db423d96e92604c"
+ integrity sha512-L8zhV8k7Znp2q3wWXYDzCyfTBeGauEX0rX/FtgmnDgmvHRqwu9NVN614wOkXx9sDZmJZpNMBaEFMXTu/vbr+Kg==
-element-resize-detector@^1.1.15:
- version "1.1.15"
- resolved "https://registry.yarnpkg.com/element-resize-detector/-/element-resize-detector-1.1.15.tgz#48eba1a2eaa26969a4c998d972171128c971d8d2"
- integrity sha512-16/5avDegXlUxytGgaumhjyQoM6hpp5j3+L79sYq5hlXfTNRy5WMMuTVWkZU3egp/CokCmTmvf18P3KeB57Iog==
+element-resize-detector@^1.2.1:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/element-resize-detector/-/element-resize-detector-1.2.1.tgz#b0305194447a4863155e58f13323a0aef30851d1"
+ integrity sha512-BdFsPepnQr9fznNPF9nF4vQ457U/ZJXQDSNF1zBe7yaga8v9AdZf3/NElYxFdUh7SitSGt040QygiTo6dtatIw==
dependencies:
- batch-processor "^1.0.0"
+ batch-processor "1.0.0"
elliptic@^6.0.0:
- version "6.5.1"
- resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.1.tgz#c380f5f909bf1b9b4428d028cd18d3b0efd6b52b"
- integrity sha512-xvJINNLbTeWQjrl6X+7eQCrIy/YPv5XCpKW6kB5mKvtnGILoLDcySuwomfdzt0BMdLNVnuRNTuzKNHj0bva1Cg==
+ version "6.5.2"
+ resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.2.tgz#05c5678d7173c049d8ca433552224a495d0e3762"
+ integrity sha512-f4x70okzZbIQl/NSRLkI/+tteV/9WqL98zx+SQ69KbXxmVrmjwsNUPn/gYJJ0sHvEak24cZgHIPegRePAtA/xw==
dependencies:
bn.js "^4.4.0"
brorand "^1.0.1"
@@ -5337,15 +5250,6 @@ emojis-list@^2.0.0:
resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389"
integrity sha1-TapNnbAPmBmIDHn6RXrlsJof04k=
-emotion-theming@^10.0.14:
- version "10.0.19"
- resolved "https://registry.yarnpkg.com/emotion-theming/-/emotion-theming-10.0.19.tgz#66d13db74fccaefad71ba57c915b306cf2250295"
- integrity sha512-dQRBPLAAQ6eA8JKhkLCIWC8fdjPbiNC1zNTdFF292h9amhZXofcNGUP7axHoHX4XesqQESYwZrXp53OPInMrKw==
- dependencies:
- "@babel/runtime" "^7.5.5"
- "@emotion/weak-memoize" "0.2.4"
- hoist-non-react-statics "^3.3.0"
-
emotion-theming@^10.0.19:
version "10.0.27"
resolved "https://registry.yarnpkg.com/emotion-theming/-/emotion-theming-10.0.27.tgz#1887baaec15199862c89b1b984b79806f2b9ab10"
@@ -5394,9 +5298,9 @@ entities@^2.0.0:
integrity sha512-D9f7V0JSRwIxlRI2mjMqufDrRDnx8p+eEOz7aUM9SuvF8gsBzra0/6tbjl1m8eQHrZlYj6PxqE00hZ1SAIKPLw==
envinfo@^7.3.1:
- version "7.4.0"
- resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.4.0.tgz#bef4ece9e717423aaf0c3584651430b735ad6630"
- integrity sha512-FdDfnWnCVjxTTpWE3d6Jgh5JDIA3Cw7LCgpM/pI7kK1ORkjaqI2r6NqQ+ln2j0dfpgxY00AWieSvtkiZQKIItA==
+ version "7.5.0"
+ resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.5.0.tgz#91410bb6db262fb4f1409bd506e9ff57e91023f4"
+ integrity sha512-jDgnJaF/Btomk+m3PZDTTCb5XIIIX3zYItnCRfF73zVgvinLoRomuhi75Y4su0PtQxWz4v66XnLLckyvyJTOIQ==
enzyme-adapter-react-16@^1.14.0:
version "1.15.2"
@@ -5442,50 +5346,50 @@ enzyme-shallow-equal@^1.0.1:
object-is "^1.0.2"
enzyme-to-json@^3.3.0:
- version "3.4.3"
- resolved "https://registry.yarnpkg.com/enzyme-to-json/-/enzyme-to-json-3.4.3.tgz#ed4386f48768ed29e2d1a2910893542c34e7e0af"
- integrity sha512-jqNEZlHqLdz7OTpXSzzghArSS3vigj67IU/fWkPyl1c0TCj9P5s6Ze0kRkYZWNEoCqCR79xlQbigYlMx5erh8A==
+ version "3.4.4"
+ resolved "https://registry.yarnpkg.com/enzyme-to-json/-/enzyme-to-json-3.4.4.tgz#b30726c59091d273521b6568c859e8831e94d00e"
+ integrity sha512-50LELP/SCPJJGic5rAARvU7pgE3m1YaNj7JLM+Qkhl5t7PAs6fiyc8xzc50RnkKPFQCv0EeFVjEWdIFRGPWMsA==
dependencies:
lodash "^4.17.15"
+ react-is "^16.12.0"
-enzyme@^3.10.0:
- version "3.10.0"
- resolved "https://registry.yarnpkg.com/enzyme/-/enzyme-3.10.0.tgz#7218e347c4a7746e133f8e964aada4a3523452f6"
- integrity sha512-p2yy9Y7t/PFbPoTvrWde7JIYB2ZyGC+NgTNbVEGvZ5/EyoYSr9aG/2rSbVvyNvMHEhw9/dmGUJHWtfQIEiX9pg==
+enzyme@^3.11.0:
+ version "3.11.0"
+ resolved "https://registry.yarnpkg.com/enzyme/-/enzyme-3.11.0.tgz#71d680c580fe9349f6f5ac6c775bc3e6b7a79c28"
+ integrity sha512-Dw8/Gs4vRjxY6/6i9wU0V+utmQO9kvh9XLnz3LIudviOnVYDEe2ec+0k+NQoMamn1VrjKgCUOWj5jG/5M5M0Qw==
dependencies:
- array.prototype.flat "^1.2.1"
- cheerio "^1.0.0-rc.2"
- function.prototype.name "^1.1.0"
+ array.prototype.flat "^1.2.3"
+ cheerio "^1.0.0-rc.3"
+ enzyme-shallow-equal "^1.0.1"
+ function.prototype.name "^1.1.2"
has "^1.0.3"
- html-element-map "^1.0.0"
- is-boolean-object "^1.0.0"
- is-callable "^1.1.4"
- is-number-object "^1.0.3"
- is-regex "^1.0.4"
- is-string "^1.0.4"
+ html-element-map "^1.2.0"
+ is-boolean-object "^1.0.1"
+ is-callable "^1.1.5"
+ is-number-object "^1.0.4"
+ is-regex "^1.0.5"
+ is-string "^1.0.5"
is-subset "^0.1.1"
lodash.escape "^4.0.1"
lodash.isequal "^4.5.0"
- object-inspect "^1.6.0"
- object-is "^1.0.1"
+ object-inspect "^1.7.0"
+ object-is "^1.0.2"
object.assign "^4.1.0"
- object.entries "^1.0.4"
- object.values "^1.0.4"
- raf "^3.4.0"
+ object.entries "^1.1.1"
+ object.values "^1.1.1"
+ raf "^3.4.1"
rst-selector-parser "^2.2.3"
- string.prototype.trim "^1.1.2"
+ string.prototype.trim "^1.2.1"
err-code@^1.0.0:
version "1.1.2"
resolved "https://registry.yarnpkg.com/err-code/-/err-code-1.1.2.tgz#06e0116d3028f6aef4806849eb0ea6a748ae6960"
integrity sha1-BuARbTAo9q70gGhJ6w6mp0iuaWA=
-errlop@^1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/errlop/-/errlop-1.1.2.tgz#a99a48f37aa264d614e342ffdbbaa49eec9220e0"
- integrity sha512-djkRp+urJ+SmqDBd7F6LUgm4Be1TTYBxia2bhjNdFBuBDQtJDHExD2VbxR6eyst3h1TZy3qPRCdqb6FBoFttTA==
- dependencies:
- editions "^2.1.3"
+errlop@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/errlop/-/errlop-2.0.0.tgz#52b97d35da1b0795e2647b5d2d3a46d17776f55a"
+ integrity sha512-z00WIrQhtOMUnjdTG0O4f6hMG64EVccVDBy2WwgjcF8S4UB1exGYuc2OFwmdQmsJwLQVEIHWHPCz/omXXgAZHw==
errno@^0.1.3, errno@~0.1.7:
version "0.1.7"
@@ -5501,23 +5405,7 @@ error-ex@^1.2.0, error-ex@^1.3.1:
dependencies:
is-arrayish "^0.2.1"
-es-abstract@^1.12.0, es-abstract@^1.13.0, es-abstract@^1.15.0, es-abstract@^1.16.0, es-abstract@^1.4.3, es-abstract@^1.5.1, es-abstract@^1.7.0:
- version "1.16.0"
- resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.16.0.tgz#d3a26dc9c3283ac9750dca569586e976d9dcc06d"
- integrity sha512-xdQnfykZ9JMEiasTAJZJdMWCQ1Vm00NBw79/AWi7ELfZuuPCSOMDZbT9mkOfSctVtfhb+sAAzrm+j//GjjLHLg==
- dependencies:
- es-to-primitive "^1.2.0"
- function-bind "^1.1.1"
- has "^1.0.3"
- has-symbols "^1.0.0"
- is-callable "^1.1.4"
- is-regex "^1.0.4"
- object-inspect "^1.6.0"
- object-keys "^1.1.1"
- string.prototype.trimleft "^2.1.0"
- string.prototype.trimright "^2.1.0"
-
-es-abstract@^1.17.0, es-abstract@^1.17.0-next.1:
+es-abstract@^1.13.0, es-abstract@^1.17.0, es-abstract@^1.17.0-next.0, es-abstract@^1.17.0-next.1, es-abstract@^1.17.2, es-abstract@^1.17.4:
version "1.17.4"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.4.tgz#e3aedf19706b20e7c2594c35fc0d57605a79e184"
integrity sha512-Ae3um/gb8F0mui/jPL+QiqmglkUsaQf7FwBEHYIFkztkneosu9imhqHpBzQ3h1vit8t5iQ74t6PEVvphBZiuiQ==
@@ -5534,7 +5422,25 @@ es-abstract@^1.17.0, es-abstract@^1.17.0-next.1:
string.prototype.trimleft "^2.1.1"
string.prototype.trimright "^2.1.1"
-es-to-primitive@^1.2.0, es-to-primitive@^1.2.1:
+es-array-method-boxes-properly@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz#873f3e84418de4ee19c5be752990b2e44718d09e"
+ integrity sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==
+
+es-get-iterator@^1.0.2:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/es-get-iterator/-/es-get-iterator-1.1.0.tgz#bb98ad9d6d63b31aacdc8f89d5d0ee57bcb5b4c8"
+ integrity sha512-UfrmHuWQlNMTs35e1ypnvikg6jCz3SK8v8ImvmDsh36fCVUR1MqoFDiyn0/k52C8NqO3YsO8Oe0azeesNuqSsQ==
+ dependencies:
+ es-abstract "^1.17.4"
+ has-symbols "^1.0.1"
+ is-arguments "^1.0.4"
+ is-map "^2.0.1"
+ is-set "^2.0.1"
+ is-string "^1.0.5"
+ isarray "^2.0.5"
+
+es-to-primitive@^1.2.1:
version "1.2.1"
resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a"
integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==
@@ -5575,12 +5481,12 @@ escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2, escape-string-regexp@^1
resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=
-escodegen@^1.11.0, escodegen@^1.8.1, escodegen@^1.9.1:
- version "1.12.0"
- resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.12.0.tgz#f763daf840af172bb3a2b6dd7219c0e17f7ff541"
- integrity sha512-TuA+EhsanGcme5T3R0L80u4t8CpbXQjegRmf7+FPTJrtCTErXFeelblRgHQa1FofEzqYYJmJ/OqjTwREp9qgmg==
+escodegen@^1.11.0, escodegen@^1.11.1, escodegen@^1.9.1:
+ version "1.14.1"
+ resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.14.1.tgz#ba01d0c8278b5e95a9a45350142026659027a457"
+ integrity sha512-Bmt7NcRySdIfNPfU2ZoXDrrXsG9ZjvDxcAlMfDUgRBjLOWTuIACXPBFJH7Z+cLb40JeQco5toikyc9t9P8E9SQ==
dependencies:
- esprima "^3.1.3"
+ esprima "^4.0.1"
estraverse "^4.2.0"
esutils "^2.0.2"
optionator "^0.8.1"
@@ -5617,20 +5523,20 @@ eslint-config-airbnb@^18.0.1:
object.assign "^4.1.0"
object.entries "^1.1.0"
-eslint-config-prettier@^6.5.0:
- version "6.7.0"
- resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-6.7.0.tgz#9a876952e12df2b284adbd3440994bf1f39dfbb9"
- integrity sha512-FamQVKM3jjUVwhG4hEMnbtsq7xOIDm+SY5iBPfR8gKsJoAB2IQnNF+bk1+8Fy44Nq7PPJaLvkRxILYdJWoguKQ==
+eslint-config-prettier@^6.10.0:
+ version "6.10.0"
+ resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-6.10.0.tgz#7b15e303bf9c956875c948f6b21500e48ded6a7f"
+ integrity sha512-AtndijGte1rPILInUdHjvKEGbIV06NuvPrqlIEaEaWtbtvJh464mDeyGMdZEQMsGvC0ZVkiex1fSNcC4HAbRGg==
dependencies:
get-stdin "^6.0.0"
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==
+ version "0.3.3"
+ resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.3.tgz#dbaa52b6b2816b50bc6711af75422de808e98404"
+ integrity sha512-b8crLDo0M5RSe5YG8Pu2DYBj71tSB6OvXkfzwbJU2w7y8P4/yo0MyF8jU26IEuEuHF2K5/gcAJE3LhQGqBBbVg==
dependencies:
debug "^2.6.9"
- resolve "^1.5.0"
+ resolve "^1.13.1"
eslint-module-utils@^2.4.1:
version "2.5.2"
@@ -5640,10 +5546,10 @@ eslint-module-utils@^2.4.1:
debug "^2.6.9"
pkg-dir "^2.0.0"
-eslint-plugin-import@^2.18.2:
- version "2.20.0"
- resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.20.0.tgz#d749a7263fb6c29980def8e960d380a6aa6aecaa"
- integrity sha512-NK42oA0mUc8Ngn4kONOPsPB1XhbUvNHqF+g307dPV28aknPoiNnKLFd9em4nkswwepdF5ouieqv5Th/63U7YJQ==
+eslint-plugin-import@^2.20.1:
+ version "2.20.1"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.20.1.tgz#802423196dcb11d9ce8435a5fc02a6d3b46939b3"
+ integrity sha512-qQHgFOTjguR+LnYRoToeZWT62XM55MBVXObHM6SKFd1VzDcX/vqT1kAz8ssqigh5eMj8qXcRoXXGZpPP6RfdCw==
dependencies:
array-includes "^3.0.3"
array.prototype.flat "^1.2.1"
@@ -5673,20 +5579,26 @@ eslint-plugin-jsx-a11y@^6.2.3:
has "^1.0.3"
jsx-ast-utils "^2.2.1"
-eslint-plugin-react@^7.16.0:
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.16.0.tgz#9928e4f3e2122ed3ba6a5b56d0303ba3e41d8c09"
- integrity sha512-GacBAATewhhptbK3/vTP09CbFrgUJmBSaaRcWdbQLFvUZy9yVcQxigBNHGPU/KE2AyHpzj3AWXpxoMTsIDiHug==
+eslint-plugin-react-hooks@^1.7.0:
+ version "1.7.0"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-1.7.0.tgz#6210b6d5a37205f0b92858f895a4e827020a7d04"
+ integrity sha512-iXTCFcOmlWvw4+TOE8CLWj6yX1GwzT0Y6cUfHHZqWnSk144VmVIRcVGtUAzrLES7C798lmvnt02C7rxaOX1HNA==
+
+eslint-plugin-react@^7.18.3:
+ version "7.18.3"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.18.3.tgz#8be671b7f6be095098e79d27ac32f9580f599bc8"
+ integrity sha512-Bt56LNHAQCoou88s8ViKRjMB2+36XRejCQ1VoLj716KI1MoE99HpTVvIThJ0rvFmG4E4Gsq+UgToEjn+j044Bg==
dependencies:
- array-includes "^3.0.3"
+ array-includes "^3.1.1"
doctrine "^2.1.0"
has "^1.0.3"
- jsx-ast-utils "^2.2.1"
- object.entries "^1.1.0"
- object.fromentries "^2.0.0"
- object.values "^1.1.0"
+ jsx-ast-utils "^2.2.3"
+ object.entries "^1.1.1"
+ object.fromentries "^2.0.2"
+ object.values "^1.1.1"
prop-types "^15.7.2"
- resolve "^1.12.0"
+ resolve "^1.14.2"
+ string.prototype.matchall "^4.0.2"
eslint-scope@^4.0.3:
version "4.0.3"
@@ -5711,15 +5623,15 @@ eslint-utils@^1.4.3:
dependencies:
eslint-visitor-keys "^1.1.0"
-eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0:
+eslint-visitor-keys@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz#e2a82cea84ff246ad6fb57f9bde5b46621459ec2"
integrity sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==
-eslint@^6.6.0:
- version "6.7.2"
- resolved "https://registry.yarnpkg.com/eslint/-/eslint-6.7.2.tgz#c17707ca4ad7b2d8af986a33feba71e18a9fecd1"
- integrity sha512-qMlSWJaCSxDFr8fBPvJM9kJwbazrhNcBU3+DszDW1OlEwKBBRWsJc7NJFelvwQpanHCR14cOLD41x8Eqvo3Nng==
+eslint@^6.8.0:
+ version "6.8.0"
+ resolved "https://registry.yarnpkg.com/eslint/-/eslint-6.8.0.tgz#62262d6729739f9275723824302fb227c8c93ffb"
+ integrity sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==
dependencies:
"@babel/code-frame" "^7.0.0"
ajv "^6.10.0"
@@ -5773,15 +5685,15 @@ esprima@^3.1.3:
resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633"
integrity sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=
-esprima@^4.0.0, esprima@~4.0.0:
+esprima@^4.0.0, esprima@^4.0.1, esprima@~4.0.0:
version "4.0.1"
resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71"
integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==
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==
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.1.0.tgz#c5c0b66f383e7656404f86b31334d72524eddb48"
+ integrity sha512-MxYW9xKmROWF672KqjO75sszsA8Mxhw06YFeS5VHlB98KDHbOSurm3ArsjO60Eaf3QmGMCP1yn+0JQkNLo/97Q==
dependencies:
estraverse "^4.0.0"
@@ -5802,6 +5714,11 @@ estree-walker@^0.6.1:
resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-0.6.1.tgz#53049143f40c6eb918b23671d1fe3219f3a1b362"
integrity sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==
+estree-walker@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-1.0.1.tgz#31bc5d612c96b704106b477e6dd5d8aa138cb700"
+ integrity sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==
+
esutils@^2.0.0, esutils@^2.0.2:
version "2.0.3"
resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64"
@@ -5818,9 +5735,9 @@ eventemitter3@^4.0.0:
integrity sha512-qerSRB0p+UDEssxTtm6EDKcE7W4OaoisfIMl4CngyEhjpYglocpNg6UEqCvemdGhosAsg4sO2dXJOdyBifPGCg==
events@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/events/-/events-3.0.0.tgz#9a0a0dfaf62893d92b875b8f2698ca4114973e88"
- integrity sha512-Dc381HFWJzEOhQ+d8pkNon++bk9h6cdAoAj4iE6Q4y6xgTzySWXlKn05/TVNpjnfRqi/X0EpJEJohPjNI3zpVA==
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/events/-/events-3.1.0.tgz#84279af1b34cb75aa88bf5ff291f6d0bd9b31a59"
+ integrity sha512-Rv+u8MLHNOdMjTAFeT3nCjHn2aGlx435FP/sDHNaRhDEMwyI/aB22Kj2qIN8R0cw3z28psEQLYwxVKLsKrMgWg==
eventsource@^1.0.7:
version "1.0.7"
@@ -5868,6 +5785,22 @@ execa@^1.0.0:
signal-exit "^3.0.0"
strip-eof "^1.0.0"
+execa@^3.2.0:
+ version "3.4.0"
+ resolved "https://registry.yarnpkg.com/execa/-/execa-3.4.0.tgz#c08ed4550ef65d858fac269ffc8572446f37eb89"
+ integrity sha512-r9vdGQk4bmCuK1yKQu1KTwcT2zwfWdbdaXfCtAh+5nU/4fSX+JAb7vZGvI5naJrQlvONrEB20jeruESI69530g==
+ dependencies:
+ cross-spawn "^7.0.0"
+ get-stream "^5.0.0"
+ human-signals "^1.1.1"
+ is-stream "^2.0.0"
+ merge-stream "^2.0.0"
+ npm-run-path "^4.0.0"
+ onetime "^5.1.0"
+ p-finally "^2.0.0"
+ signal-exit "^3.0.2"
+ strip-final-newline "^2.0.0"
+
exit@^0.1.2:
version "0.1.2"
resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c"
@@ -5905,6 +5838,18 @@ expect@^24.9.0:
jest-message-util "^24.9.0"
jest-regex-util "^24.9.0"
+expect@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/expect/-/expect-25.1.0.tgz#7e8d7b06a53f7d66ec927278db3304254ee683ee"
+ integrity sha512-wqHzuoapQkhc3OKPlrpetsfueuEiMf3iWh0R8+duCu9PIjXoP7HgD5aeypwTnXUAjC8aMsiVDaWwlbJ1RlQ38g==
+ dependencies:
+ "@jest/types" "^25.1.0"
+ ansi-styles "^4.0.0"
+ jest-get-type "^25.1.0"
+ jest-matcher-utils "^25.1.0"
+ jest-message-util "^25.1.0"
+ jest-regex-util "^25.1.0"
+
express@^4.17.0:
version "4.17.1"
resolved "https://registry.yarnpkg.com/express/-/express-4.17.1.tgz#4491fc38605cf51f8629d39c2b5d026f98a4c134"
@@ -6009,6 +5954,11 @@ fast-deep-equal@^2.0.1:
resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49"
integrity sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=
+fast-deep-equal@^3.1.1:
+ version "3.1.1"
+ resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz#545145077c501491e33b15ec408c294376e94ae4"
+ integrity sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==
+
fast-glob@^2.0.2, fast-glob@^2.2.2:
version "2.2.7"
resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-2.2.7.tgz#6953857c3afa475fff92ee6015d52da70a4cd39d"
@@ -6022,9 +5972,9 @@ fast-glob@^2.0.2, fast-glob@^2.2.2:
micromatch "^3.1.10"
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"
- integrity sha1-1RQsDK7msRifh9OnYREGT4bIu/I=
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
+ integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6:
version "2.0.6"
@@ -6037,11 +5987,11 @@ fastparse@^1.1.1:
integrity sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==
fault@^1.0.2:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/fault/-/fault-1.0.3.tgz#4da88cf979b6b792b4e13c7ec836767725170b7e"
- integrity sha512-sfFuP4X0hzrbGKjAUNXYvNqsZ5F6ohx/dZ9I0KQud/aiZNwg263r5L9yGB0clvXHCkzXh5W3t7RSHchggYIFmA==
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/fault/-/fault-1.0.4.tgz#eafcfc0a6d214fc94601e170df29954a4f842f13"
+ integrity sha512-CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA==
dependencies:
- format "^0.2.2"
+ format "^0.2.0"
faye-websocket@~0.11.1:
version "0.11.3"
@@ -6051,13 +6001,13 @@ faye-websocket@~0.11.1:
websocket-driver ">=0.5.1"
fb-watchman@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.0.tgz#54e9abf7dfa2f26cd9b1636c588c1afc05de5d58"
- integrity sha1-VOmr99+i8mzZsWNsWIwa/AXeXVg=
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.1.tgz#fc84fb39d2709cf3ff6d743706157bb5708a8a85"
+ integrity sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==
dependencies:
- bser "^2.0.0"
+ bser "2.1.1"
-fbjs@^0.8.0, fbjs@^0.8.4:
+fbjs@^0.8.4:
version "0.8.17"
resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.17.tgz#c4d598ead6949112653d6588b01a5cdcd9f90fdd"
integrity sha1-xNWY6taUkRJlPWWIsBpc3Nn5D90=
@@ -6075,10 +6025,10 @@ figgy-pudding@^3.5.1:
resolved "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.1.tgz#862470112901c727a0e495a80744bd5baa1d6790"
integrity sha512-vNKxJHTEKNThjfrdJwHc7brvM6eVevuO5nTj6ez8ZQ1qbXTvGthucRF7S4vf2cr71QVnT70V34v0S1DyQsti0w==
-figures@3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/figures/-/figures-3.0.0.tgz#756275c964646163cc6f9197c7a0295dbfd04de9"
- integrity sha512-HKri+WoWoUgr83pehn/SIgLOMZ9nAWC6dcGj26RY2R4F50u4+RTUz0RCrUlOV3nKRAICW1UGzyb+kcX2qK1S/g==
+figures@3.1.0, figures@^3.0.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/figures/-/figures-3.1.0.tgz#4b198dd07d8d71530642864af2d45dd9e459c4ec"
+ integrity sha512-ravh8VRXqHuMvZt/d8GblBeqDMkdJMBdv/2KntFH+ra5MXkO7nxNKpzQ3n6QD/2da1kH0aWmNISdvhM7gl2gVg==
dependencies:
escape-string-regexp "^1.0.5"
@@ -6089,13 +6039,6 @@ figures@^2.0.0:
dependencies:
escape-string-regexp "^1.0.5"
-figures@^3.0.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/figures/-/figures-3.1.0.tgz#4b198dd07d8d71530642864af2d45dd9e459c4ec"
- integrity sha512-ravh8VRXqHuMvZt/d8GblBeqDMkdJMBdv/2KntFH+ra5MXkO7nxNKpzQ3n6QD/2da1kH0aWmNISdvhM7gl2gVg==
- dependencies:
- escape-string-regexp "^1.0.5"
-
file-entry-cache@^5.0.1:
version "5.0.1"
resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-5.0.1.tgz#ca0f6efa6dd3d561333fb14515065c2fafdf439c"
@@ -6125,6 +6068,11 @@ file-system-cache@^1.0.5:
fs-extra "^0.30.0"
ramda "^0.21.0"
+file-uri-to-path@1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd"
+ integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==
+
filename-reserved-regex@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/filename-reserved-regex/-/filename-reserved-regex-1.0.0.tgz#e61cf805f0de1c984567d0386dc5df50ee5af7e4"
@@ -6191,16 +6139,7 @@ find-cache-dir@^2.0.0, find-cache-dir@^2.1.0:
make-dir "^2.0.0"
pkg-dir "^3.0.0"
-find-cache-dir@^3.0.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.1.0.tgz#9935894999debef4cf9f677fdf646d002c4cdecb"
- integrity sha512-zw+EFiNBNPgI2NTrKkDd1xd7q0cs6wr/iWnr/oUkI0yF9K9GqQ+riIt4aiyFaaqpaWbxPrJXHI+QvmNUQbX+0Q==
- dependencies:
- commondir "^1.0.1"
- make-dir "^3.0.0"
- pkg-dir "^4.1.0"
-
-find-cache-dir@^3.2.0:
+find-cache-dir@^3.0.0, find-cache-dir@^3.2.0:
version "3.2.0"
resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.2.0.tgz#e7fe44c1abc1299f516146e563108fd1006c1874"
integrity sha512-1JKclkYYsf1q9WIJKLZa9S9muC+08RIjzAlLrK4QcYLJMS6mk9yombQ9qf+zJ7H9LS800k0s44L4sDq9VYzqyg==
@@ -6286,12 +6225,12 @@ focus-lock@^0.6.6:
resolved "https://registry.yarnpkg.com/focus-lock/-/focus-lock-0.6.6.tgz#98119a755a38cfdbeda0280eaa77e307eee850c7"
integrity sha512-Dx69IXGCq1qsUExWuG+5wkiMqVM/zGx/reXSJSLogECwp3x6KeNQZ+NAetgxEFpnC41rD8U3+jRCW68+LNzdtw==
-follow-redirects@^1.2.3:
- version "1.9.0"
- resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.9.0.tgz#8d5bcdc65b7108fe1508649c79c12d732dcedb4f"
- integrity sha512-CRcPzsSIbXyVDl0QI01muNDu69S8trU4jArW9LpOt2WtC6LyUJetcIrmfHsRBx7/Jb6GHJUiuqyYxPooFfNt6A==
+follow-redirects@1.5.10:
+ version "1.5.10"
+ resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.5.10.tgz#7b7a9f9aea2fdff36786a94ff643ed07f4ff5e2a"
+ integrity sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==
dependencies:
- debug "^3.0.0"
+ debug "=3.1.0"
for-in@^0.1.3:
version "0.1.8"
@@ -6343,7 +6282,7 @@ form-data@~2.3.2:
combined-stream "^1.0.6"
mime-types "^2.1.12"
-format@^0.2.2:
+format@^0.2.0:
version "0.2.2"
resolved "https://registry.yarnpkg.com/format/-/format-0.2.2.tgz#d6170107e9efdc4ed30c9dc39016df942b5cb58b"
integrity sha1-1hcBB+nv3E7TDJ3DkBbflCtctYs=
@@ -6373,19 +6312,6 @@ from2@^2.1.0:
inherits "^2.0.1"
readable-stream "^2.0.0"
-frontend-collective-react-dnd-scrollzone@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/frontend-collective-react-dnd-scrollzone/-/frontend-collective-react-dnd-scrollzone-1.0.2.tgz#cf5ed6165335f7d26504a40126f8e972ee644698"
- integrity sha512-me/D9PZJq9j/sjEjs/OPmm6V6nbaHbhgeQiwrWu0t35lhwAOKWc+QBzzKKcZQeboYTkgE8UvCD9el+5ANp+g5Q==
- dependencies:
- hoist-non-react-statics "^3.1.0"
- lodash.throttle "^4.0.1"
- prop-types "^15.5.9"
- raf "^3.2.0"
- react "^16.3.0"
- react-display-name "^0.2.0"
- react-dom "^16.3.0"
-
fs-access@1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/fs-access/-/fs-access-1.0.1.tgz#d6a87f262271cefebec30c553407fb995da8777a"
@@ -6423,16 +6349,7 @@ fs-extra@^3.0.1:
jsonfile "^3.0.0"
universalify "^0.1.0"
-fs-extra@^7.0.0:
- version "7.0.1"
- resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.1.tgz#4f189c44aa123b895f722804f55ea23eadc348e9"
- integrity sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==
- dependencies:
- graceful-fs "^4.1.2"
- jsonfile "^4.0.0"
- universalify "^0.1.0"
-
-fs-extra@^8.0.1:
+fs-extra@^8.0.1, fs-extra@^8.1.0:
version "8.1.0"
resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0"
integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==
@@ -6441,13 +6358,6 @@ fs-extra@^8.0.1:
jsonfile "^4.0.0"
universalify "^0.1.0"
-fs-minipass@^1.2.5:
- version "1.2.7"
- resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7"
- integrity sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==
- dependencies:
- minipass "^2.6.0"
-
fs-minipass@^2.0.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb"
@@ -6476,29 +6386,24 @@ fs.realpath@^1.0.0:
integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8=
fsevents@^1.2.7:
- version "1.2.9"
- resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.9.tgz#3f5ed66583ccd6f400b5a00db6f7e861363e388f"
- integrity sha512-oeyj2H3EjjonWcFjD5NvZNE9Rqe4UW+nQBU2HNeKw0koVLEFIhtyETyAakeAM3de7Z/SW5kcA+fZUait9EApnw==
+ version "1.2.11"
+ resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.11.tgz#67bf57f4758f02ede88fb2a1712fef4d15358be3"
+ integrity sha512-+ux3lx6peh0BpvY0JebGyZoiR4D+oYzdPZMKJwkZ+sFkNJzpL7tXc/wehS49gUAxg3tmMHPHZkA8JU2rhhgDHw==
dependencies:
+ bindings "^1.5.0"
nan "^2.12.1"
- node-pre-gyp "^0.12.0"
-function-bind@^1.0.2, function-bind@^1.1.1:
+fsevents@^2.1.2:
+ version "2.1.2"
+ resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.2.tgz#4c0a1fb34bc68e543b4b82a9ec392bfbda840805"
+ integrity sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==
+
+function-bind@^1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
-function.prototype.name@^1.1.0, function.prototype.name@^1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.1.tgz#6d252350803085abc2ad423d4fe3be2f9cbda392"
- integrity sha512-e1NzkiJuw6xqVH7YSdiW/qDHebcmMhPNe6w+4ZYYEg0VA+LaLzx37RimbPLuonHhYGFGPx1ME2nSi74JiaCr/Q==
- dependencies:
- define-properties "^1.1.3"
- function-bind "^1.1.1"
- functions-have-names "^1.1.1"
- is-callable "^1.1.4"
-
-function.prototype.name@^1.1.2:
+function.prototype.name@^1.1.0, function.prototype.name@^1.1.1, function.prototype.name@^1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.2.tgz#5cdf79d7c05db401591dfde83e3b70c5123e9a45"
integrity sha512-C8A+LlHBJjB2AdcRPorc5JvJ5VUoWlXdEHLOJdCI7kjHEtGTpHQUiqMvCIKUwIsGwZX2jZJy761AXsn356bJQg==
@@ -6512,11 +6417,6 @@ functional-red-black-tree@^1.0.1:
resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327"
integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=
-functions-have-names@^1.1.1:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.0.tgz#83da7583e4ea0c9ac5ff530f73394b033e0bf77d"
- integrity sha512-zKXyzksTeaCSw5wIX79iCA40YAa6CJMJgNg9wdkU/ERBrIdPSimPICYiLp65lRbSBqtiHql/HZfS2DyI/AH6tQ==
-
functions-have-names@^1.2.0:
version "1.2.1"
resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.1.tgz#a981ac397fa0c9964551402cdc5533d7a4d52f91"
@@ -6541,12 +6441,12 @@ gauge@~2.7.3:
strip-ansi "^3.0.1"
wide-align "^1.1.0"
-generic-names@^1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/generic-names/-/generic-names-1.0.3.tgz#2d786a121aee508876796939e8e3bff836c20917"
- integrity sha1-LXhqEhruUIh2eWk56OO/+DbCCRc=
+generic-names@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/generic-names/-/generic-names-2.0.1.tgz#f8a378ead2ccaa7a34f0317b05554832ae41b872"
+ integrity sha512-kPCHWa1m9wGG/OwQpeweTwM/PYiQLrUIxXbt/P4Nic3LbGjCP0YwrALHW1uNLKZ0LIMg+RF+XRlj2ekT9ZlZAQ==
dependencies:
- loader-utils "^0.2.16"
+ loader-utils "^1.1.0"
genfun@^4.0.1:
version "4.0.1"
@@ -6601,6 +6501,13 @@ get-stream@^4.0.0:
dependencies:
pump "^3.0.0"
+get-stream@^5.0.0:
+ version "5.1.0"
+ resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.1.0.tgz#01203cdc92597f9b909067c3e656cc1f4d3c4dc9"
+ integrity sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw==
+ 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"
@@ -6613,19 +6520,17 @@ getpass@^0.1.1:
dependencies:
assert-plus "^1.0.0"
-gh-pages@^2.1.1:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/gh-pages/-/gh-pages-2.1.1.tgz#5be70a92f9cb70404bafabd8bb149c0e9a8c264b"
- integrity sha512-yNW2SFp9xGRP/8Sk2WXuLI/Gn92oOL4HBgudn6PsqAnuWT90Y1tozJoTfX1WdrDSW5Rb90kLVOf5mm9KJ/2fDw==
+gh-pages@^2.2.0:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/gh-pages/-/gh-pages-2.2.0.tgz#74ebeaca8d2b9a11279dcbd4a39ddfff3e6caa24"
+ integrity sha512-c+yPkNOPMFGNisYg9r4qvsMIjVYikJv7ImFOhPIVPt0+AcRUamZ7zkGRLHz7FKB0xrlZ+ddSOJsZv9XAFVXLmA==
dependencies:
async "^2.6.1"
commander "^2.18.0"
email-addresses "^3.0.1"
filenamify-url "^1.0.0"
- fs-extra "^7.0.0"
+ fs-extra "^8.1.0"
globby "^6.1.0"
- graceful-fs "^4.1.11"
- rimraf "^2.6.2"
git-branch@^1.0.0:
version "1.0.0"
@@ -6670,15 +6575,7 @@ git-repo-name@^0.6.0:
lazy-cache "^1.0.4"
remote-origin-url "^0.5.1"
-git-semver-tags@3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/git-semver-tags/-/git-semver-tags-3.0.0.tgz#fe10147824657662c82efd9341f0fa59f74ddcba"
- integrity sha512-T4C/gJ9k2Bnxz+PubtcyiMtUUKrC+Nh9Q4zaECcnmVMwJgPhrNyP/Rf+YpdRqsJbCV/+kYrCH24Xg+IeAmbOPg==
- dependencies:
- meow "^4.0.0"
- semver "^6.0.0"
-
-git-semver-tags@^3.0.0, git-semver-tags@^3.0.1:
+git-semver-tags@3.0.1, git-semver-tags@^3.0.1:
version "3.0.1"
resolved "https://registry.yarnpkg.com/git-semver-tags/-/git-semver-tags-3.0.1.tgz#9cb9e4974437de1f71f32da3bfe74f4d35afb1b9"
integrity sha512-Hzd1MOHXouITfCasrpVJbRDg9uvW7LfABk3GQmXYZByerBDrfrEMP9HXpNT7RxAbieiocP6u+xq20DkvjwxnCA==
@@ -6809,13 +6706,11 @@ globals@^12.1.0:
type-fest "^0.8.1"
globalthis@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.0.tgz#c5fb98213a9b4595f59cf3e7074f141b4169daae"
- integrity sha512-vcCAZTJ3r5Qcu5l8/2oyVdoFwxKgfYnMTR2vwWeux/NAVZK3PwcMaWkdUIn4GJbmKuRK7xcvDsLuK+CKcXyodg==
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.1.tgz#40116f5d9c071f9e8fb0037654df1ab3a83b7ef9"
+ integrity sha512-mJPRTc/P39NH/iNG4mXa9aIhNymaQikTrnspeCa2ZuJ+mH2QN/rXwtX3XwKrHqWgUQFbNZKtHM105aHzJalElw==
dependencies:
- define-properties "^1.1.2"
- function-bind "^1.1.1"
- object-keys "^1.0.12"
+ define-properties "^1.1.3"
globby@8.0.2:
version "8.0.2"
@@ -6865,7 +6760,7 @@ got@^6.7.1:
unzip-response "^2.0.1"
url-parse-lax "^1.0.0"
-graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.1.9, graceful-fs@^4.2.0, graceful-fs@^4.2.2:
+graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.1.9, graceful-fs@^4.2.0, graceful-fs@^4.2.2, graceful-fs@^4.2.3:
version "4.2.3"
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.3.tgz#4a12ff1b60376ef09862c2093edd908328be8423"
integrity sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==
@@ -6896,10 +6791,10 @@ gzip-size@5.1.1:
duplexer "^0.1.1"
pify "^4.0.1"
-handlebars@^4.1.2, handlebars@^4.4.0:
- version "4.5.1"
- resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.5.1.tgz#8a01c382c180272260d07f2d1aa3ae745715c7ba"
- integrity sha512-C29UoFzHe9yM61lOsIlCE5/mQVGrnIOrOq7maQl76L7tYPCgC1og0Ajt6uWnX4ZTxBPnjw+CUvawphwCfJgUnA==
+handlebars@^4.4.0:
+ version "4.7.3"
+ resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.3.tgz#8ece2797826886cf8082d1726ff21d2a022550ee"
+ integrity sha512-SRGwSYuNfx8DwHD/6InAPzD6RgeruWLT+B8e8a7gGs8FWgHzlExpTFMEq2IA6QpAfOClpKHy6+8IqTjeBCu6Kg==
dependencies:
neo-async "^2.6.0"
optimist "^0.6.1"
@@ -6912,7 +6807,7 @@ har-schema@^2.0.0:
resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92"
integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=
-har-validator@~5.1.0:
+har-validator@~5.1.3:
version "5.1.3"
resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.3.tgz#1ef89ebd3e4996557675eed9893110dc350fa080"
integrity sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==
@@ -6942,12 +6837,7 @@ has-flag@^4.0.0:
resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b"
integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==
-has-symbols@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44"
- integrity sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=
-
-has-symbols@^1.0.1:
+has-symbols@^1.0.0, has-symbols@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.1.tgz#9f5214758a44196c406d9bd76cebf81ec2dd31e8"
integrity sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==
@@ -7050,6 +6940,13 @@ hmac-drbg@^1.0.0:
minimalistic-assert "^1.0.0"
minimalistic-crypto-utils "^1.0.1"
+hoist-non-react-statics@3.x, hoist-non-react-statics@^3.3.0:
+ version "3.3.2"
+ resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45"
+ integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==
+ dependencies:
+ react-is "^16.7.0"
+
hoist-non-react-statics@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-1.2.0.tgz#aa448cf0986d55cc40773b17174b7dd066cb7cfb"
@@ -7060,13 +6957,6 @@ hoist-non-react-statics@^2.1.0:
resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-2.5.5.tgz#c5903cf409c0dfd908f388e619d86b9c1174cb47"
integrity sha512-rqcy4pJo55FTTLWt+bU8ukscqHeE/e9KWvsOW2b/a3afxQZhwkQdT1rPPCJ0rYXdj4vNcasY8zHTH+jF/qStxw==
-hoist-non-react-statics@^3.1.0, hoist-non-react-statics@^3.3.0:
- version "3.3.0"
- resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.0.tgz#b09178f0122184fb95acf525daaecb4d8f45958b"
- integrity sha512-0XsbTXxgiaCDYDIWFcwkmerZPSwywfUqYmwT4jzewKTQSWoE6FCMoUVOeBJWK3E/CrWbxRG3m5GzY4lnIwGRBA==
- dependencies:
- react-is "^16.7.0"
-
homedir-polyfill@^1.0.0:
version "1.0.3"
resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz#743298cef4e5af3e194161fbadcc2151d3a058e8"
@@ -7094,10 +6984,10 @@ html-comment-regex@^1.1.0:
resolved "https://registry.yarnpkg.com/html-comment-regex/-/html-comment-regex-1.1.2.tgz#97d4688aeb5c81886a364faa0cad1dda14d433a7"
integrity sha512-P+M65QY2JQ5Y0G9KKdlDpo0zK+/OHptU5AaBwUfAIDJZk1MYf32Frm84EcOytfJE0t5JvkAnKlmjsXDnWzCJmQ==
-html-element-map@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/html-element-map/-/html-element-map-1.1.0.tgz#e5aab9a834caf883b421f8bd9eaedcaac887d63c"
- integrity sha512-iqiG3dTZmy+uUaTmHarTL+3/A2VW9ox/9uasKEZC+R/wAtUrTcRlXPSaPqsnWPfIu8wqn09jQNwMRqzL54jSYA==
+html-element-map@^1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/html-element-map/-/html-element-map-1.2.0.tgz#dfbb09efe882806af63d990cf6db37993f099f22"
+ integrity sha512-0uXq8HsuG1v2TmQ8QkIhzbrqeskE4kn52Q18QJ9iAA/SnHoEKXWiUxHQtclRsCFWEUD2So34X+0+pZZu862nnw==
dependencies:
array-filter "^1.0.0"
@@ -7113,10 +7003,15 @@ html-entities@^1.2.0:
resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.2.1.tgz#0df29351f0721163515dfb9e5543e5f6eed5162f"
integrity sha1-DfKTUfByEWNRXfueVUPl9u7VFi8=
+html-escaper@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.0.tgz#71e87f931de3fe09e56661ab9a29aadec707b491"
+ integrity sha512-a4u9BeERWGu/S8JiWEAQcdrg9v4QArtP9keViQjGMdff20fBdd8waotXaNmODqBe6uZ3Nafi7K/ho4gCQHV3Ig==
+
html-minifier-terser@^5.0.1:
- version "5.0.2"
- resolved "https://registry.yarnpkg.com/html-minifier-terser/-/html-minifier-terser-5.0.2.tgz#0e67a0b062ae1dd0719fc73199479298f807ae16"
- integrity sha512-VAaitmbBuHaPKv9bj47XKypRhgDxT/cDLvsPiiF7w+omrN3K0eQhpigV9Z1ilrmHa9e0rOYcD6R/+LCDADGcnQ==
+ version "5.0.3"
+ resolved "https://registry.yarnpkg.com/html-minifier-terser/-/html-minifier-terser-5.0.3.tgz#b33549b57be7f0357be0d0b892995aaed1ed90f8"
+ integrity sha512-It4No3H1V3Dhd/O0MePFdo0oX/M6u6YZTMw4My/010mT6vxdbqge7+0RoxGAmeSbKok6gjYZoP0p4rpZ2+J2yw==
dependencies:
camel-case "^3.0.0"
clean-css "^4.2.1"
@@ -7231,6 +7126,11 @@ https-proxy-agent@^2.1.0:
agent-base "^4.3.0"
debug "^3.1.0"
+human-signals@^1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3"
+ integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==
+
humanize-ms@^1.2.1:
version "1.2.1"
resolved "https://registry.yarnpkg.com/humanize-ms/-/humanize-ms-1.2.1.tgz#c46e3159a293f6b896da29316d8b6fe8bb79bbed"
@@ -7251,7 +7151,7 @@ humps@^2.0.1:
resolved "https://registry.yarnpkg.com/humps/-/humps-2.0.1.tgz#dd02ea6081bd0568dc5d073184463957ba9ef9aa"
integrity sha1-3QLqYIG9BWjcXQcxhEY5V7qe+ao=
-iconv-lite@0.4.24, iconv-lite@^0.4.24, iconv-lite@^0.4.4, iconv-lite@~0.4.13:
+iconv-lite@0.4.24, 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"
integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==
@@ -7280,13 +7180,6 @@ iferr@^0.1.5:
resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501"
integrity sha1-xg7taebY/bazEEofy8ocGS3FtQE=
-ignore-walk@^3.0.1:
- version "3.0.3"
- resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.3.tgz#017e2447184bfeade7c238e4aefdd1e8f95b1e37"
- integrity sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw==
- dependencies:
- minimatch "^3.0.4"
-
ignore@^3.3.5:
version "3.3.10"
resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043"
@@ -7322,15 +7215,7 @@ import-fresh@^2.0.0:
caller-path "^2.0.0"
resolve-from "^3.0.0"
-import-fresh@^3.0.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.1.0.tgz#6d33fa1dcef6df930fae003446f33415af905118"
- integrity sha512-PpuksHKGt8rXfWEr9m9EHIpgyyaltBy8+eF6GJM0QCAxMgxCfucMF3mjecK2QsJr0amJW7gTqh5/wht0z2UhEQ==
- dependencies:
- parent-module "^1.0.0"
- resolve-from "^4.0.0"
-
-import-fresh@^3.1.0:
+import-fresh@^3.0.0, import-fresh@^3.1.0:
version "3.2.1"
resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.2.1.tgz#633ff618506e793af5ac91bf48b72677e15cbe66"
integrity sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==
@@ -7350,13 +7235,13 @@ import-lazy@^2.1.0:
resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-2.1.0.tgz#05698e3d45c88e8d7e9d92cb0584e77f096f3e43"
integrity sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=
-import-local@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/import-local/-/import-local-2.0.0.tgz#55070be38a5993cf18ef6db7e961f5bee5c5a09d"
- integrity sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==
+import-local@^3.0.2:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.0.2.tgz#a8cfd0431d1de4a2199703d003e3e62364fa6db6"
+ integrity sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==
dependencies:
- pkg-dir "^3.0.0"
- resolve-cwd "^2.0.0"
+ pkg-dir "^4.2.0"
+ resolve-cwd "^3.0.0"
imurmurhash@^0.1.4:
version "0.1.4"
@@ -7457,9 +7342,9 @@ inquirer@^6.2.2:
through "^2.3.6"
inquirer@^7.0.0:
- version "7.0.0"
- resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.0.0.tgz#9e2b032dde77da1db5db804758b8fea3a970519a"
- integrity sha512-rSdC7zelHdRQFkWnhsMu2+2SO41mpv2oF2zy4tMhmiLWkcKbOAs87fWAJhVXttKVwhdZvymvnuM95EyEXg2/tQ==
+ version "7.0.4"
+ resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.0.4.tgz#99af5bde47153abca23f5c7fc30db247f39da703"
+ integrity sha512-Bu5Td5+j11sCkqfqmUTiwv+tWisMtP0L7Q8WrqA2C/BbBhy1YTdFrvjjlrKq8oagA/tLQBski2Gcx/Sqyi2qSQ==
dependencies:
ansi-escapes "^4.2.1"
chalk "^2.4.2"
@@ -7470,7 +7355,7 @@ inquirer@^7.0.0:
lodash "^4.17.15"
mute-stream "0.0.8"
run-async "^2.2.0"
- rxjs "^6.4.0"
+ rxjs "^6.5.3"
string-width "^4.1.0"
strip-ansi "^5.1.0"
through "^2.3.6"
@@ -7501,6 +7386,11 @@ invariant@^2.0.0, invariant@^2.1.0, invariant@^2.2.2, invariant@^2.2.3, invarian
dependencies:
loose-envify "^1.0.0"
+ip-regex@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9"
+ integrity sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=
+
ip@^1.1.4, ip@^1.1.5:
version "1.1.5"
resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a"
@@ -7536,18 +7426,23 @@ is-accessor-descriptor@^1.0.0:
kind-of "^6.0.0"
is-alphabetical@^1.0.0:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/is-alphabetical/-/is-alphabetical-1.0.3.tgz#eb04cc47219a8895d8450ace4715abff2258a1f8"
- integrity sha512-eEMa6MKpHFzw38eKm56iNNi6GJ7lf6aLLio7Kr23sJPAECscgRtZvOBYybejWDQ2bM949Y++61PY+udzj5QMLA==
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/is-alphabetical/-/is-alphabetical-1.0.4.tgz#9e7d6b94916be22153745d184c298cbf986a686d"
+ integrity sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==
is-alphanumerical@^1.0.0:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/is-alphanumerical/-/is-alphanumerical-1.0.3.tgz#57ae21c374277b3defe0274c640a5704b8f6657c"
- integrity sha512-A1IGAPO5AW9vSh7omxIlOGwIqEvpW/TA+DksVOPM5ODuxKlZS09+TEM1E3275lJqO2oJ38vDpeAL3DCIiHE6eA==
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz#7eb9a2431f855f6b1ef1a78e326df515696c4dbf"
+ integrity sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==
dependencies:
is-alphabetical "^1.0.0"
is-decimal "^1.0.0"
+is-arguments@^1.0.4:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.0.4.tgz#3faf966c7cba0ff437fb31f6250082fcf0448cf3"
+ integrity sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==
+
is-arrayish@^0.2.1:
version "0.2.1"
resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
@@ -7565,22 +7460,22 @@ is-binary-path@^1.0.0:
dependencies:
binary-extensions "^1.0.0"
-is-boolean-object@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.0.0.tgz#98f8b28030684219a95f375cfbd88ce3405dff93"
- integrity sha1-mPiygDBoQhmpXzdc+9iM40Bd/5M=
+is-boolean-object@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.0.1.tgz#10edc0900dd127697a92f6f9807c7617d68ac48e"
+ integrity sha512-TqZuVwa/sppcrhUCAYkGBk7w0yxfQQnxq28fjkO53tnK9FQXmdwz2JS5+GjsWQ6RByES1K40nI+yDic5c9/aAQ==
is-buffer@^1.0.2, is-buffer@^1.1.5:
version "1.1.6"
resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==
-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-buffer@^2.0.2:
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.4.tgz#3e572f23c8411a5cfd9557c849e3665e0b290623"
+ integrity sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A==
-is-callable@^1.1.5:
+is-callable@^1.1.4, is-callable@^1.1.5:
version "1.1.5"
resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.5.tgz#f7e46b596890456db74e7f6e976cb3273d06faab"
integrity sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==
@@ -7626,14 +7521,14 @@ is-data-descriptor@^1.0.0:
kind-of "^6.0.0"
is-date-object@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16"
- integrity sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.2.tgz#bda736f2cd8fd06d32844e7743bfa7494c3bfd7e"
+ integrity sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==
is-decimal@^1.0.0:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/is-decimal/-/is-decimal-1.0.3.tgz#381068759b9dc807d8c0dc0bfbae2b68e1da48b7"
- integrity sha512-bvLSwoDg2q6Gf+E2LEPiklHZxxiSi3XAh4Mav65mKqTfCO1HM3uBs24TjEH8iJX3bbDdLXKJXBTmGzuTUuAEjQ==
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/is-decimal/-/is-decimal-1.0.4.tgz#65a3a5958a1c5b63a706e1b333d7cd9f630d3fa5"
+ integrity sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==
is-descriptor@^0.1.0:
version "0.1.6"
@@ -7658,6 +7553,11 @@ is-directory@^0.3.1:
resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1"
integrity sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=
+is-docker@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.0.0.tgz#2cb0df0e75e2d064fe1864c37cdeacb7b2dcf25b"
+ integrity sha512-pJEdRugimx4fBMra5z2/5iRdZ63OhYV0vr0Dwm5+xtW4D1FvRkB8hamMIhnWfyJeDdyr/aa7BDyNbtG38VxgoQ==
+
is-extendable@^0.1.0, is-extendable@^0.1.1:
version "0.1.1"
resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89"
@@ -7681,11 +7581,9 @@ is-extglob@^2.1.0, is-extglob@^2.1.1:
integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=
is-finite@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa"
- integrity sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=
- dependencies:
- number-is-nan "^1.0.0"
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.1.0.tgz#904135c77fb42c0641d6aa1bcdbc4daa8da082f3"
+ integrity sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==
is-fullwidth-code-point@^1.0.0:
version "1.0.0"
@@ -7736,9 +7634,9 @@ is-glob@^4.0.0, is-glob@^4.0.1:
is-extglob "^2.1.1"
is-hexadecimal@^1.0.0:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/is-hexadecimal/-/is-hexadecimal-1.0.3.tgz#e8a426a69b6d31470d3a33a47bb825cda02506ee"
- integrity sha512-zxQ9//Q3D/34poZf8fiy3m3XVpbQc7ren15iKqrTtLPwkPD/t3Scy9Imp63FujULGxuK0ZlCwoo5xNpktFgbOA==
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz#cc35c97588da4bd49a8eedd6bc4082d44dcb23a7"
+ integrity sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==
is-html@^1.1.0:
version "1.1.0"
@@ -7755,6 +7653,11 @@ is-installed-globally@^0.1.0:
global-dirs "^0.1.0"
is-path-inside "^1.0.0"
+is-map@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/is-map/-/is-map-2.0.1.tgz#520dafc4307bb8ebc33b813de5ce7c9400d644a1"
+ integrity sha512-T/S49scO8plUiAOA2DBTBG3JHpn1yiw0kRp6dgiZ0v2/6twi5eiB0rHtHFH9ZIrvlWc6+4O+m4zg5+Z833aXgw==
+
is-module@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/is-module/-/is-module-1.0.0.tgz#3258fb69f78c14d5b815d664336b4cffb6441591"
@@ -7765,10 +7668,10 @@ is-npm@^1.0.0:
resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-1.0.0.tgz#f2fb63a65e4905b406c86072765a1a4dc793b9f4"
integrity sha1-8vtjpl5JBbQGyGBydloaTceTufQ=
-is-number-object@^1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.3.tgz#f265ab89a9f445034ef6aff15a8f00b00f551799"
- integrity sha1-8mWrian0RQNO9q/xWo8AsA9VF5k=
+is-number-object@^1.0.4:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.4.tgz#36ac95e741cf18b283fc1ddf5e83da798e3ec197"
+ integrity sha512-zohwelOAur+5uXtk8O3GPQ1eAcu4ZX3UwxQhUlfFFMNpUd83gXgjbhJh6HmB6LUNV/ieOLQuDwJO3dWJosUeMw==
is-number@^3.0.0:
version "3.0.0"
@@ -7787,6 +7690,11 @@ is-obj@^1.0.0:
resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f"
integrity sha1-PkcprB9f3gJc19g6iW2rn09n2w8=
+is-obj@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982"
+ integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==
+
is-path-inside@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.1.tgz#8ef5b7de50437a3fdca6b4e865ef7aa55cb48036"
@@ -7830,14 +7738,7 @@ is-reference@^1.1.2:
dependencies:
"@types/estree" "0.0.39"
-is-regex@^1.0.4:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491"
- integrity sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=
- dependencies:
- has "^1.0.1"
-
-is-regex@^1.0.5:
+is-regex@^1.0.4, is-regex@^1.0.5:
version "1.0.5"
resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.5.tgz#39d589a358bf18967f726967120b8fc1aed74eae"
integrity sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==
@@ -7859,15 +7760,25 @@ is-root@2.1.0:
resolved "https://registry.yarnpkg.com/is-root/-/is-root-2.1.0.tgz#809e18129cf1129644302a4f8544035d51984a9c"
integrity sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==
+is-set@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/is-set/-/is-set-2.0.1.tgz#d1604afdab1724986d30091575f54945da7e5f43"
+ integrity sha512-eJEzOtVyenDs1TMzSQ3kU3K+E0GUS9sno+F0OBT97xsgcJsF9nXMBtkT9/kut5JEpM7oL7X/0qxR17K3mcwIAA==
+
is-stream@^1.0.0, is-stream@^1.0.1, is-stream@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"
integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ=
-is-string@^1.0.4:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.4.tgz#cc3a9b69857d621e963725a24caeec873b826e64"
- integrity sha1-zDqbaYV9Yh6WNyWiTK7shzuCbmQ=
+is-stream@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.0.tgz#bde9c32680d6fae04129d6ac9d921ce7815f78e3"
+ integrity sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==
+
+is-string@^1.0.4, is-string@^1.0.5:
+ version "1.0.5"
+ resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.5.tgz#40493ed198ef3ff477b8c7f92f644ec82a5cd3a6"
+ integrity sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==
is-subset@^0.1.1:
version "0.1.1"
@@ -7881,14 +7792,7 @@ is-svg@^3.0.0:
dependencies:
html-comment-regex "^1.1.0"
-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-symbol@^1.0.3:
+is-symbol@^1.0.2, is-symbol@^1.0.3:
version "1.0.3"
resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.3.tgz#38e1014b9e6329be0de9d24a414fd7441ec61937"
integrity sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==
@@ -7902,7 +7806,7 @@ is-text-path@^1.0.1:
dependencies:
text-extensions "^1.0.0"
-is-typedarray@~1.0.0:
+is-typedarray@^1.0.0, is-typedarray@~1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=
@@ -7932,7 +7836,7 @@ is-wsl@^1.1.0:
resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d"
integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=
-is-wsl@^2.1.0:
+is-wsl@^2.1.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.1.1.tgz#4a1c152d429df3d441669498e2486d3596ebaf1d"
integrity sha512-umZHcSrwlDHo2TGMXv0DZ8dIUGunZ2Iv68YZnrmCiBPkZ4aaOhtv7pXJKeki9k3qJ3RJr0cDyitcl5wEH3AYog==
@@ -7947,6 +7851,11 @@ isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0:
resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=
+isarray@^2.0.5:
+ version "2.0.5"
+ resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723"
+ integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==
+
isexe@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
@@ -7982,12 +7891,17 @@ isstream@~0.1.2:
resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"
integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=
-istanbul-lib-coverage@^2.0.2, istanbul-lib-coverage@^2.0.5:
+istanbul-lib-coverage@^2.0.5:
version "2.0.5"
resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz#675f0ab69503fad4b1d849f736baaca803344f49"
integrity sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==
-istanbul-lib-instrument@^3.0.1, istanbul-lib-instrument@^3.3.0:
+istanbul-lib-coverage@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz#f5944a37c70b550b02a78a5c3b2055b280cec8ec"
+ integrity sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==
+
+istanbul-lib-instrument@^3.3.0:
version "3.3.0"
resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz#a5f63d91f0bbc0c3e479ef4c5de027335ec6d630"
integrity sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA==
@@ -8000,94 +7914,119 @@ istanbul-lib-instrument@^3.0.1, istanbul-lib-instrument@^3.3.0:
istanbul-lib-coverage "^2.0.5"
semver "^6.0.0"
-istanbul-lib-report@^2.0.4:
- version "2.0.8"
- resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz#5a8113cd746d43c4889eba36ab10e7d50c9b4f33"
- integrity sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ==
+istanbul-lib-instrument@^4.0.0:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.1.tgz#61f13ac2c96cfefb076fe7131156cc05907874e6"
+ integrity sha512-imIchxnodll7pvQBYOqUu88EufLCU56LMeFPZZM/fJZ1irYcYdqroaV+ACK1Ila8ls09iEYArp+nqyC6lW1Vfg==
dependencies:
- istanbul-lib-coverage "^2.0.5"
- make-dir "^2.1.0"
- supports-color "^6.1.0"
+ "@babel/core" "^7.7.5"
+ "@babel/parser" "^7.7.5"
+ "@babel/template" "^7.7.4"
+ "@babel/traverse" "^7.7.4"
+ "@istanbuljs/schema" "^0.1.2"
+ istanbul-lib-coverage "^3.0.0"
+ semver "^6.3.0"
-istanbul-lib-source-maps@^3.0.1:
- version "3.0.6"
- resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz#284997c48211752ec486253da97e3879defba8c8"
- integrity sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==
+istanbul-lib-report@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6"
+ integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==
+ dependencies:
+ istanbul-lib-coverage "^3.0.0"
+ make-dir "^3.0.0"
+ supports-color "^7.1.0"
+
+istanbul-lib-source-maps@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz#75743ce6d96bb86dc7ee4352cf6366a23f0b1ad9"
+ integrity sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==
dependencies:
debug "^4.1.1"
- istanbul-lib-coverage "^2.0.5"
- make-dir "^2.1.0"
- rimraf "^2.6.3"
+ istanbul-lib-coverage "^3.0.0"
source-map "^0.6.1"
-istanbul-reports@^2.2.6:
- version "2.2.6"
- resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-2.2.6.tgz#7b4f2660d82b29303a8fe6091f8ca4bf058da1af"
- integrity sha512-SKi4rnMyLBKe0Jy2uUdx28h8oG7ph2PPuQPvIAh31d+Ci+lSiEu4C+h3oBPuJ9+mPKhOyW0M8gY4U5NM1WLeXA==
+istanbul-reports@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.0.0.tgz#d4d16d035db99581b6194e119bbf36c963c5eb70"
+ integrity sha512-2osTcC8zcOSUkImzN2EWQta3Vdi4WjjKw99P2yWx5mLnigAM0Rd5uYFn1cf2i/Ois45GkNjaoTqc5CxgMSX80A==
dependencies:
- handlebars "^4.1.2"
+ html-escaper "^2.0.0"
+ istanbul-lib-report "^3.0.0"
istextorbinary@^2.2.1:
- version "2.5.1"
- resolved "https://registry.yarnpkg.com/istextorbinary/-/istextorbinary-2.5.1.tgz#14a33824cf6b9d5d7743eac1be2bd2c310d0ccbd"
- integrity sha512-pv/JNPWnfpwGjPx7JrtWTwsWsxkrK3fNzcEVnt92YKEIErps4Fsk49+qzCe9iQF2hjqK8Naqf8P9kzoeCuQI1g==
+ version "2.6.0"
+ resolved "https://registry.yarnpkg.com/istextorbinary/-/istextorbinary-2.6.0.tgz#60776315fb0fa3999add276c02c69557b9ca28ab"
+ integrity sha512-+XRlFseT8B3L9KyjxxLjfXSLMuErKDsd8DBNrsaxoViABMEZlOSCstwmw0qpoFX3+U6yWU1yhLudAe6/lETGGA==
dependencies:
binaryextensions "^2.1.2"
- editions "^2.1.3"
- textextensions "^2.4.0"
+ editions "^2.2.0"
+ textextensions "^2.5.0"
-jest-changed-files@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-24.9.0.tgz#08d8c15eb79a7fa3fc98269bc14b451ee82f8039"
- integrity sha512-6aTWpe2mHF0DhL28WjdkO8LyGjs3zItPET4bMSeXU6T3ub4FPMw+mcOcbdGXQOAfmLcxofD23/5Bl9Z4AkFwqg==
+iterate-iterator@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/iterate-iterator/-/iterate-iterator-1.0.1.tgz#1693a768c1ddd79c969051459453f082fe82e9f6"
+ integrity sha512-3Q6tudGN05kbkDQDI4CqjaBf4qf85w6W6GnuZDtUVYwKgtC1q8yxYX7CZed7N+tLzQqS6roujWvszf13T+n9aw==
+
+iterate-value@^1.0.0:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/iterate-value/-/iterate-value-1.0.2.tgz#935115bd37d006a52046535ebc8d07e9c9337f57"
+ integrity sha512-A6fMAio4D2ot2r/TYzr4yUWrmwNdsN5xL7+HUiyACE4DXm+q8HtPcnFTp+NnW3k4N05tZ7FVYFFb2CR13NxyHQ==
dependencies:
- "@jest/types" "^24.9.0"
- execa "^1.0.0"
- throat "^4.0.0"
+ es-get-iterator "^1.0.2"
+ iterate-iterator "^1.0.1"
-jest-cli@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-24.9.0.tgz#ad2de62d07472d419c6abc301fc432b98b10d2af"
- integrity sha512-+VLRKyitT3BWoMeSUIHRxV/2g8y9gw91Jh5z2UmXZzkZKpbC08CSehVxgHUwTpy+HwGcns/tqafQDJW7imYvGg==
+jest-changed-files@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-25.1.0.tgz#73dae9a7d9949fdfa5c278438ce8f2ff3ec78131"
+ integrity sha512-bdL1aHjIVy3HaBO3eEQeemGttsq1BDlHgWcOjEOIAcga7OOEGWHD2WSu8HhL7I1F0mFFyci8VKU4tRNk+qtwDA==
dependencies:
- "@jest/core" "^24.9.0"
- "@jest/test-result" "^24.9.0"
- "@jest/types" "^24.9.0"
- chalk "^2.0.1"
+ "@jest/types" "^25.1.0"
+ execa "^3.2.0"
+ throat "^5.0.0"
+
+jest-cli@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-25.1.0.tgz#75f0b09cf6c4f39360906bf78d580be1048e4372"
+ integrity sha512-p+aOfczzzKdo3AsLJlhs8J5EW6ffVidfSZZxXedJ0mHPBOln1DccqFmGCoO8JWd4xRycfmwy1eoQkMsF8oekPg==
+ dependencies:
+ "@jest/core" "^25.1.0"
+ "@jest/test-result" "^25.1.0"
+ "@jest/types" "^25.1.0"
+ chalk "^3.0.0"
exit "^0.1.2"
- import-local "^2.0.0"
+ import-local "^3.0.2"
is-ci "^2.0.0"
- jest-config "^24.9.0"
- jest-util "^24.9.0"
- jest-validate "^24.9.0"
+ jest-config "^25.1.0"
+ jest-util "^25.1.0"
+ jest-validate "^25.1.0"
prompts "^2.0.1"
realpath-native "^1.1.0"
- yargs "^13.3.0"
+ yargs "^15.0.0"
-jest-config@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-24.9.0.tgz#fb1bbc60c73a46af03590719efa4825e6e4dd1b5"
- integrity sha512-RATtQJtVYQrp7fvWg6f5y3pEFj9I+H8sWw4aKxnDZ96mob5i5SD6ZEGWgMLXQ4LE8UurrjbdlLWdUeo+28QpfQ==
+jest-config@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-25.1.0.tgz#d114e4778c045d3ef239452213b7ad3ec1cbea90"
+ integrity sha512-tLmsg4SZ5H7tuhBC5bOja0HEblM0coS3Wy5LTCb2C8ZV6eWLewHyK+3qSq9Bi29zmWQ7ojdCd3pxpx4l4d2uGw==
dependencies:
"@babel/core" "^7.1.0"
- "@jest/test-sequencer" "^24.9.0"
- "@jest/types" "^24.9.0"
- babel-jest "^24.9.0"
- chalk "^2.0.1"
+ "@jest/test-sequencer" "^25.1.0"
+ "@jest/types" "^25.1.0"
+ babel-jest "^25.1.0"
+ chalk "^3.0.0"
glob "^7.1.1"
- jest-environment-jsdom "^24.9.0"
- jest-environment-node "^24.9.0"
- jest-get-type "^24.9.0"
- jest-jasmine2 "^24.9.0"
- jest-regex-util "^24.3.0"
- jest-resolve "^24.9.0"
- jest-util "^24.9.0"
- jest-validate "^24.9.0"
- micromatch "^3.1.10"
- pretty-format "^24.9.0"
+ jest-environment-jsdom "^25.1.0"
+ jest-environment-node "^25.1.0"
+ jest-get-type "^25.1.0"
+ jest-jasmine2 "^25.1.0"
+ jest-regex-util "^25.1.0"
+ jest-resolve "^25.1.0"
+ jest-util "^25.1.0"
+ jest-validate "^25.1.0"
+ micromatch "^4.0.2"
+ pretty-format "^25.1.0"
realpath-native "^1.1.0"
-jest-diff@^24.9.0:
+jest-diff@^24.3.0, jest-diff@^24.9.0:
version "24.9.0"
resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-24.9.0.tgz#931b7d0d5778a1baf7452cb816e325e3724055da"
integrity sha512-qMfrTs8AdJE2iqrTp0hzh7kTd2PQWrsFyj9tORoKmu32xjPjeE4NyjVRDz8ybYwqS2ik8N4hsIpiVTyFeo2lBQ==
@@ -8097,23 +8036,33 @@ jest-diff@^24.9.0:
jest-get-type "^24.9.0"
pretty-format "^24.9.0"
-jest-docblock@^24.3.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-24.9.0.tgz#7970201802ba560e1c4092cc25cbedf5af5a8ce2"
- integrity sha512-F1DjdpDMJMA1cN6He0FNYNZlo3yYmOtRUnktrT9Q37njYzC5WEaDdmbynIgy0L/IvXvvgsG8OsqhLPXTpfmZAA==
+jest-diff@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-25.1.0.tgz#58b827e63edea1bc80c1de952b80cec9ac50e1ad"
+ integrity sha512-nepXgajT+h017APJTreSieh4zCqnSHEJ1iT8HDlewu630lSJ4Kjjr9KNzm+kzGwwcpsDE6Snx1GJGzzsefaEHw==
dependencies:
- detect-newline "^2.1.0"
+ chalk "^3.0.0"
+ diff-sequences "^25.1.0"
+ jest-get-type "^25.1.0"
+ pretty-format "^25.1.0"
-jest-each@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-24.9.0.tgz#eb2da602e2a610898dbc5f1f6df3ba86b55f8b05"
- integrity sha512-ONi0R4BvW45cw8s2Lrx8YgbeXL1oCQ/wIDwmsM3CqM/nlblNCPmnC3IPQlMbRFZu3wKdQ2U8BqM6lh3LJ5Bsog==
+jest-docblock@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-25.1.0.tgz#0f44bea3d6ca6dfc38373d465b347c8818eccb64"
+ integrity sha512-370P/mh1wzoef6hUKiaMcsPtIapY25suP6JqM70V9RJvdKLrV4GaGbfUseUVk4FZJw4oTZ1qSCJNdrClKt5JQA==
dependencies:
- "@jest/types" "^24.9.0"
- chalk "^2.0.1"
- jest-get-type "^24.9.0"
- jest-util "^24.9.0"
- pretty-format "^24.9.0"
+ detect-newline "^3.0.0"
+
+jest-each@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-25.1.0.tgz#a6b260992bdf451c2d64a0ccbb3ac25e9b44c26a"
+ integrity sha512-R9EL8xWzoPySJ5wa0DXFTj7NrzKpRD40Jy+zQDp3Qr/2QmevJgkN9GqioCGtAJ2bW9P/MQRznQHQQhoeAyra7A==
+ dependencies:
+ "@jest/types" "^25.1.0"
+ chalk "^3.0.0"
+ jest-get-type "^25.1.0"
+ jest-util "^25.1.0"
+ pretty-format "^25.1.0"
jest-environment-enzyme@^7.1.2:
version "7.1.2"
@@ -8122,7 +8071,7 @@ jest-environment-enzyme@^7.1.2:
dependencies:
jest-environment-jsdom "^24.0.0"
-jest-environment-jsdom@^24.0.0, jest-environment-jsdom@^24.9.0:
+jest-environment-jsdom@^24.0.0:
version "24.9.0"
resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-24.9.0.tgz#4b0806c7fc94f95edb369a69cc2778eec2b7375b"
integrity sha512-Zv9FV9NBRzLuALXjvRijO2351DRQeLYXtpD4xNvfoVFw21IOKNhZAEUKcbiEtjTkm2GsJ3boMVgkaR7rN8qetA==
@@ -8134,16 +8083,28 @@ jest-environment-jsdom@^24.0.0, jest-environment-jsdom@^24.9.0:
jest-util "^24.9.0"
jsdom "^11.5.1"
-jest-environment-node@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-24.9.0.tgz#333d2d2796f9687f2aeebf0742b519f33c1cbfd3"
- integrity sha512-6d4V2f4nxzIzwendo27Tr0aFm+IXWa0XEUnaH6nU0FMaozxovt+sfRvh4J47wL1OvF83I3SSTu0XK+i4Bqe7uA==
- dependencies:
- "@jest/environment" "^24.9.0"
- "@jest/fake-timers" "^24.9.0"
- "@jest/types" "^24.9.0"
- jest-mock "^24.9.0"
- jest-util "^24.9.0"
+jest-environment-jsdom@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-25.1.0.tgz#6777ab8b3e90fd076801efd3bff8e98694ab43c3"
+ integrity sha512-ILb4wdrwPAOHX6W82GGDUiaXSSOE274ciuov0lztOIymTChKFtC02ddyicRRCdZlB5YSrv3vzr1Z5xjpEe1OHQ==
+ dependencies:
+ "@jest/environment" "^25.1.0"
+ "@jest/fake-timers" "^25.1.0"
+ "@jest/types" "^25.1.0"
+ jest-mock "^25.1.0"
+ jest-util "^25.1.0"
+ jsdom "^15.1.1"
+
+jest-environment-node@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-25.1.0.tgz#797bd89b378cf0bd794dc8e3dca6ef21126776db"
+ integrity sha512-U9kFWTtAPvhgYY5upnH9rq8qZkj6mYLup5l1caAjjx9uNnkLHN2xgZy5mo4SyLdmrh/EtB9UPpKFShvfQHD0Iw==
+ dependencies:
+ "@jest/environment" "^25.1.0"
+ "@jest/fake-timers" "^25.1.0"
+ "@jest/types" "^25.1.0"
+ jest-mock "^25.1.0"
+ jest-util "^25.1.0"
jest-enzyme@^7.1.2:
version "7.1.2"
@@ -8159,6 +8120,11 @@ jest-get-type@^24.9.0:
resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-24.9.0.tgz#1684a0c8a50f2e4901b6644ae861f579eed2ef0e"
integrity sha512-lUseMzAley4LhIcpSP9Jf+fTrQ4a1yHQwLNeeVa2cEmbCGeoZAtYPOIv8JaxLD/sUpKxetKGP+gsHl8f8TSj8Q==
+jest-get-type@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-25.1.0.tgz#1cfe5fc34f148dc3a8a3b7275f6b9ce9e2e8a876"
+ integrity sha512-yWkBnT+5tMr8ANB6V+OjmrIJufHtCAqI5ic2H40v+tRqxDmE0PGnIiTyvRWFOMtmVHYpwRqyazDbTnhpjsGvLw==
+
jest-haste-map@^24.9.0:
version "24.9.0"
resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-24.9.0.tgz#b38a5d64274934e21fa417ae9a9fbeb77ceaac7d"
@@ -8178,35 +8144,54 @@ jest-haste-map@^24.9.0:
optionalDependencies:
fsevents "^1.2.7"
-jest-jasmine2@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-24.9.0.tgz#1f7b1bd3242c1774e62acabb3646d96afc3be6a0"
- integrity sha512-Cq7vkAgaYKp+PsX+2/JbTarrk0DmNhsEtqBXNwUHkdlbrTBLtMJINADf2mf5FkowNsq8evbPc07/qFO0AdKTzw==
+jest-haste-map@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-25.1.0.tgz#ae12163d284f19906260aa51fd405b5b2e5a4ad3"
+ integrity sha512-/2oYINIdnQZAqyWSn1GTku571aAfs8NxzSErGek65Iu5o8JYb+113bZysRMcC/pjE5v9w0Yz+ldbj9NxrFyPyw==
+ dependencies:
+ "@jest/types" "^25.1.0"
+ anymatch "^3.0.3"
+ fb-watchman "^2.0.0"
+ graceful-fs "^4.2.3"
+ jest-serializer "^25.1.0"
+ jest-util "^25.1.0"
+ jest-worker "^25.1.0"
+ micromatch "^4.0.2"
+ sane "^4.0.3"
+ walker "^1.0.7"
+ optionalDependencies:
+ fsevents "^2.1.2"
+
+jest-jasmine2@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-25.1.0.tgz#681b59158a430f08d5d0c1cce4f01353e4b48137"
+ integrity sha512-GdncRq7jJ7sNIQ+dnXvpKO2MyP6j3naNK41DTTjEAhLEdpImaDA9zSAZwDhijjSF/D7cf4O5fdyUApGBZleaEg==
dependencies:
"@babel/traverse" "^7.1.0"
- "@jest/environment" "^24.9.0"
- "@jest/test-result" "^24.9.0"
- "@jest/types" "^24.9.0"
- chalk "^2.0.1"
+ "@jest/environment" "^25.1.0"
+ "@jest/source-map" "^25.1.0"
+ "@jest/test-result" "^25.1.0"
+ "@jest/types" "^25.1.0"
+ chalk "^3.0.0"
co "^4.6.0"
- expect "^24.9.0"
+ expect "^25.1.0"
is-generator-fn "^2.0.0"
- jest-each "^24.9.0"
- jest-matcher-utils "^24.9.0"
- jest-message-util "^24.9.0"
- jest-runtime "^24.9.0"
- jest-snapshot "^24.9.0"
- jest-util "^24.9.0"
- pretty-format "^24.9.0"
- throat "^4.0.0"
-
-jest-leak-detector@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-24.9.0.tgz#b665dea7c77100c5c4f7dfcb153b65cf07dcf96a"
- integrity sha512-tYkFIDsiKTGwb2FG1w8hX9V0aUb2ot8zY/2nFg087dUageonw1zrLMP4W6zsRO59dPkTSKie+D4rhMuP9nRmrA==
- dependencies:
- jest-get-type "^24.9.0"
- pretty-format "^24.9.0"
+ jest-each "^25.1.0"
+ jest-matcher-utils "^25.1.0"
+ jest-message-util "^25.1.0"
+ jest-runtime "^25.1.0"
+ jest-snapshot "^25.1.0"
+ jest-util "^25.1.0"
+ pretty-format "^25.1.0"
+ throat "^5.0.0"
+
+jest-leak-detector@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-25.1.0.tgz#ed6872d15aa1c72c0732d01bd073dacc7c38b5c6"
+ integrity sha512-3xRI264dnhGaMHRvkFyEKpDeaRzcEBhyNrOG5oT8xPxOyUAblIAQnpiR3QXu4wDor47MDTiHbiFcbypdLcLW5w==
+ dependencies:
+ jest-get-type "^25.1.0"
+ pretty-format "^25.1.0"
jest-matcher-utils@^24.9.0:
version "24.9.0"
@@ -8218,6 +8203,16 @@ jest-matcher-utils@^24.9.0:
jest-get-type "^24.9.0"
pretty-format "^24.9.0"
+jest-matcher-utils@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-25.1.0.tgz#fa5996c45c7193a3c24e73066fc14acdee020220"
+ integrity sha512-KGOAFcSFbclXIFE7bS4C53iYobKI20ZWleAdAFun4W1Wz1Kkej8Ng6RRbhL8leaEvIOjGXhGf/a1JjO8bkxIWQ==
+ dependencies:
+ chalk "^3.0.0"
+ jest-diff "^25.1.0"
+ jest-get-type "^25.1.0"
+ pretty-format "^25.1.0"
+
jest-message-util@^24.9.0:
version "24.9.0"
resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-24.9.0.tgz#527f54a1e380f5e202a8d1149b0ec872f43119e3"
@@ -8232,6 +8227,20 @@ jest-message-util@^24.9.0:
slash "^2.0.0"
stack-utils "^1.0.1"
+jest-message-util@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-25.1.0.tgz#702a9a5cb05c144b9aa73f06e17faa219389845e"
+ integrity sha512-Nr/Iwar2COfN22aCqX0kCVbXgn8IBm9nWf4xwGr5Olv/KZh0CZ32RKgZWMVDXGdOahicM10/fgjdimGNX/ttCQ==
+ dependencies:
+ "@babel/code-frame" "^7.0.0"
+ "@jest/test-result" "^25.1.0"
+ "@jest/types" "^25.1.0"
+ "@types/stack-utils" "^1.0.1"
+ chalk "^3.0.0"
+ micromatch "^4.0.2"
+ slash "^3.0.0"
+ stack-utils "^1.0.1"
+
jest-mock@^24.9.0:
version "24.9.0"
resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-24.9.0.tgz#c22835541ee379b908673ad51087a2185c13f1c6"
@@ -8239,24 +8248,36 @@ jest-mock@^24.9.0:
dependencies:
"@jest/types" "^24.9.0"
+jest-mock@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-25.1.0.tgz#411d549e1b326b7350b2e97303a64715c28615fd"
+ integrity sha512-28/u0sqS+42vIfcd1mlcg4ZVDmSUYuNvImP4X2lX5hRMLW+CN0BeiKVD4p+ujKKbSPKd3rg/zuhCF+QBLJ4vag==
+ dependencies:
+ "@jest/types" "^25.1.0"
+
jest-pnp-resolver@^1.2.1:
version "1.2.1"
resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.1.tgz#ecdae604c077a7fbc70defb6d517c3c1c898923a"
integrity sha512-pgFw2tm54fzgYvc/OHrnysABEObZCUNFnhjoRjaVOCN8NYc032/gVjPaHD4Aq6ApkSieWtfKAFQtmDKAmhupnQ==
-jest-regex-util@^24.3.0, jest-regex-util@^24.9.0:
+jest-regex-util@^24.9.0:
version "24.9.0"
resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-24.9.0.tgz#c13fb3380bde22bf6575432c493ea8fe37965636"
integrity sha512-05Cmb6CuxaA+Ys6fjr3PhvV3bGQmO+2p2La4hFbU+W5uOc479f7FdLXUWXw4pYMAhhSZIuKHwSXSu6CsSBAXQA==
-jest-resolve-dependencies@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-24.9.0.tgz#ad055198959c4cfba8a4f066c673a3f0786507ab"
- integrity sha512-Fm7b6AlWnYhT0BXy4hXpactHIqER7erNgIsIozDXWl5dVm+k8XdGVe1oTg1JyaFnOxarMEbax3wyRJqGP2Pq+g==
+jest-regex-util@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-25.1.0.tgz#efaf75914267741838e01de24da07b2192d16d87"
+ integrity sha512-9lShaDmDpqwg+xAd73zHydKrBbbrIi08Kk9YryBEBybQFg/lBWR/2BDjjiSE7KIppM9C5+c03XiDaZ+m4Pgs1w==
+
+jest-resolve-dependencies@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-25.1.0.tgz#8a1789ec64eb6aaa77fd579a1066a783437e70d2"
+ integrity sha512-Cu/Je38GSsccNy4I2vL12ZnBlD170x2Oh1devzuM9TLH5rrnLW1x51lN8kpZLYTvzx9j+77Y5pqBaTqfdzVzrw==
dependencies:
- "@jest/types" "^24.9.0"
- jest-regex-util "^24.3.0"
- jest-snapshot "^24.9.0"
+ "@jest/types" "^25.1.0"
+ jest-regex-util "^25.1.0"
+ jest-snapshot "^25.1.0"
jest-resolve@^24.9.0:
version "24.9.0"
@@ -8269,66 +8290,84 @@ jest-resolve@^24.9.0:
jest-pnp-resolver "^1.2.1"
realpath-native "^1.1.0"
-jest-runner@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-24.9.0.tgz#574fafdbd54455c2b34b4bdf4365a23857fcdf42"
- integrity sha512-KksJQyI3/0mhcfspnxxEOBueGrd5E4vV7ADQLT9ESaCzz02WnbdbKWIf5Mkaucoaj7obQckYPVX6JJhgUcoWWg==
+jest-resolve@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-25.1.0.tgz#23d8b6a4892362baf2662877c66aa241fa2eaea3"
+ integrity sha512-XkBQaU1SRCHj2Evz2Lu4Czs+uIgJXWypfO57L7JYccmAXv4slXA6hzNblmcRmf7P3cQ1mE7fL3ABV6jAwk4foQ==
dependencies:
- "@jest/console" "^24.7.1"
- "@jest/environment" "^24.9.0"
- "@jest/test-result" "^24.9.0"
- "@jest/types" "^24.9.0"
- chalk "^2.4.2"
- exit "^0.1.2"
- graceful-fs "^4.1.15"
- jest-config "^24.9.0"
- jest-docblock "^24.3.0"
- jest-haste-map "^24.9.0"
- jest-jasmine2 "^24.9.0"
- jest-leak-detector "^24.9.0"
- jest-message-util "^24.9.0"
- jest-resolve "^24.9.0"
- jest-runtime "^24.9.0"
- jest-util "^24.9.0"
- jest-worker "^24.6.0"
- source-map-support "^0.5.6"
- throat "^4.0.0"
+ "@jest/types" "^25.1.0"
+ browser-resolve "^1.11.3"
+ chalk "^3.0.0"
+ jest-pnp-resolver "^1.2.1"
+ realpath-native "^1.1.0"
-jest-runtime@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-24.9.0.tgz#9f14583af6a4f7314a6a9d9f0226e1a781c8e4ac"
- integrity sha512-8oNqgnmF3v2J6PVRM2Jfuj8oX3syKmaynlDMMKQ4iyzbQzIG6th5ub/lM2bCMTmoTKM3ykcUYI2Pw9xwNtjMnw==
+jest-runner@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-25.1.0.tgz#fef433a4d42c89ab0a6b6b268e4a4fbe6b26e812"
+ integrity sha512-su3O5fy0ehwgt+e8Wy7A8CaxxAOCMzL4gUBftSs0Ip32S0epxyZPDov9Znvkl1nhVOJNf4UwAsnqfc3plfQH9w==
dependencies:
- "@jest/console" "^24.7.1"
- "@jest/environment" "^24.9.0"
- "@jest/source-map" "^24.3.0"
- "@jest/transform" "^24.9.0"
- "@jest/types" "^24.9.0"
- "@types/yargs" "^13.0.0"
- chalk "^2.0.1"
+ "@jest/console" "^25.1.0"
+ "@jest/environment" "^25.1.0"
+ "@jest/test-result" "^25.1.0"
+ "@jest/types" "^25.1.0"
+ chalk "^3.0.0"
+ exit "^0.1.2"
+ graceful-fs "^4.2.3"
+ jest-config "^25.1.0"
+ jest-docblock "^25.1.0"
+ jest-haste-map "^25.1.0"
+ jest-jasmine2 "^25.1.0"
+ jest-leak-detector "^25.1.0"
+ jest-message-util "^25.1.0"
+ jest-resolve "^25.1.0"
+ jest-runtime "^25.1.0"
+ jest-util "^25.1.0"
+ jest-worker "^25.1.0"
+ source-map-support "^0.5.6"
+ throat "^5.0.0"
+
+jest-runtime@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-25.1.0.tgz#02683218f2f95aad0f2ec1c9cdb28c1dc0ec0314"
+ integrity sha512-mpPYYEdbExKBIBB16ryF6FLZTc1Rbk9Nx0ryIpIMiDDkOeGa0jQOKVI/QeGvVGlunKKm62ywcioeFVzIbK03bA==
+ dependencies:
+ "@jest/console" "^25.1.0"
+ "@jest/environment" "^25.1.0"
+ "@jest/source-map" "^25.1.0"
+ "@jest/test-result" "^25.1.0"
+ "@jest/transform" "^25.1.0"
+ "@jest/types" "^25.1.0"
+ "@types/yargs" "^15.0.0"
+ chalk "^3.0.0"
+ collect-v8-coverage "^1.0.0"
exit "^0.1.2"
glob "^7.1.3"
- graceful-fs "^4.1.15"
- jest-config "^24.9.0"
- jest-haste-map "^24.9.0"
- jest-message-util "^24.9.0"
- jest-mock "^24.9.0"
- jest-regex-util "^24.3.0"
- jest-resolve "^24.9.0"
- jest-snapshot "^24.9.0"
- jest-util "^24.9.0"
- jest-validate "^24.9.0"
+ graceful-fs "^4.2.3"
+ jest-config "^25.1.0"
+ jest-haste-map "^25.1.0"
+ jest-message-util "^25.1.0"
+ jest-mock "^25.1.0"
+ jest-regex-util "^25.1.0"
+ jest-resolve "^25.1.0"
+ jest-snapshot "^25.1.0"
+ jest-util "^25.1.0"
+ jest-validate "^25.1.0"
realpath-native "^1.1.0"
- slash "^2.0.0"
- strip-bom "^3.0.0"
- yargs "^13.3.0"
+ slash "^3.0.0"
+ strip-bom "^4.0.0"
+ yargs "^15.0.0"
jest-serializer@^24.9.0:
version "24.9.0"
resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-24.9.0.tgz#e6d7d7ef96d31e8b9079a714754c5d5c58288e73"
integrity sha512-DxYipDr8OvfrKH3Kel6NdED3OXxjvxXZ1uIY2I9OFbGg+vUkkg7AGvi65qbhbWNPvDckXmzMPbK3u3HaDO49bQ==
-jest-snapshot@^24.1.0, jest-snapshot@^24.9.0:
+jest-serializer@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-25.1.0.tgz#73096ba90e07d19dec4a0c1dd89c355e2f129e5d"
+ integrity sha512-20Wkq5j7o84kssBwvyuJ7Xhn7hdPeTXndnwIblKDR2/sy1SUm6rWWiG9kSCgJPIfkDScJCIsTtOKdlzfIHOfKA==
+
+jest-snapshot@^24.1.0:
version "24.9.0"
resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-24.9.0.tgz#ec8e9ca4f2ec0c5c87ae8f925cf97497b0e951ba"
integrity sha512-uI/rszGSs73xCM0l+up7O7a40o90cnrk429LOiK3aeTvfC0HHmldbd81/B7Ix81KSFe1lwkbl7GnBGG4UfuDew==
@@ -8347,6 +8386,25 @@ jest-snapshot@^24.1.0, jest-snapshot@^24.9.0:
pretty-format "^24.9.0"
semver "^6.2.0"
+jest-snapshot@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-25.1.0.tgz#d5880bd4b31faea100454608e15f8d77b9d221d9"
+ integrity sha512-xZ73dFYN8b/+X2hKLXz4VpBZGIAn7muD/DAg+pXtDzDGw3iIV10jM7WiHqhCcpDZfGiKEj7/2HXAEPtHTj0P2A==
+ dependencies:
+ "@babel/types" "^7.0.0"
+ "@jest/types" "^25.1.0"
+ chalk "^3.0.0"
+ expect "^25.1.0"
+ jest-diff "^25.1.0"
+ jest-get-type "^25.1.0"
+ jest-matcher-utils "^25.1.0"
+ jest-message-util "^25.1.0"
+ jest-resolve "^25.1.0"
+ mkdirp "^0.5.1"
+ natural-compare "^1.4.0"
+ pretty-format "^25.1.0"
+ semver "^7.1.1"
+
jest-specific-snapshot@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/jest-specific-snapshot/-/jest-specific-snapshot-2.0.0.tgz#425fe524b25df154aa39f97fa6fe9726faaac273"
@@ -8372,32 +8430,41 @@ jest-util@^24.9.0:
slash "^2.0.0"
source-map "^0.6.0"
-jest-validate@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-24.9.0.tgz#0775c55360d173cd854e40180756d4ff52def8ab"
- integrity sha512-HPIt6C5ACwiqSiwi+OfSSHbK8sG7akG8eATl+IPKaeIjtPOeBUd/g3J7DghugzxrGjI93qS/+RPKe1H6PqvhRQ==
+jest-util@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-25.1.0.tgz#7bc56f7b2abd534910e9fa252692f50624c897d9"
+ integrity sha512-7did6pLQ++87Qsj26Fs/TIwZMUFBXQ+4XXSodRNy3luch2DnRXsSnmpVtxxQ0Yd6WTipGpbhh2IFP1mq6/fQGw==
dependencies:
- "@jest/types" "^24.9.0"
+ "@jest/types" "^25.1.0"
+ chalk "^3.0.0"
+ is-ci "^2.0.0"
+ mkdirp "^0.5.1"
+
+jest-validate@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-25.1.0.tgz#1469fa19f627bb0a9a98e289f3e9ab6a668c732a"
+ integrity sha512-kGbZq1f02/zVO2+t1KQGSVoCTERc5XeObLwITqC6BTRH3Adv7NZdYqCpKIZLUgpLXf2yISzQ465qOZpul8abXA==
+ dependencies:
+ "@jest/types" "^25.1.0"
camelcase "^5.3.1"
- chalk "^2.0.1"
- jest-get-type "^24.9.0"
+ chalk "^3.0.0"
+ jest-get-type "^25.1.0"
leven "^3.1.0"
- pretty-format "^24.9.0"
+ pretty-format "^25.1.0"
-jest-watcher@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-24.9.0.tgz#4b56e5d1ceff005f5b88e528dc9afc8dd4ed2b3b"
- integrity sha512-+/fLOfKPXXYJDYlks62/4R4GoT+GU1tYZed99JSCOsmzkkF7727RqKrjNAxtfO4YpGv11wybgRvCjR73lK2GZw==
+jest-watcher@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-25.1.0.tgz#97cb4a937f676f64c9fad2d07b824c56808e9806"
+ integrity sha512-Q9eZ7pyaIr6xfU24OeTg4z1fUqBF/4MP6J801lyQfg7CsnZ/TCzAPvCfckKdL5dlBBEKBeHV0AdyjFZ5eWj4ig==
dependencies:
- "@jest/test-result" "^24.9.0"
- "@jest/types" "^24.9.0"
- "@types/yargs" "^13.0.0"
- ansi-escapes "^3.0.0"
- chalk "^2.0.1"
- jest-util "^24.9.0"
- string-length "^2.0.0"
+ "@jest/test-result" "^25.1.0"
+ "@jest/types" "^25.1.0"
+ ansi-escapes "^4.2.1"
+ chalk "^3.0.0"
+ jest-util "^25.1.0"
+ string-length "^3.1.0"
-jest-worker@^24.6.0, jest-worker@^24.9.0:
+jest-worker@^24.9.0:
version "24.9.0"
resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-24.9.0.tgz#5dbfdb5b2d322e98567898238a9697bcce67b3e5"
integrity sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw==
@@ -8405,18 +8472,22 @@ jest-worker@^24.6.0, jest-worker@^24.9.0:
merge-stream "^2.0.0"
supports-color "^6.1.0"
-jest@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest/-/jest-24.9.0.tgz#987d290c05a08b52c56188c1002e368edb007171"
- integrity sha512-YvkBL1Zm7d2B1+h5fHEOdyjCG+sGMz4f8D86/0HiqJ6MB4MnDc8FgP5vdWsGnemOQro7lnYo8UakZ3+5A0jxGw==
+jest-worker@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-25.1.0.tgz#75d038bad6fdf58eba0d2ec1835856c497e3907a"
+ integrity sha512-ZHhHtlxOWSxCoNOKHGbiLzXnl42ga9CxDr27H36Qn+15pQZd3R/F24jrmjDelw9j/iHUIWMWs08/u2QN50HHOg==
dependencies:
- import-local "^2.0.0"
- jest-cli "^24.9.0"
+ merge-stream "^2.0.0"
+ supports-color "^7.0.0"
-js-levenshtein@^1.1.3:
- version "1.1.6"
- resolved "https://registry.yarnpkg.com/js-levenshtein/-/js-levenshtein-1.1.6.tgz#c6cee58eb3550372df8deb85fad5ce66ce01d59d"
- integrity sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==
+jest@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/jest/-/jest-25.1.0.tgz#b85ef1ddba2fdb00d295deebbd13567106d35be9"
+ integrity sha512-FV6jEruneBhokkt9MQk0WUFoNTwnF76CLXtwNMfsc0um0TlB/LG2yxUd0KqaFjEJ9laQmVWQWS0sG/t2GsuI0w==
+ dependencies:
+ "@jest/core" "^25.1.0"
+ import-local "^3.0.2"
+ jest-cli "^25.1.0"
"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0:
version "4.0.0"
@@ -8505,6 +8576,38 @@ jsdom@^14.1.0:
ws "^6.1.2"
xml-name-validator "^3.0.0"
+jsdom@^15.1.1:
+ version "15.2.1"
+ resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-15.2.1.tgz#d2feb1aef7183f86be521b8c6833ff5296d07ec5"
+ integrity sha512-fAl1W0/7T2G5vURSyxBzrJ1LSdQn6Tr5UX/xD4PXDx/PDgwygedfW6El/KIj3xJ7FU61TTYnc/l/B7P49Eqt6g==
+ dependencies:
+ abab "^2.0.0"
+ acorn "^7.1.0"
+ acorn-globals "^4.3.2"
+ array-equal "^1.0.0"
+ cssom "^0.4.1"
+ cssstyle "^2.0.0"
+ data-urls "^1.1.0"
+ domexception "^1.0.1"
+ escodegen "^1.11.1"
+ html-encoding-sniffer "^1.0.2"
+ nwsapi "^2.2.0"
+ parse5 "5.1.0"
+ pn "^1.1.0"
+ request "^2.88.0"
+ request-promise-native "^1.0.7"
+ saxes "^3.1.9"
+ symbol-tree "^3.2.2"
+ tough-cookie "^3.0.1"
+ w3c-hr-time "^1.0.1"
+ w3c-xmlserializer "^1.1.2"
+ webidl-conversions "^4.0.2"
+ whatwg-encoding "^1.0.5"
+ whatwg-mimetype "^2.3.0"
+ whatwg-url "^7.0.0"
+ ws "^7.0.0"
+ xml-name-validator "^3.0.0"
+
jsesc@^2.5.1:
version "2.5.2"
resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4"
@@ -8545,11 +8648,6 @@ json3@^3.3.2:
resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.3.tgz#7fc10e375fc5ae42c4705a5cc0aa6f62be305b81"
integrity sha512-c7/8mbUsKigAbLkD5B010BK4D9LZm7A1pNItkEwiUZRpIN66exu/e7YQWysGun+TRKaJp8MhemM+VkfWv42aCA==
-json5@^0.5.0:
- version "0.5.1"
- resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821"
- integrity sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=
-
json5@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe"
@@ -8600,7 +8698,7 @@ jsprim@^1.2.2:
json-schema "0.2.3"
verror "1.10.0"
-jsx-ast-utils@^2.2.1:
+jsx-ast-utils@^2.2.1, jsx-ast-utils@^2.2.3:
version "2.2.3"
resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.2.3.tgz#8a9364e402448a3ce7f14d357738310d9248054f"
integrity sha512-EdIHFMm+1BPynpKOpdPqiOsvnIrInRGJD7bzPZdPkjitQEqpdpUuFpq4T0npZFKTiB3RhWFdGN+oqOJIdhDhQA==
@@ -8635,9 +8733,9 @@ kind-of@^5.0.0:
integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==
kind-of@^6.0.0, kind-of@^6.0.2:
- version "6.0.2"
- resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051"
- integrity sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==
+ version "6.0.3"
+ resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd"
+ integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==
klaw@^1.0.0:
version "1.3.1"
@@ -8694,6 +8792,13 @@ leven@^3.1.0:
resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2"
integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==
+levenary@^1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/levenary/-/levenary-1.1.1.tgz#842a9ee98d2075aa7faeedbe32679e9205f46f77"
+ integrity sha512-mkAdOIt79FD6irqjYSs4rdbnlT5vRonMEvBVPVb3XmevfS8kgRXwfes0dhPdEtzTWD/1eNE/Bm/G1iRt6DcnQQ==
+ dependencies:
+ leven "^3.1.0"
+
levn@^0.3.0, levn@~0.3.0:
version "0.3.0"
resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee"
@@ -8752,16 +8857,6 @@ loader-utils@1.2.3, loader-utils@^1.0.2, loader-utils@^1.1.0, loader-utils@^1.2.
emojis-list "^2.0.0"
json5 "^1.0.1"
-loader-utils@^0.2.16:
- version "0.2.17"
- resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.17.tgz#f86e6374d43205a6e6c60e9196f17c0299bfb348"
- integrity sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=
- dependencies:
- big.js "^3.1.3"
- emojis-list "^2.0.0"
- json5 "^0.5.0"
- object-assign "^4.0.1"
-
locate-path@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e"
@@ -8933,6 +9028,13 @@ log-symbols@^2.1.0, log-symbols@^2.2.0:
dependencies:
chalk "^2.0.1"
+lolex@^5.0.0:
+ version "5.1.2"
+ resolved "https://registry.yarnpkg.com/lolex/-/lolex-5.1.2.tgz#953694d098ce7c07bc5ed6d0e42bc6c0c6d5a367"
+ integrity sha512-h4hmjAvHTmd+25JSwrtTIuwbKdwg5NzZVRMLn9saij4SZaepCrTCxPr35H/3bjwfMJtN+t3CX8672UIkglz28A==
+ dependencies:
+ "@sinonjs/commons" "^1.7.0"
+
loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.3.0, loose-envify@^1.4.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf"
@@ -8994,9 +9096,9 @@ magic-string@^0.22.4:
vlq "^0.2.2"
magic-string@^0.25.2:
- version "0.25.4"
- resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.25.4.tgz#325b8a0a79fc423db109b77fd5a19183b7ba5143"
- integrity sha512-oycWO9nEVAP2RVPbIoDoA4Y7LFIJ3xRYov93gAyJhZkET1tNuB0u7uWkZS2LpBWTJUWnmau/To8ECWRC+jKNfw==
+ version "0.25.6"
+ resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.25.6.tgz#5586387d1242f919c6d223579cc938bf1420795e"
+ integrity sha512-3a5LOMSGoCTH5rbqobC2HuDNRtE2glHZ8J7pK+QZYppyWA36yuNpsX994rIY2nCuyP7CZYy7lQq/X2jygiZ89g==
dependencies:
sourcemap-codec "^1.4.4"
@@ -9016,9 +9118,9 @@ make-dir@^2.0.0, make-dir@^2.1.0:
semver "^5.6.0"
make-dir@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.0.0.tgz#1b5f39f6b9270ed33f9f054c5c0f84304989f801"
- integrity sha512-grNJDhb8b1Jm1qeqW5R/O63wUo4UXo2v2HMic6YT9i/HBlF93S8jkMgH7yugvY9ABDShH4VZMn8I+U8+fCNegw==
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.0.2.tgz#04a1acbf22221e1d6ef43559f43e05a90dbb4392"
+ integrity sha512-rYKABKutXa6vXTXhoV18cBE7PaewPXHe/Bdq4v+ZLMhxbWApkFFplT0LcbMW+6BbjnQXzZ/sAvSE/JdguApG5w==
dependencies:
semver "^6.0.0"
@@ -9079,9 +9181,9 @@ map-visit@^1.0.0:
object-visit "^1.0.0"
markdown-to-jsx@^6.9.1, markdown-to-jsx@^6.9.3:
- version "6.10.3"
- resolved "https://registry.yarnpkg.com/markdown-to-jsx/-/markdown-to-jsx-6.10.3.tgz#7f0946684acd321125ff2de7fd258a9b9c7c40b7"
- integrity sha512-PSoUyLnW/xoW6RsxZrquSSz5eGEOTwa15H5eqp3enmrp8esmgDJmhzd6zmQ9tgAA9TxJzx1Hmf3incYU/IamoQ==
+ version "6.11.0"
+ resolved "https://registry.yarnpkg.com/markdown-to-jsx/-/markdown-to-jsx-6.11.0.tgz#a2e3f2bc781c3402d8bb0f8e0a12a186474623b0"
+ integrity sha512-RH7LCJQ4RFmPqVeZEesKaO1biRzB/k4utoofmTCp3Eiw6D7qfvK8fzZq/2bjEJAtVkfPrM5SMt5APGf2rnaKMg==
dependencies:
prop-types "^15.6.2"
unquote "^1.1.0"
@@ -9105,6 +9207,11 @@ media-typer@0.3.0:
resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748"
integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=
+memoize-one@^5.1.1:
+ version "5.1.1"
+ resolved "https://registry.yarnpkg.com/memoize-one/-/memoize-one-5.1.1.tgz#047b6e3199b508eaec03504de71229b8eb1d75c0"
+ integrity sha512-HKeeBpWvqiVJD57ZUAsJNm71eHTykffzcLZVYWiVfQeI1rJtuEaS7hQiEpWfVVk18donPwJEcFKIkCmPJNOhHA==
+
memoizerific@^1.11.3:
version "1.11.3"
resolved "https://registry.yarnpkg.com/memoizerific/-/memoizerific-1.11.3.tgz#7c87a4646444c32d75438570905f2dbd1b1a805a"
@@ -9250,17 +9357,17 @@ miller-rabin@^4.0.0:
bn.js "^4.0.0"
brorand "^1.0.1"
-mime-db@1.42.0:
- version "1.42.0"
- resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.42.0.tgz#3e252907b4c7adb906597b4b65636272cf9e7bac"
- integrity sha512-UbfJCR4UAVRNgMpfImz05smAXK7+c+ZntjaA26ANtkXLlOe947Aag5zdIcKQULAiF9Cq4WxBi9jUs5zkA84bYQ==
+mime-db@1.43.0:
+ version "1.43.0"
+ resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.43.0.tgz#0a12e0502650e473d735535050e7c8f4eb4fae58"
+ integrity sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ==
mime-types@^2.1.12, mime-types@~2.1.19, mime-types@~2.1.24:
- version "2.1.25"
- resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.25.tgz#39772d46621f93e2a80a856c53b86a62156a6437"
- integrity sha512-5KhStqB5xpTAeGqKBAMgwaYMnQik7teQN4IAzC7npDv6kzeU6prfkR67bc87J1kWMPGkoaZSq1npmexMgkmEVg==
+ version "2.1.26"
+ resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.26.tgz#9c921fc09b7e149a65dfdc0da4d20997200b0a06"
+ integrity sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ==
dependencies:
- mime-db "1.42.0"
+ mime-db "1.43.0"
mime@1.6.0:
version "1.6.0"
@@ -9299,10 +9406,10 @@ min-indent@^1.0.0:
resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.0.tgz#cfc45c37e9ec0d8f0a0ec3dd4ef7f7c3abe39256"
integrity sha1-z8RcN+nsDY8KDsPdTvf3w6vjklY=
-mini-css-extract-plugin@^0.8.0:
- version "0.8.2"
- resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-0.8.2.tgz#a875e169beb27c88af77dd962771c9eedc3da161"
- integrity sha512-a3Y4of27Wz+mqK3qrcd3VhYz6cU0iW5x3Sgvqzbj+XmlrSizmvu8QQMl5oMYJjgHOC4iyt+w7l4umP+dQeW3bw==
+mini-css-extract-plugin@^0.7.0:
+ version "0.7.0"
+ resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-0.7.0.tgz#5ba8290fbb4179a43dd27cca444ba150bee743a0"
+ integrity sha512-RQIw6+7utTYn8DBGsf/LpRgZCJMpZt+kuawJ/fju0KiOL6nAaTBNmCJwS7HtwSCXfS47gCkmtBFS7HdsquhdxQ==
dependencies:
loader-utils "^1.1.0"
normalize-url "1.9.1"
@@ -9370,14 +9477,6 @@ minipass-pipeline@^1.2.2:
dependencies:
minipass "^3.0.0"
-minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0:
- version "2.9.0"
- resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6"
- integrity sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==
- dependencies:
- safe-buffer "^5.1.2"
- yallist "^3.0.0"
-
minipass@^3.0.0, minipass@^3.1.1:
version "3.1.1"
resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.1.1.tgz#7607ce778472a185ad6d89082aa2070f79cedcd5"
@@ -9385,13 +9484,6 @@ minipass@^3.0.0, minipass@^3.1.1:
dependencies:
yallist "^4.0.0"
-minizlib@^1.2.1:
- version "1.3.3"
- resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d"
- integrity sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==
- dependencies:
- minipass "^2.9.0"
-
mississippi@^1.2.0, mississippi@^1.3.0:
version "1.3.1"
resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-1.3.1.tgz#2a8bb465e86550ac8b36a7b6f45599171d78671e"
@@ -9456,7 +9548,7 @@ mixin-object@^2.0.1:
for-in "^0.1.3"
is-extendable "^0.1.1"
-mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1:
+mkdirp@^0.5.1, mkdirp@~0.5.1:
version "0.5.1"
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=
@@ -9468,10 +9560,10 @@ modify-values@^1.0.0:
resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022"
integrity sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==
-moo@^0.4.3:
- version "0.4.3"
- resolved "https://registry.yarnpkg.com/moo/-/moo-0.4.3.tgz#3f847a26f31cf625a956a87f2b10fbc013bfd10e"
- integrity sha512-gFD2xGCl8YFgGHsqJ9NKRVdwlioeW3mI1iqfLNYQOv0+6JRwG58Zk9DIGQgyIaffSYaO1xsKnMaYzzNr1KyIAw==
+moo@^0.5.0:
+ version "0.5.1"
+ resolved "https://registry.yarnpkg.com/moo/-/moo-0.5.1.tgz#7aae7f384b9b09f620b6abf6f74ebbcd1b65dbc4"
+ integrity sha512-I1mnb5xn4fO80BH9BLcF0yLypy2UKl+Cb01Fu0hJRkJjlCRtxZMWkTdAtDd5ZqCOxtCkhmRwyI57vWT+1iZ67w==
move-concurrently@^1.0.1:
version "1.0.1"
@@ -9516,9 +9608,9 @@ nan@^2.12.1:
integrity sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==
nanoid@^2.1.0:
- version "2.1.6"
- resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-2.1.6.tgz#0665418f692e54cf44f34d4010761f3240a03314"
- integrity sha512-2NDzpiuEy3+H0AVtdt8LoFi7PnqkOnIzYmJQp7xsEU6VexLluHQwKREuiz57XaQC5006seIadPrIZJhyS2n7aw==
+ version "2.1.11"
+ resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-2.1.11.tgz#ec24b8a758d591561531b4176a01e3ab4f0f0280"
+ integrity sha512-s/snB+WGm6uwi0WjsZdaVcuf3KJXlfGl2LcxgwkEwJF0D/BWzVWAZW/XY4bFaiR7s0Jk3FPvlnepg1H1b1UwlA==
nanomatch@^1.2.9:
version "1.2.13"
@@ -9543,25 +9635,16 @@ natural-compare@^1.4.0:
integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=
nearley@^2.7.10:
- version "2.19.0"
- resolved "https://registry.yarnpkg.com/nearley/-/nearley-2.19.0.tgz#37717781d0fd0f2bfc95e233ebd75678ca4bda46"
- integrity sha512-2v52FTw7RPqieZr3Gth1luAXZR7Je6q3KaDHY5bjl/paDUdMu35fZ8ICNgiYJRr3tf3NMvIQQR1r27AvEr9CRA==
+ version "2.19.1"
+ resolved "https://registry.yarnpkg.com/nearley/-/nearley-2.19.1.tgz#4af4006e16645ff800e9f993c3af039857d9dbdc"
+ integrity sha512-xq47GIUGXxU9vQg7g/y1o1xuKnkO7ev4nRWqftmQrLkfnE/FjRqDaGOUakM8XHPn/6pW3bGjU2wgoJyId90rqg==
dependencies:
commander "^2.19.0"
- moo "^0.4.3"
+ moo "^0.5.0"
railroad-diagrams "^1.0.0"
randexp "0.4.6"
semver "^5.4.1"
-needle@^2.2.1:
- version "2.4.0"
- resolved "https://registry.yarnpkg.com/needle/-/needle-2.4.0.tgz#6833e74975c444642590e15a750288c5f939b57c"
- integrity sha512-4Hnwzr3mi5L97hMYeNl8wRW/Onhy4nUKR/lVemJ8gJedxxUyBLm9kkrDColJvoSfwi0jCNhD+xCdOtiGDQiRZg==
- dependencies:
- debug "^3.2.6"
- iconv-lite "^0.4.4"
- sax "^1.2.4"
-
negotiator@0.6.2:
version "0.6.2"
resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb"
@@ -9584,7 +9667,7 @@ no-case@^2.2.0:
dependencies:
lower-case "^1.1.1"
-node-addon-api@^1.6.0:
+node-addon-api@^1.7.1:
version "1.7.1"
resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-1.7.1.tgz#cf813cd69bb8d9100f6bdca6755fc268f54ac492"
integrity sha512-2+DuKodWvwRTrCfKOeR24KIc5unKjOh8mz17NCzVnHWfjAdDqbfbjqh7gUT+BkXBRQM52+xCHciKWonJ3CbJMQ==
@@ -9662,55 +9745,24 @@ node-modules-regexp@^1.0.0:
resolved "https://registry.yarnpkg.com/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40"
integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=
-node-notifier@^5.4.2:
- version "5.4.3"
- resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.4.3.tgz#cb72daf94c93904098e28b9c590fd866e464bd50"
- integrity sha512-M4UBGcs4jeOK9CjTsYwkvH6/MzuUmGCyTW+kCY7uO+1ZVr0+FHGdPdIf5CCLqAaxnRrWidyoQlNkMIIVwbKB8Q==
+node-notifier@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-6.0.0.tgz#cea319e06baa16deec8ce5cd7f133c4a46b68e12"
+ integrity sha512-SVfQ/wMw+DesunOm5cKqr6yDcvUTDl/yc97ybGHMrteNEY6oekXpNpS3lZwgLlwz0FLgHoiW28ZpmBHUDg37cw==
dependencies:
growly "^1.3.0"
- is-wsl "^1.1.0"
- semver "^5.5.0"
- shellwords "^0.1.1"
- which "^1.3.0"
-
-node-pre-gyp@^0.12.0:
- version "0.12.0"
- resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.12.0.tgz#39ba4bb1439da030295f899e3b520b7785766149"
- integrity sha512-4KghwV8vH5k+g2ylT+sLTjy5wmUOb9vPhnM8NHvRf9dHmnW/CndrFXy2aRPaPST6dugXSdHXfeaHQm77PIz/1A==
- dependencies:
- detect-libc "^1.0.2"
- mkdirp "^0.5.1"
- needle "^2.2.1"
- nopt "^4.0.1"
- npm-packlist "^1.1.6"
- npmlog "^4.0.2"
- rc "^1.2.7"
- rimraf "^2.6.1"
- semver "^5.3.0"
- tar "^4"
-
-node-releases@^1.1.29:
- version "1.1.40"
- resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.40.tgz#a94facfa8e2d612302601ca1361741d529c4515a"
- integrity sha512-r4LPcC5b/bS8BdtWH1fbeK88ib/wg9aqmg6/s3ngNLn2Ewkn/8J6Iw3P9RTlfIAdSdvYvQl2thCY5Y+qTAQ2iQ==
- dependencies:
+ is-wsl "^2.1.1"
semver "^6.3.0"
+ shellwords "^0.1.1"
+ which "^1.3.1"
-node-releases@^1.1.44:
- version "1.1.45"
- resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.45.tgz#4cf7e9175d71b1317f15ffd68ce63bce1d53e9f2"
- integrity sha512-cXvGSfhITKI8qsV116u2FTzH5EWZJfgG7d4cpqwF8I8+1tWpD6AsvvGRKq2onR0DNj1jfqsjkXZsm14JMS7Cyg==
+node-releases@^1.1.29, node-releases@^1.1.49:
+ version "1.1.49"
+ resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.49.tgz#67ba5a3fac2319262675ef864ed56798bb33b93e"
+ integrity sha512-xH8t0LS0disN0mtRCh+eByxFPie+msJUBL/lJDBuap53QGiYPa9joh83K4pCZgWJ+2L4b9h88vCVdXQ60NO2bg==
dependencies:
semver "^6.3.0"
-nopt@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d"
- integrity sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=
- dependencies:
- abbrev "1"
- osenv "^0.1.4"
-
normalize-html-whitespace@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/normalize-html-whitespace/-/normalize-html-whitespace-1.0.0.tgz#5e3c8e192f1b06c3b9eee4b7e7f28854c7601e34"
@@ -9758,11 +9810,6 @@ normalize-url@^3.0.0:
resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-3.3.0.tgz#b2e1c4dc4f7c6d57743df733a4f5978d18650559"
integrity sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg==
-npm-bundled@^1.0.1:
- version "1.0.6"
- resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.0.6.tgz#e7ba9aadcef962bb61248f91721cd932b3fe6bdd"
- integrity sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g==
-
npm-package-arg@^5.1.2:
version "5.1.2"
resolved "https://registry.yarnpkg.com/npm-package-arg/-/npm-package-arg-5.1.2.tgz#fb18d17bb61e60900d6312619919bd753755ab37"
@@ -9773,14 +9820,6 @@ npm-package-arg@^5.1.2:
semver "^5.1.0"
validate-npm-package-name "^3.0.0"
-npm-packlist@^1.1.6:
- version "1.4.6"
- resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.6.tgz#53ba3ed11f8523079f1457376dd379ee4ea42ff4"
- integrity sha512-u65uQdb+qwtGvEJh/DgQgW1Xg7sqeNbmxYyrvlNznaVTjV3E5P6F/EFjM+BVHXl7JJlsdG8A64M0XI8FI/IOlg==
- dependencies:
- ignore-walk "^3.0.1"
- npm-bundled "^1.0.1"
-
npm-pick-manifest@^1.0.4:
version "1.0.4"
resolved "https://registry.yarnpkg.com/npm-pick-manifest/-/npm-pick-manifest-1.0.4.tgz#a5ee6510c1fe7221c0bc0414e70924c14045f7e8"
@@ -9796,7 +9835,14 @@ npm-run-path@^2.0.0:
dependencies:
path-key "^2.0.0"
-npmlog@^4.0.2, npmlog@^4.1.2:
+npm-run-path@^4.0.0:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea"
+ integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==
+ dependencies:
+ path-key "^3.0.0"
+
+npmlog@^4.1.2:
version "4.1.2"
resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b"
integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==
@@ -9828,7 +9874,7 @@ number-is-nan@^1.0.0:
resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d"
integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=
-nwsapi@^2.0.7, nwsapi@^2.1.3:
+nwsapi@^2.0.7, nwsapi@^2.1.3, nwsapi@^2.2.0:
version "2.2.0"
resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz#204879a9e3d068ff2a55139c2c772780681a38b7"
integrity sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==
@@ -9852,7 +9898,7 @@ object-copy@^0.1.0:
define-property "^0.2.5"
kind-of "^3.0.3"
-object-inspect@^1.6.0, object-inspect@^1.7.0:
+object-inspect@^1.7.0:
version "1.7.0"
resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.7.0.tgz#f4f6bd181ad77f006b5ece60bd0b6f398ff74a67"
integrity sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==
@@ -9862,12 +9908,7 @@ object-inspect@~1.4.0:
resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.4.1.tgz#37ffb10e71adaf3748d05f713b4c9452f402cbc4"
integrity sha512-wqdhLpfCUbEsoEwl3FXwGyv8ief1k/1aUdIPCqVnupM6e8l63BEJdiF/0swtn04/8p05tG/T0FrpTlfwvljOdw==
-object-is@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.0.1.tgz#0aa60ec9989a0b3ed795cf4d06f62cf1ad6539b6"
- integrity sha1-CqYOyZiaCz7Xlc9NBvYs8a1lObY=
-
-object-is@^1.0.2:
+object-is@^1.0.1, object-is@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.0.2.tgz#6b80eb84fe451498f65007982f035a5b445edec4"
integrity sha512-Epah+btZd5wrrfjkJZq1AOB9O6OxUQto45hzFd7lXGrpHPGE0W1k+426yrZV+k6NJOzLNNW/nVsmZdIWsAqoOQ==
@@ -9894,27 +9935,17 @@ object.assign@^4.1.0:
has-symbols "^1.0.0"
object-keys "^1.0.11"
-object.entries@^1.0.4, object.entries@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.0.tgz#2024fc6d6ba246aee38bdb0ffd5cfbcf371b7519"
- integrity sha512-l+H6EQ8qzGRxbkHOd5I/aHRhHDKoQXQ8g0BYt4uSweQU1/J6dZUOyWh9a2Vky35YCKjzmgxOzta2hH6kf9HuXA==
- dependencies:
- define-properties "^1.1.3"
- es-abstract "^1.12.0"
- function-bind "^1.1.1"
- has "^1.0.3"
-
-object.fromentries@^2.0.0, "object.fromentries@^2.0.0 || ^1.0.0":
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.1.tgz#050f077855c7af8ae6649f45c80b16ee2d31e704"
- integrity sha512-PUQv8Hbg3j2QX0IQYv3iAGCbGcu4yY4KQ92/dhA4sFSixBmSmp13UpDLs6jGK8rBtbmhNNIK99LD2k293jpiGA==
+object.entries@^1.1.0, object.entries@^1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.1.tgz#ee1cf04153de02bb093fec33683900f57ce5399b"
+ integrity sha512-ilqR7BgdyZetJutmDPfXCDffGa0/Yzl2ivVNpbx/g4UeWrCdRnFDUBrKJGLhGieRHDATnyZXWBeCb29k9CJysQ==
dependencies:
define-properties "^1.1.3"
- es-abstract "^1.15.0"
+ es-abstract "^1.17.0-next.1"
function-bind "^1.1.1"
has "^1.0.3"
-object.fromentries@^2.0.2:
+"object.fromentries@^2.0.0 || ^1.0.0", object.fromentries@^2.0.2:
version "2.0.2"
resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.2.tgz#4a09c9b9bb3843dd0f89acdb517a794d4f355ac9"
integrity sha512-r3ZiBH7MQppDJVLx6fhD618GKNG40CZYH9wgwdhKxBDDbQgjeWGGd4AtkZad84d291YxvWe7bJGuE65Anh0dxQ==
@@ -9924,13 +9955,13 @@ object.fromentries@^2.0.2:
function-bind "^1.1.1"
has "^1.0.3"
-object.getownpropertydescriptors@^2.0.3:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz#8758c846f5b407adab0f236e0986f14b051caa16"
- integrity sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=
+object.getownpropertydescriptors@^2.0.3, object.getownpropertydescriptors@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz#369bf1f9592d8ab89d712dced5cb81c7c5352649"
+ integrity sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg==
dependencies:
- define-properties "^1.1.2"
- es-abstract "^1.5.1"
+ define-properties "^1.1.3"
+ es-abstract "^1.17.0-next.1"
object.pick@^1.3.0:
version "1.3.0"
@@ -9939,7 +9970,7 @@ object.pick@^1.3.0:
dependencies:
isobject "^3.0.1"
-object.values@^1.0.4, object.values@^1.1.0, object.values@^1.1.1:
+object.values@^1.1.0, object.values@^1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.1.tgz#68a99ecde356b7e9295a3c5e0ce31dc8c953de5e"
integrity sha512-WTa54g2K8iu0kmS/us18jEmdv1a4Wi//BZ/DTVYEcH0XhLM5NYdpDHja3gt57VrZLcNAO2WGA+KpWsDBaHt6eA==
@@ -9985,11 +10016,12 @@ open@^6.3.0:
is-wsl "^1.1.0"
open@^7.0.0:
- version "7.0.0"
- resolved "https://registry.yarnpkg.com/open/-/open-7.0.0.tgz#7e52999b14eb73f90f0f0807fe93897c4ae73ec9"
- integrity sha512-K6EKzYqnwQzk+/dzJAQSBORub3xlBTxMz+ntpZpH/LyCa1o6KjXhuN+2npAaI9jaSmU3R1Q8NWf4KUWcyytGsQ==
+ version "7.0.2"
+ resolved "https://registry.yarnpkg.com/open/-/open-7.0.2.tgz#fb3681f11f157f2361d2392307548ca1792960e8"
+ integrity sha512-70E/pFTPr7nZ9nLDPNTcj3IVqnNvKuP4VsBmoKV9YGTnChe0mlS3C4qM7qKarhZ8rGaHKLfo+vBTHXDp6ZSyLQ==
dependencies:
- is-wsl "^2.1.0"
+ is-docker "^2.0.0"
+ is-wsl "^2.1.1"
opn@^5.1.0:
version "5.5.0"
@@ -10070,18 +10102,21 @@ osenv@^0.1.4:
os-homedir "^1.0.0"
os-tmpdir "^1.0.0"
-p-each-series@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/p-each-series/-/p-each-series-1.0.0.tgz#930f3d12dd1f50e7434457a22cd6f04ac6ad7f71"
- integrity sha1-kw89Et0fUOdDRFeiLNbwSsatf3E=
- dependencies:
- p-reduce "^1.0.0"
+p-each-series@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/p-each-series/-/p-each-series-2.1.0.tgz#961c8dd3f195ea96c747e636b262b800a6b1af48"
+ integrity sha512-ZuRs1miPT4HrjFa+9fRfOFXxGJfORgelKV9f9nNOWw2gl6gVsRaVDOQP0+MI0G0wGKns1Yacsu0GjOFbTK0JFQ==
p-finally@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae"
integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=
+p-finally@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-2.0.1.tgz#bd6fcaa9c559a096b680806f4d657b3f0f240561"
+ integrity sha512-vpm09aKwq6H9phqRQzecoDpD8TmVyGw70qmWlyq5onxY7tqyTTFVvxMykxQSQKILBSFlbXpypIw2T1Ml7+DDtw==
+
p-limit@^1.1.0:
version "1.3.0"
resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8"
@@ -10089,10 +10124,10 @@ p-limit@^1.1.0:
dependencies:
p-try "^1.0.0"
-p-limit@^2.0.0, p-limit@^2.2.0:
- version "2.2.1"
- resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.1.tgz#aa07a788cc3151c939b5131f63570f0dd2009537"
- integrity sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==
+p-limit@^2.0.0, p-limit@^2.2.0, p-limit@^2.2.2:
+ version "2.2.2"
+ resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.2.tgz#61279b67721f5287aa1c13a9a7fbbc48c9291b1e"
+ integrity sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ==
dependencies:
p-try "^2.0.0"
@@ -10129,11 +10164,6 @@ p-queue@^2.4.2:
resolved "https://registry.yarnpkg.com/p-queue/-/p-queue-2.4.2.tgz#03609826682b743be9a22dba25051bd46724fc34"
integrity sha512-n8/y+yDJwBjoLQe1GSJbbaYQLTI7QHNZI2+rpmCDbe++WLf9HC3gf6iqj5yfPAV71W4UF3ql5W1+UBPXoXTxng==
-p-reduce@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/p-reduce/-/p-reduce-1.0.0.tgz#18c2b0dd936a4690a529f8231f58a0fdb6a47dfa"
- integrity sha1-GMKw3ZNqRpClKfgjH1ig/bakffo=
-
p-try@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3"
@@ -10187,9 +10217,9 @@ pako@^0.2.5:
integrity sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU=
pako@~1.0.5:
- version "1.0.10"
- resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.10.tgz#4328badb5086a426aa90f541977d4955da5c9732"
- integrity sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw==
+ version "1.0.11"
+ resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf"
+ integrity sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==
parallel-transform@^1.1.0:
version "1.2.0"
@@ -10424,10 +10454,10 @@ path-key@^2.0.0, path-key@^2.0.1:
resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40"
integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=
-path-key@^3.1.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.0.tgz#99a10d870a803bdd5ee6f0470e58dfcd2f9a54d3"
- integrity sha512-8cChqz0RP6SHJkMt48FW0A7+qUOn+OsnOsVtzI59tZ8m+5bCSk7hzwET0pulwOM2YMn9J1efb07KB9l9f30SGg==
+path-key@^3.0.0, path-key@^3.1.0:
+ version "3.1.1"
+ resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375"
+ integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==
path-parse@^1.0.6:
version "1.0.6"
@@ -10488,7 +10518,7 @@ physical-cpu-count@^2.0.0:
resolved "https://registry.yarnpkg.com/physical-cpu-count/-/physical-cpu-count-2.0.0.tgz#18de2f97e4bf7a9551ad7511942b5496f7aba660"
integrity sha1-GN4vl+S/epVRrXURlCtUlverpmA=
-picomatch@^2.0.5:
+picomatch@^2.0.4, picomatch@^2.0.5:
version "2.2.1"
resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.1.tgz#21bac888b6ed8601f831ce7816e335bc779f0a4a"
integrity sha512-ISBaA8xQNmwELC7eOjqFKMESB2VIqt4PPDD0nsS95b/9dZXvVKOlz9keMSnoGGKcOHXfTvDD6WMaRoSc9UuhRA==
@@ -10541,7 +10571,7 @@ pkg-dir@^3.0.0:
dependencies:
find-up "^3.0.0"
-pkg-dir@^4.1.0:
+pkg-dir@^4.1.0, pkg-dir@^4.2.0:
version "4.2.0"
resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3"
integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==
@@ -10568,16 +10598,16 @@ pnp-webpack-plugin@1.5.0:
ts-pnp "^1.1.2"
polished@^3.3.1:
- version "3.4.2"
- resolved "https://registry.yarnpkg.com/polished/-/polished-3.4.2.tgz#b4780dad81d64df55615fbfc77acb52fd17d88cd"
- integrity sha512-9Rch6iMZckABr6EFCLPZsxodeBpXMo9H4fRlfR/9VjMEyy5xpo1/WgXlJGgSjPyVhEZNycbW7UmYMNyWS5MI0g==
+ version "3.4.4"
+ resolved "https://registry.yarnpkg.com/polished/-/polished-3.4.4.tgz#ac8cd6e704887398f3b802718f9d389b9ea4307b"
+ integrity sha512-x9PKeExyI9AhWrJP3Q57I1k7GInujjiVBJMPFmycj9hX1yCOo/X9eu9eZwxgOziiXge3WbFQ5XOmkzunOntBSA==
dependencies:
"@babel/runtime" "^7.6.3"
popper.js@^1.14.4, popper.js@^1.14.7:
- version "1.16.0"
- resolved "https://registry.yarnpkg.com/popper.js/-/popper.js-1.16.0.tgz#2e1816bcbbaa518ea6c2e15a466f4cb9c6e2fbb3"
- integrity sha512-+G+EkOPoE5S/zChTpmBSSDYmhXJ5PsW8eMhH8cP/CQHMFPBG/kC9Y5IIw6qNYgdJ+/COf0ddY2li28iHaZRSjw==
+ version "1.16.1"
+ resolved "https://registry.yarnpkg.com/popper.js/-/popper.js-1.16.1.tgz#2a223cb3dc7b6213d740e40372be40de43e65b1b"
+ integrity sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==
posix-character-classes@^0.1.0:
version "0.1.1"
@@ -10642,11 +10672,11 @@ postcss-discard-overridden@^4.0.1:
postcss "^7.0.0"
postcss-flexbugs-fixes@^4.1.0:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-4.1.0.tgz#e094a9df1783e2200b7b19f875dcad3b3aff8b20"
- integrity sha512-jr1LHxQvStNNAHlgco6PzY308zvLklh7SJVYuWUwyUQncofaAlD2l+P/gxKHOdqWKe7xJSkVLFF/2Tp+JqMSZA==
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-4.2.0.tgz#662b3dcb6354638b9213a55eed8913bcdc8d004a"
+ integrity sha512-QRE0n3hpkxxS/OGvzOa+PDuy4mh/Jg4o9ui22/ko5iGYOG3M5dfJabjnAZjTdh2G9F85c7Hv8hWcEDEKW/xceQ==
dependencies:
- postcss "^7.0.0"
+ postcss "^7.0.26"
postcss-load-config@^2.0.0:
version "2.1.0"
@@ -10768,10 +10798,10 @@ postcss-modules-scope@1.1.0:
css-selector-tokenizer "^0.7.0"
postcss "^6.0.1"
-postcss-modules-scope@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-2.1.0.tgz#ad3f5bf7856114f6fcab901b0502e2a2bc39d4eb"
- integrity sha512-91Rjps0JnmtUB0cujlc8KIKCsJXWjzuxGeT/+Q2i2HXKZ7nBUeF9YQTZZTNvHVoNYj1AthsjnGLtqDUE0Op79A==
+postcss-modules-scope@^2.1.1:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-2.1.1.tgz#33d4fc946602eb5e9355c4165d68a10727689dba"
+ integrity sha512-OXRUPecnHCg8b9xWvldG/jUpRIGPNRka0r4D4j0ESUU2/5IOnpsjfPPmDprM3Ih8CgZ8FXjWqaniK5v4rWt3oQ==
dependencies:
postcss "^7.0.6"
postcss-selector-parser "^6.0.0"
@@ -10793,12 +10823,12 @@ postcss-modules-values@^3.0.0:
postcss "^7.0.6"
postcss-modules@^1.4.1:
- version "1.4.1"
- resolved "https://registry.yarnpkg.com/postcss-modules/-/postcss-modules-1.4.1.tgz#8aa35bd3461db67e27377a7ce770d77b654a84ef"
- integrity sha512-btTrbK+Xc3NBuYF8TPBjCMRSp5h6NoQ1iVZ6WiDQENIze6KIYCSf0+UFQuV3yJ7gRHA+4AAtF8i2jRvUpbBMMg==
+ version "1.5.0"
+ resolved "https://registry.yarnpkg.com/postcss-modules/-/postcss-modules-1.5.0.tgz#08da6ce43fcfadbc685a021fe6ed30ef929f0bcc"
+ integrity sha512-KiAihzcV0TxTTNA5OXreyIXctuHOfR50WIhqBpc8pe0Q5dcs/Uap9EVlifOI9am7zGGdGOJQ6B1MPYKo2UxgOg==
dependencies:
css-modules-loader-core "^1.1.0"
- generic-names "^1.0.3"
+ generic-names "^2.0.1"
lodash.camelcase "^4.3.0"
postcss "^7.0.1"
string-hash "^1.1.1"
@@ -10923,11 +10953,11 @@ postcss-selector-parser@6.0.2, postcss-selector-parser@^6.0.0, postcss-selector-
uniq "^1.0.1"
postcss-selector-parser@^3.0.0:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-3.1.1.tgz#4f875f4afb0c96573d5cf4d74011aee250a7e865"
- integrity sha1-T4dfSvsMllc9XPTXQBGu4lCn6GU=
+ version "3.1.2"
+ resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz#b310f5c4c0fdaf76f94902bbaa30db6aa84f5270"
+ integrity sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==
dependencies:
- dot-prop "^4.1.1"
+ dot-prop "^5.2.0"
indexes-of "^1.0.1"
uniq "^1.0.1"
@@ -10987,7 +11017,7 @@ postcss@^6.0.1:
source-map "^0.6.1"
supports-color "^5.4.0"
-postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.11, postcss@^7.0.14, postcss@^7.0.16, postcss@^7.0.17, postcss@^7.0.26, postcss@^7.0.5, postcss@^7.0.6:
+postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.11, postcss@^7.0.14, postcss@^7.0.16, postcss@^7.0.17, postcss@^7.0.23, postcss@^7.0.26, postcss@^7.0.5, postcss@^7.0.6:
version "7.0.26"
resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.26.tgz#5ed615cfcab35ba9bbb82414a4fa88ea10429587"
integrity sha512-IY4oRjpXWYshuTDFxMVkJDtWIk2LhsTlu8bZnbEJA4+bYT16Lvpo8Qv6EvDumhYRgzjZl489pmsY3qVgJQ08nA==
@@ -11057,12 +11087,29 @@ pretty-format@^24.9.0:
ansi-styles "^3.2.0"
react-is "^16.8.4"
+pretty-format@^25.1.0:
+ version "25.1.0"
+ resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-25.1.0.tgz#ed869bdaec1356fc5ae45de045e2c8ec7b07b0c8"
+ integrity sha512-46zLRSGLd02Rp+Lhad9zzuNZ+swunitn8zIpfD2B4OPCRLXbM87RJT2aBLBWYOznNUML/2l/ReMyWNC80PJBUQ==
+ dependencies:
+ "@jest/types" "^25.1.0"
+ ansi-regex "^5.0.0"
+ ansi-styles "^4.0.0"
+ react-is "^16.12.0"
+
pretty-hrtime@^1.0.3:
version "1.0.3"
resolved "https://registry.yarnpkg.com/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz#b7e3ea42435a4c9b2759d99e0f201eb195802ee1"
integrity sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=
-prismjs@^1.8.4, prismjs@~1.17.0:
+prismjs@^1.8.4:
+ version "1.19.0"
+ resolved "https://registry.yarnpkg.com/prismjs/-/prismjs-1.19.0.tgz#713afbd45c3baca4b321569f2df39e17e729d4dc"
+ integrity sha512-IVFtbW9mCWm9eOIaEkNyo2Vl4NnEifis2GQ7/MLRG5TQe6t+4Sj9J5QWI9i3v+SS43uZBlCAOn+zYTVYQcPXJw==
+ optionalDependencies:
+ clipboard "^2.0.0"
+
+prismjs@~1.17.0:
version "1.17.1"
resolved "https://registry.yarnpkg.com/prismjs/-/prismjs-1.17.1.tgz#e669fcbd4cdd873c35102881c33b14d0d68519be"
integrity sha512-PrEDJAFdUGbOP6xK/UsfkC5ghJsPJviKgnQOoxaDbBjwc8op68Quupwt1DeAFoG8GImPhiKXAvvsH7wDSLsu1Q==
@@ -11103,21 +11150,23 @@ promise-retry@^1.1.1:
retry "^0.10.0"
promise.allsettled@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/promise.allsettled/-/promise.allsettled-1.0.1.tgz#afe4bfcc13b26e2263a97a7fbbb19b8ca6eb619c"
- integrity sha512-3ST7RS7TY3TYLOIe+OACZFvcWVe1osbgz2x07nTb446pa3t4GUZWidMDzQ4zf9jC2l6mRa1/3X81icFYbi+D/g==
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/promise.allsettled/-/promise.allsettled-1.0.2.tgz#d66f78fbb600e83e863d893e98b3d4376a9c47c9"
+ integrity sha512-UpcYW5S1RaNKT6pd+s9jp9K9rlQge1UXKskec0j6Mmuq7UJCvlS2J2/s/yuPN8ehftf9HXMxWlKiPbGGUzpoRg==
dependencies:
+ array.prototype.map "^1.0.1"
define-properties "^1.1.3"
- es-abstract "^1.13.0"
+ es-abstract "^1.17.0-next.1"
function-bind "^1.1.1"
+ iterate-value "^1.0.0"
promise.prototype.finally@^3.1.0:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/promise.prototype.finally/-/promise.prototype.finally-3.1.1.tgz#cb279d3a5020ca6403b3d92357f8e22d50ed92aa"
- integrity sha512-gnt8tThx0heJoI3Ms8a/JdkYBVhYP/wv+T7yQimR+kdOEJL21xTFbiJhMRqnSPcr54UVvMbsscDk2w+ivyaLPw==
+ version "3.1.2"
+ resolved "https://registry.yarnpkg.com/promise.prototype.finally/-/promise.prototype.finally-3.1.2.tgz#b8af89160c9c673cefe3b4c4435b53cfd0287067"
+ integrity sha512-A2HuJWl2opDH0EafgdjwEw7HysI8ff/n4lW4QEVBCUXFk9QeGecBWv0Deph0UmLe3tTNYegz8MOjsVuE6SMoJA==
dependencies:
define-properties "^1.1.3"
- es-abstract "^1.13.0"
+ es-abstract "^1.17.0-next.0"
function-bind "^1.1.1"
promise.series@^0.2.0:
@@ -11133,12 +11182,12 @@ promise@^7.1.1:
asap "~2.0.3"
prompts@^2.0.1:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.3.0.tgz#a444e968fa4cc7e86689a74050685ac8006c4cc4"
- integrity sha512-NfbbPPg/74fT7wk2XYQ7hAIp9zJyZp5Fu19iRbORqqy1BhtrkZ0fPafBU+7bmn8ie69DpT0R6QpJIN2oisYjJg==
+ version "2.3.1"
+ resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.3.1.tgz#b63a9ce2809f106fa9ae1277c275b167af46ea05"
+ integrity sha512-qIP2lQyCwYbdzcqHIUi2HAxiWixhoM9OdLCWf8txXsapC/X9YdsCoeyRIXE/GP+Q0J37Q7+XN/MFqbUa7IzXNA==
dependencies:
kleur "^3.0.3"
- sisteransi "^1.0.3"
+ sisteransi "^1.0.4"
prop-types-exact@^1.2.0:
version "1.2.0"
@@ -11159,11 +11208,11 @@ prop-types@^15.5.10, prop-types@^15.5.9, prop-types@^15.6.0, prop-types@^15.6.1,
react-is "^16.8.1"
property-information@^5.0.0:
- version "5.3.0"
- resolved "https://registry.yarnpkg.com/property-information/-/property-information-5.3.0.tgz#bc87ac82dc4e72a31bb62040544b1bf9653da039"
- integrity sha512-IslotQn1hBCZDY7SaJ3zmCjVea219VTwmOk6Pu3z9haU9m4+T8GwaDubur+6NMHEU+Fjs/6/p66z6QULPkcL1w==
+ version "5.4.0"
+ resolved "https://registry.yarnpkg.com/property-information/-/property-information-5.4.0.tgz#16e08f13f4e5c4a7be2e4ec431c01c4f8dba869a"
+ integrity sha512-nmMWAm/3vKFGmmOWOcdLjgq/Hlxa+hsuR/px1Lp/UGEyc5A22A6l78Shc2C0E71sPmAqglni+HrS7L7VJ7AUCA==
dependencies:
- xtend "^4.0.1"
+ xtend "^4.0.0"
protoduck@^4.0.0:
version "4.0.0"
@@ -11190,10 +11239,10 @@ pseudomap@^1.0.2:
resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3"
integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM=
-psl@^1.1.24, psl@^1.1.28:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/psl/-/psl-1.4.0.tgz#5dd26156cdb69fa1fdb8ab1991667d3f80ced7c2"
- integrity sha512-HZzqCGPecFLyoRj5HLfuDSKYTJkAfB5thKBIkRHtGjWwY7p1dAyveIbXIq4tO0KYfDF2tHqPUgY9SDnGm00uFw==
+psl@^1.1.28:
+ version "1.7.0"
+ resolved "https://registry.yarnpkg.com/psl/-/psl-1.7.0.tgz#f1c4c47a8ef97167dea5d6bbf4816d736e884a3c"
+ integrity sha512-5NsSEDv8zY70ScRnOTn7bK7eanl2MvFrOrS/R6x+dBt5g1ghnj9Zv90kO8GwT8gxcu2ANyFprnFYB85IogIJOQ==
public-encrypt@^4.0.0:
version "4.0.3"
@@ -11245,7 +11294,7 @@ punycode@1.3.2:
resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d"
integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=
-punycode@^1.2.4, punycode@^1.4.1:
+punycode@^1.2.4:
version "1.4.1"
resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
integrity sha1-wNWmOycYgArY4esPpSachN1BhF4=
@@ -11256,9 +11305,9 @@ punycode@^2.1.0, punycode@^2.1.1:
integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==
purgecss@^1.4.0:
- version "1.4.1"
- resolved "https://registry.yarnpkg.com/purgecss/-/purgecss-1.4.1.tgz#d362e63eb1ed9dd1fa1554b9fd7accb8d54e56dc"
- integrity sha512-5jONV/D/3nfa+lC425+LA+OWe5/LDn4a79cac+TnzJq3VczwnWlpIDdW275hHsGhkzIlqATQsYFLW7or0cSwNQ==
+ version "1.4.2"
+ resolved "https://registry.yarnpkg.com/purgecss/-/purgecss-1.4.2.tgz#67ab50cb4f5c163fcefde56002467c974e577f41"
+ integrity sha512-hkOreFTgiyMHMmC2BxzdIw5DuC6kxAbP/gGOGd3MEsF3+5m69rIvUEPaxrnoUtfODTFKe9hcXjGwC6jcjoyhOw==
dependencies:
glob "^7.1.3"
postcss "^7.0.14"
@@ -11322,7 +11371,7 @@ quote-stream@^1.0.1, quote-stream@~1.0.2:
minimist "^1.1.3"
through2 "^2.0.0"
-raf@^3.2.0, raf@^3.4.0:
+raf@^3.2.0, raf@^3.4.1:
version "3.4.1"
resolved "https://registry.yarnpkg.com/raf/-/raf-3.4.1.tgz#0742e99a4a6552f445d73e3ee0328af0ff1ede39"
integrity sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==
@@ -11385,7 +11434,7 @@ raw-loader@^3.1.0:
loader-utils "^1.1.0"
schema-utils "^2.0.1"
-rc@^1.0.1, rc@^1.1.6, rc@^1.2.7:
+rc@^1.0.1, rc@^1.1.6:
version "1.2.8"
resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed"
integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==
@@ -11442,9 +11491,9 @@ react-dev-utils@^9.0.0:
text-table "0.2.0"
react-display-name@^0.2.0:
- version "0.2.4"
- resolved "https://registry.yarnpkg.com/react-display-name/-/react-display-name-0.2.4.tgz#e2a670b81d79a2204335510c01246f4c92ff12cf"
- integrity sha512-zvU6iouW+SWwHTyThwxGICjJYCMZFk/6r/+jmOdC7ntQoPlS/Pqb81MkxaMf2bHTSq9TN3K3zX2/ayMW/jCtyA==
+ version "0.2.5"
+ resolved "https://registry.yarnpkg.com/react-display-name/-/react-display-name-0.2.5.tgz#304c7cbfb59ee40389d436e1a822c17fe27936c6"
+ integrity sha512-I+vcaK9t4+kypiSgaiVWAipqHRXYmZIuAiS8vzFvXHHXVigg/sMKwlRgLy6LH2i3rmP+0Vzfl5lFsFRwF1r3pg==
react-dnd-html5-backend@2.5.4:
version "2.5.4"
@@ -11471,6 +11520,17 @@ react-dnd-scrollzone@^4.0.0:
raf "^3.2.0"
react-display-name "^0.2.0"
+react-dnd-scrollzone@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/react-dnd-scrollzone/-/react-dnd-scrollzone-5.0.0.tgz#9c50fe6c0cc87b646f36f52a610829fda8709868"
+ integrity sha512-iRiHIeHI8/0JcVxIAyYEpBMprT8brj7wC85qGcKQ34BJTU6+fXnfbEHn7OKXu7FbBy24PBFCbf8FZg7uwS9kTQ==
+ dependencies:
+ hoist-non-react-statics "3.x"
+ lodash.throttle "^4.0.1"
+ prop-types "^15.5.9"
+ raf "^3.2.0"
+ react-display-name "^0.2.0"
+
react-dnd-test-backend@^10.0.2:
version "10.0.2"
resolved "https://registry.yarnpkg.com/react-dnd-test-backend/-/react-dnd-test-backend-10.0.2.tgz#4f21b3bbf188ff5000dee1949e4053cb6e38080d"
@@ -11478,14 +11538,13 @@ react-dnd-test-backend@^10.0.2:
dependencies:
dnd-core "^10.0.2"
-react-dnd-touch-backend@^9.4.0:
- version "9.4.0"
- resolved "https://registry.yarnpkg.com/react-dnd-touch-backend/-/react-dnd-touch-backend-9.4.0.tgz#6784e71fad0904723e33e6710caafe36c62192a4"
- integrity sha512-yJjFhgslriSTIEXQ/Q5MrLnETJaoyRct+AsJ//e96WOH2pUNMGSxkl8RIb/IMhNysVnMc8frLIyT8dQxXAcmGA==
+react-dnd-touch-backend@^10.0.2:
+ version "10.0.2"
+ resolved "https://registry.yarnpkg.com/react-dnd-touch-backend/-/react-dnd-touch-backend-10.0.2.tgz#90cb916655539b838d49b8895e1813f8b874b3b4"
+ integrity sha512-+lW/Ern0dKyHToD0oP+Wc/ZD6l7qJazosLqbjzL7OnPlig6WxdlrHkJylOLkeAdZj41fIJJ551Lb57pIL0CcPw==
dependencies:
- "@types/invariant" "^2.2.30"
- dnd-core "^9.4.0"
- invariant "^2.2.4"
+ "@react-dnd/invariant" "^2.0.0"
+ dnd-core "^10.0.2"
react-dnd@2.5.4:
version "2.5.4"
@@ -11499,32 +11558,31 @@ react-dnd@2.5.4:
lodash "^4.2.0"
prop-types "^15.5.10"
-react-dnd@^9.4.0:
- version "9.4.0"
- resolved "https://registry.yarnpkg.com/react-dnd/-/react-dnd-9.4.0.tgz#eec87035c6360fb33a44932326b3369af011a41c"
- integrity sha512-jnLF8qKowCKTqSddfCiLx5+sb+HxO1qgdiAgbBeL8yuo5tRYNtKxZYn7+wVwNoyZuWEuM1Gw/Wsdhr+yb2RELQ==
+react-dnd@^10.0.2:
+ version "10.0.2"
+ resolved "https://registry.yarnpkg.com/react-dnd/-/react-dnd-10.0.2.tgz#a6ad8eb3d9f2c573031f7ce05012e5c767a0b1fc"
+ integrity sha512-SC2Ymvntynhoqtf5zaFhZscm9xenCoMofilxPdlwUlaelAzmbl9fw82C4ZJ//+lNm3kWAKXjGDZg2/aWjKEAtg==
dependencies:
+ "@react-dnd/shallowequal" "^2.0.0"
"@types/hoist-non-react-statics" "^3.3.1"
- "@types/shallowequal" "^1.1.1"
- dnd-core "^9.4.0"
+ dnd-core "^10.0.2"
hoist-non-react-statics "^3.3.0"
- shallowequal "^1.1.0"
react-docgen@^5.0.0:
- version "5.1.0"
- resolved "https://registry.yarnpkg.com/react-docgen/-/react-docgen-5.1.0.tgz#8e69f1d2e9153c535c20162ea1b85878b059b474"
- integrity sha512-buAVMVqDEtvC7+VRDRlA9udS9cO9jFfb7yxRvKNYR9MXS0MJwaIe7OjSEydNzH9oH7LND3whDE+koFDUBtF3zA==
+ version "5.2.1"
+ resolved "https://registry.yarnpkg.com/react-docgen/-/react-docgen-5.2.1.tgz#4fc0fd35966c83588e628d49f21c9208d93823a1"
+ integrity sha512-3nvsiDKN/KIlgRyHCdkLrm8ajjSMZ4NIHuwYTAdBvQF3O7A2tmCBB3gwTjJ4zXH8aUpIjFwlVIjffzkJHIZ5/Q==
dependencies:
"@babel/core" "^7.7.5"
"@babel/runtime" "^7.7.6"
ast-types "^0.13.2"
- async "^2.1.4"
commander "^2.19.0"
doctrine "^3.0.0"
+ neo-async "^2.6.1"
node-dir "^0.1.10"
strip-indent "^3.0.0"
-react-dom@^16.11.0, react-dom@^16.3.0, react-dom@^16.8.3:
+react-dom@^16.11.0, react-dom@^16.8.3:
version "16.12.0"
resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.12.0.tgz#0da4b714b8d13c2038c9396b54a92baea633fe11"
integrity sha512-LMxFfAGrcS3kETtQaCkTKjMiifahaMySFDn71fZUNpPHZQEzmk/GiAeIT8JSOrHB23fnuCOMruL2a8NYlw+8Gw==
@@ -11535,17 +11593,17 @@ react-dom@^16.11.0, react-dom@^16.3.0, react-dom@^16.8.3:
scheduler "^0.18.0"
react-draggable@^4.0.3:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/react-draggable/-/react-draggable-4.1.0.tgz#e1c5b774001e32f0bff397254e1e9d5448ac92a4"
- integrity sha512-Or/qe70cfymshqoC8Lsp0ukTzijJObehb7Vfl7tb5JRxoV+b6PDkOGoqYaWBzZ59k9dH/bwraLGsnlW78/3vrA==
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/react-draggable/-/react-draggable-4.2.0.tgz#40cc5209082ca7d613104bf6daf31372cc0e1114"
+ integrity sha512-5wFq//gEoeTYprnd4ze8GrFc+Rbnx+9RkOMR3vk4EbWxj02U6L6T3yrlKeiw4X5CtjD2ma2+b3WujghcXNRzkw==
dependencies:
classnames "^2.2.5"
prop-types "^15.6.0"
react-error-overlay@^6.0.3:
- version "6.0.3"
- resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.3.tgz#c378c4b0a21e88b2e159a3e62b2f531fd63bf60d"
- integrity sha512-bOUvMWFQVk5oz8Ded9Xb7WVdEi3QGLC8tH7HmYP0Fdp4Bn3qw0tRFmr5TW6mvahzvmrK4a6bqWGfCevBflP+Xw==
+ version "6.0.6"
+ resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.6.tgz#ac4d9dc4c1b5c536c2c312bf66aa2b09bfa384e2"
+ integrity sha512-Yzpno3enVzSrSCnnljmr4b/2KUQSMZaPuqmS26t9k4nW7uwJk6STWmH9heNjPuvqUTO3jOSPkHoKgO4+Dw7uIw==
react-fast-compare@^2.0.4:
version "2.0.4"
@@ -11607,31 +11665,32 @@ react-lifecycles-compat@^3.0.4:
integrity sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==
react-popper-tooltip@^2.8.3:
- version "2.10.0"
- resolved "https://registry.yarnpkg.com/react-popper-tooltip/-/react-popper-tooltip-2.10.0.tgz#4d8383644d1002a50bd2bf74b2d1214d84ffc77c"
- integrity sha512-iMNWaY41G7kcx2/kcV+37GLe4C93yI9CPZ9DH+V9tOtJIJwEzm/w9+mlr6G1QLzxefDxjliqymMXk9X73pyuWA==
+ version "2.10.1"
+ resolved "https://registry.yarnpkg.com/react-popper-tooltip/-/react-popper-tooltip-2.10.1.tgz#e10875f31916297c694d64a677d6f8fa0a48b4d1"
+ integrity sha512-cib8bKiyYcrIlHo9zXx81G0XvARfL8Jt+xum709MFCgQa3HTqTi4au3iJ9tm7vi7WU7ngnqbpWkMinBOtwo+IQ==
dependencies:
- "@babel/runtime" "^7.6.3"
- react-popper "^1.3.4"
+ "@babel/runtime" "^7.7.4"
+ react-popper "^1.3.6"
-react-popper@^1.3.4:
- version "1.3.6"
- resolved "https://registry.yarnpkg.com/react-popper/-/react-popper-1.3.6.tgz#32122f83af8fda01bdd4f86625ddacaf64fdd06d"
- integrity sha512-kLTfa9z8n+0jJvRVal9+vIuirg41rObg4Bbrvv/ZfsGPQDN9reyVVSxqnHF1ZNgXgV7x11PeUfd5ItF8DZnqhg==
+react-popper@^1.3.6:
+ version "1.3.7"
+ resolved "https://registry.yarnpkg.com/react-popper/-/react-popper-1.3.7.tgz#f6a3471362ef1f0d10a4963673789de1baca2324"
+ integrity sha512-nmqYTx7QVjCm3WUZLeuOomna138R1luC4EqkW3hxJUrAe+3eNz3oFCLYdnPwILfn0mX1Ew2c3wctrjlUMYYUww==
dependencies:
"@babel/runtime" "^7.1.2"
create-react-context "^0.3.0"
+ deep-equal "^1.1.1"
popper.js "^1.14.4"
prop-types "^15.6.1"
typed-styles "^0.0.7"
warning "^4.0.2"
react-sizeme@^2.6.7:
- version "2.6.10"
- resolved "https://registry.yarnpkg.com/react-sizeme/-/react-sizeme-2.6.10.tgz#9993dcb5e67fab94a8e5d078a0d3820609010f17"
- integrity sha512-OJAPQxSqbcpbsXFD+fr5ARw4hNSAOimWcaTOLcRkIqnTp9+IFWY0w3Qdw1sMez6Ao378aimVL/sW6TTsgigdOA==
+ version "2.6.12"
+ resolved "https://registry.yarnpkg.com/react-sizeme/-/react-sizeme-2.6.12.tgz#ed207be5476f4a85bf364e92042520499455453e"
+ integrity sha512-tL4sCgfmvapYRZ1FO2VmBmjPVzzqgHA7kI8lSJ6JS6L78jXFNRdOZFpXyK6P1NBZvKPPCZxReNgzZNUajAerZw==
dependencies:
- element-resize-detector "^1.1.15"
+ element-resize-detector "^1.2.1"
invariant "^2.2.4"
shallowequal "^1.1.0"
throttle-debounce "^2.1.0"
@@ -11689,7 +11748,7 @@ react-virtualized@^9.13.0, react-virtualized@^9.21.2:
prop-types "^15.6.0"
react-lifecycles-compat "^3.0.4"
-react@^16.11.0, react@^16.3.0, react@^16.8.3:
+react@^16.11.0, react@^16.8.3:
version "16.12.0"
resolved "https://registry.yarnpkg.com/react/-/react-16.12.0.tgz#0c0a9c6a142429e3614834d5a778e18aa78a0b83"
integrity sha512-fglqy3k5E+81pA8s+7K0/T3DBCF0ZDOher1elBFzF7O6arXJgzyu/FW+COxFvAWXJoJN9KIZbT2LXlukwphYTA==
@@ -11730,14 +11789,14 @@ read-pkg-up@^4.0.0:
find-up "^3.0.0"
read-pkg "^3.0.0"
-read-pkg-up@^6.0.0:
- version "6.0.0"
- resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-6.0.0.tgz#da75ce72762f2fa1f20c5a40d4dd80c77db969e3"
- integrity sha512-odtTvLl+EXo1eTsMnoUHRmg/XmXdTkwXVxy4VFE9Kp6cCq7b3l7QMdBndND3eAFzrbSAXC/WCUOQQ9rLjifKZw==
+read-pkg-up@^7.0.0:
+ version "7.0.1"
+ resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507"
+ integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==
dependencies:
- find-up "^4.0.0"
- read-pkg "^5.1.1"
- type-fest "^0.5.0"
+ find-up "^4.1.0"
+ read-pkg "^5.2.0"
+ type-fest "^0.8.1"
read-pkg@^1.0.0:
version "1.1.0"
@@ -11766,7 +11825,7 @@ read-pkg@^3.0.0:
normalize-package-data "^2.3.2"
path-type "^3.0.0"
-read-pkg@^5.1.1:
+read-pkg@^5.2.0:
version "5.2.0"
resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc"
integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==
@@ -11777,9 +11836,9 @@ read-pkg@^5.1.1:
type-fest "^0.6.0"
"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.0, readable-stream@^2.3.3, readable-stream@^2.3.5, readable-stream@^2.3.6, readable-stream@~2.3.3, readable-stream@~2.3.6:
- version "2.3.6"
- resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf"
- integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==
+ version "2.3.7"
+ resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57"
+ integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==
dependencies:
core-util-is "~1.0.0"
inherits "~2.0.3"
@@ -11790,9 +11849,9 @@ read-pkg@^5.1.1:
util-deprecate "~1.0.1"
"readable-stream@2 || 3", readable-stream@^3.0.2, readable-stream@^3.1.1:
- version "3.4.0"
- resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.4.0.tgz#a51c26754658e0a3c21dbf59163bd45ba6f447fc"
- integrity sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==
+ version "3.6.0"
+ resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198"
+ integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==
dependencies:
inherits "^2.0.3"
string_decoder "^1.1.1"
@@ -11865,9 +11924,9 @@ redux@^3.7.1:
symbol-observable "^1.0.3"
redux@^4.0.4:
- version "4.0.4"
- resolved "https://registry.yarnpkg.com/redux/-/redux-4.0.4.tgz#4ee1aeb164b63d6a1bcc57ae4aa0b6e6fa7a3796"
- integrity sha512-vKv4WdiJxOWKxK0yRoaK3Y4pxxB0ilzVx6dszU2W8wLxlb2yikRph4iV/ymtdJ6ZxpBLFbyrxklnT5yBbQSl3Q==
+ version "4.0.5"
+ resolved "https://registry.yarnpkg.com/redux/-/redux-4.0.5.tgz#4db5de5816e17891de8a80c424232d06f051d93f"
+ integrity sha512-VSz1uMAH24DM6MF72vcojpYPtrTUu3ByVWfPL1nPfVRb5mZVTve5GnNCUV53QM/BZ66xfWrm0CTWoM+Xlz8V1w==
dependencies:
loose-envify "^1.4.0"
symbol-observable "^1.2.0"
@@ -11878,9 +11937,9 @@ reflect.ownkeys@^0.2.0:
integrity sha1-dJrO7H8/34tj+SegSAnpDFwLNGA=
refractor@^2.4.1:
- version "2.10.0"
- resolved "https://registry.yarnpkg.com/refractor/-/refractor-2.10.0.tgz#4cc7efc0028a87924a9b31d82d129dec831a287b"
- integrity sha512-maW2ClIkm9IYruuFYGTqKzj+m31heq92wlheW4h7bOstP+gf8bocmMec+j7ljLcaB1CAID85LMB3moye31jH1g==
+ version "2.10.1"
+ resolved "https://registry.yarnpkg.com/refractor/-/refractor-2.10.1.tgz#166c32f114ed16fd96190ad21d5193d3afc7d34e"
+ integrity sha512-Xh9o7hQiQlDbxo5/XkOX6H+x/q8rmlmZKr97Ie1Q8ZM32IRRd3B/UxuA/yXDW79DBSXGWxm2yRTbcTVmAciJRw==
dependencies:
hastscript "^5.0.0"
parse-entities "^1.1.2"
@@ -11903,11 +11962,6 @@ regenerator-runtime@^0.11.0:
resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9"
integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==
-regenerator-runtime@^0.12.1:
- 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-runtime@^0.13.2, regenerator-runtime@^0.13.3:
version "0.13.3"
resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz#7cf6a77d8f5c6f60eb73c5fc1955b2ceb01e6bf5"
@@ -11928,7 +11982,7 @@ regex-not@^1.0.0, regex-not@^1.0.2:
extend-shallow "^3.0.2"
safe-regex "^1.1.0"
-regexp.prototype.flags@^1.3.0:
+regexp.prototype.flags@^1.2.0, regexp.prototype.flags@^1.3.0:
version "1.3.0"
resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz#7aba89b3c13a64509dabcf3ca8d9fbb9bdf5cb75"
integrity sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==
@@ -11995,9 +12049,9 @@ regjsparser@^0.1.4:
jsesc "~0.5.0"
regjsparser@^0.6.0:
- version "0.6.0"
- resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.6.0.tgz#f1e6ae8b7da2bae96c99399b868cd6c933a2ba9c"
- integrity sha512-RQ7YyokLiQBomUJuUG8iGVvkgOLxwyZM8k6d3q5SAXpg4r5TZJZigKFvC6PpD+qQ98bCDC5YelPeA3EucDoNeQ==
+ version "0.6.3"
+ resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.6.3.tgz#74192c5805d35e9f5ebe3c1fb5b40d40a8a38460"
+ integrity sha512-8uZvYbnfAtEm9Ab8NTb3hdLwL4g/LQzEYP7Xs27T96abJCCE2d6r3cPZPQEsLKy0vRSGVNG+/zVGtLr86HQduA==
dependencies:
jsesc "~0.5.0"
@@ -12060,7 +12114,7 @@ request-promise-core@1.1.3:
dependencies:
lodash "^4.17.15"
-request-promise-native@^1.0.5:
+request-promise-native@^1.0.5, request-promise-native@^1.0.7:
version "1.0.8"
resolved "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.8.tgz#a455b960b826e44e2bf8999af64dff2bfe58cb36"
integrity sha512-dapwLGqkHtwL5AEbfenuzjTYg35Jd6KPytsC2/TLkVMz8rm+tNt72MGUWT1RP/aYawMpN6HqbNGBQaRcBtjQMQ==
@@ -12070,9 +12124,9 @@ request-promise-native@^1.0.5:
tough-cookie "^2.3.3"
request@^2.87.0, request@^2.88.0:
- version "2.88.0"
- resolved "https://registry.yarnpkg.com/request/-/request-2.88.0.tgz#9c2fca4f7d35b592efe57c7f0a55e81052124fef"
- integrity sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==
+ version "2.88.2"
+ resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3"
+ integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==
dependencies:
aws-sign2 "~0.7.0"
aws4 "^1.8.0"
@@ -12081,7 +12135,7 @@ request@^2.87.0, request@^2.88.0:
extend "~3.0.2"
forever-agent "~0.6.1"
form-data "~2.3.2"
- har-validator "~5.1.0"
+ har-validator "~5.1.3"
http-signature "~1.2.0"
is-typedarray "~1.0.0"
isstream "~0.1.2"
@@ -12091,7 +12145,7 @@ request@^2.87.0, request@^2.88.0:
performance-now "^2.1.0"
qs "~6.5.2"
safe-buffer "^5.1.2"
- tough-cookie "~2.4.3"
+ tough-cookie "~2.5.0"
tunnel-agent "^0.6.0"
uuid "^3.3.2"
@@ -12120,12 +12174,12 @@ resize-observer-polyfill@^1.5.1:
resolved "https://registry.yarnpkg.com/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz#0e9020dd3d21024458d4ebd27e23e40269810464"
integrity sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==
-resolve-cwd@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a"
- integrity sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=
+resolve-cwd@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d"
+ integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==
dependencies:
- resolve-from "^3.0.0"
+ resolve-from "^5.0.0"
resolve-dir@^0.1.0:
version "0.1.1"
@@ -12160,10 +12214,10 @@ resolve@1.1.7:
resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b"
integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=
-resolve@^1.1.5, resolve@^1.1.6, resolve@^1.10.0, resolve@^1.11.0, resolve@^1.11.1, resolve@^1.12.0, resolve@^1.3.2, resolve@^1.4.0, resolve@^1.5.0:
- version "1.12.0"
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.12.0.tgz#3fc644a35c84a48554609ff26ec52b66fa577df6"
- integrity sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w==
+resolve@^1.1.5, resolve@^1.1.6, resolve@^1.10.0, resolve@^1.11.0, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.3.2, resolve@^1.4.0, resolve@^1.5.0:
+ version "1.15.1"
+ resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.15.1.tgz#27bdcdeffeaf2d6244b95bb0f9f4b4653451f3e8"
+ integrity sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w==
dependencies:
path-parse "^1.0.6"
@@ -12217,10 +12271,10 @@ rimraf@^2.2.8, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.2, rimraf@^2.6.3, rimra
dependencies:
glob "^7.1.3"
-rimraf@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.0.tgz#614176d4b3010b75e5c390eb0ee96f6dc0cebb9b"
- integrity sha512-NDGVxTsjqfunkds7CqsOiEnxln4Bo7Nddl3XhS4pXg5OzwkLqJ971ZVAAnB+DDLnF76N+VnDEiBHaVV8I06SUg==
+rimraf@^3.0.0, rimraf@^3.0.2:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a"
+ integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==
dependencies:
glob "^7.1.3"
@@ -12240,32 +12294,10 @@ rollup-plugin-babel@^4.0.3:
"@babel/helper-module-imports" "^7.0.0"
rollup-pluginutils "^2.8.1"
-rollup-plugin-commonjs@^10.1.0:
- version "10.1.0"
- resolved "https://registry.yarnpkg.com/rollup-plugin-commonjs/-/rollup-plugin-commonjs-10.1.0.tgz#417af3b54503878e084d127adf4d1caf8beb86fb"
- integrity sha512-jlXbjZSQg8EIeAAvepNwhJj++qJWNJw1Cl0YnOqKtP5Djx+fFGkp3WRh+W0ASCaFG5w1jhmzDxgu3SJuVxPF4Q==
- dependencies:
- estree-walker "^0.6.1"
- is-reference "^1.1.2"
- magic-string "^0.25.2"
- resolve "^1.11.0"
- rollup-pluginutils "^2.8.1"
-
-rollup-plugin-node-resolve@^5.2.0:
- version "5.2.0"
- resolved "https://registry.yarnpkg.com/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-5.2.0.tgz#730f93d10ed202473b1fb54a5997a7db8c6d8523"
- integrity sha512-jUlyaDXts7TW2CqQ4GaO5VJ4PwwaV8VUGA7+km3n6k6xtOEacf61u0VXwN80phY/evMcaS+9eIeJ9MOyDxt5Zw==
- dependencies:
- "@types/resolve" "0.0.8"
- builtin-modules "^3.1.0"
- is-module "^1.0.0"
- resolve "^1.11.1"
- rollup-pluginutils "^2.8.1"
-
-rollup-plugin-postcss@^2.0.3:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/rollup-plugin-postcss/-/rollup-plugin-postcss-2.0.4.tgz#da4e8ff43f4e1f45222decd193020bb5b8d8e583"
- integrity sha512-rYOa1eF4MzSig7L4lFtc1hGdcue1dX4yjFbRjC5hFpcYMjTnwsC8Atny3nDg6ynGYPZk2EAiZMTjixp5TfQOxA==
+rollup-plugin-postcss@^2.0.6:
+ version "2.0.6"
+ resolved "https://registry.yarnpkg.com/rollup-plugin-postcss/-/rollup-plugin-postcss-2.0.6.tgz#7e1c4e299e42cca170de7b789ecdd405a154c5a6"
+ integrity sha512-DTfIoKoC6ljQA4MmrPVbjnumWFx9tZAylDnduIhwJy9JQsq0iiVFmHy0c4cM//h7Auhf1RGB3FLqFuyNUcnExQ==
dependencies:
chalk "^2.4.2"
concat-with-sourcemaps "^1.0.5"
@@ -12289,10 +12321,10 @@ rollup-pluginutils@^2.0.1, rollup-pluginutils@^2.8.1:
dependencies:
estree-walker "^0.6.1"
-rollup@^1.27.0:
- version "1.29.1"
- resolved "https://registry.yarnpkg.com/rollup/-/rollup-1.29.1.tgz#8715d0a4ca439be3079f8095989ec8aa60f637bc"
- integrity sha512-dGQ+b9d1FOX/gluiggTAVnTvzQZUEkCi/TwZcax7ujugVRHs0nkYJlV9U4hsifGEMojnO+jvEML2CJQ6qXgbHA==
+rollup@^1.31.1:
+ version "1.31.1"
+ resolved "https://registry.yarnpkg.com/rollup/-/rollup-1.31.1.tgz#4170d6f87148d46e5fbe29b493f8f3ea3453c96f"
+ integrity sha512-2JREN1YdrS/kpPzEd33ZjtuNbOuBC3ePfuZBdKEybvqcEcszW1ckyVqzcEiEe0nE8sqHK+pbJg+PsAgRJ8+1dg==
dependencies:
"@types/estree" "*"
"@types/node" "*"
@@ -12325,10 +12357,10 @@ run-queue@^1.0.0, run-queue@^1.0.3:
dependencies:
aproba "^1.1.1"
-rxjs@^6.4.0:
- version "6.5.3"
- resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.5.3.tgz#510e26317f4db91a7eb1de77d9dd9ba0a4899a3a"
- integrity sha512-wuYsAYYFdWTAnAaPoKGNhfpWwKZbJW+HgAJ+mImp+Epl7BG8oNWBCTyRM8gba9k4lk8BgWdoYm21Mo/RYhhbgA==
+rxjs@^6.4.0, rxjs@^6.5.3:
+ version "6.5.4"
+ resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.5.4.tgz#e0777fe0d184cec7872df147f303572d414e211c"
+ integrity sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==
dependencies:
tslib "^1.9.0"
@@ -12403,15 +12435,7 @@ schema-utils@^1.0.0:
ajv-errors "^1.0.0"
ajv-keywords "^3.1.0"
-schema-utils@^2.0.0, schema-utils@^2.4.1:
- version "2.5.0"
- resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.5.0.tgz#8f254f618d402cc80257486213c8970edfd7c22f"
- integrity sha512-32ISrwW2scPXHUSusP8qMg5dLUawKkyV+/qIEV9JdXKx+rsM6mi8vZY8khg2M69Qom16rtroWXD3Ybtiws38gQ==
- dependencies:
- ajv "^6.10.2"
- ajv-keywords "^3.4.1"
-
-schema-utils@^2.0.1, schema-utils@^2.5.0, schema-utils@^2.6.1, schema-utils@^2.6.4:
+schema-utils@^2.0.1, schema-utils@^2.5.0, schema-utils@^2.6.0, schema-utils@^2.6.4:
version "2.6.4"
resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.6.4.tgz#a27efbf6e4e78689d91872ee3ccfa57d7bdd0f53"
integrity sha512-VNjcaUxVnEeun6B2fiiUDjXXBtD4ZSH7pdbfIu1pOFwgptDPLMo/z9jr4sUfsjFVPqDCEin/F7IYlq7/E6yDbQ==
@@ -12441,6 +12465,16 @@ semver@6.3.0, semver@^6.0.0, semver@^6.1.2, semver@^6.2.0, semver@^6.3.0:
resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d"
integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==
+semver@7.0.0:
+ version "7.0.0"
+ resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e"
+ integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==
+
+semver@^7.1.1:
+ version "7.1.3"
+ resolved "https://registry.yarnpkg.com/semver/-/semver-7.1.3.tgz#e4345ce73071c53f336445cfc19efb1c311df2a6"
+ integrity sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==
+
send@0.17.1:
version "0.17.1"
resolved "https://registry.yarnpkg.com/send/-/send-0.17.1.tgz#c1d8b059f7900f7466dd4938bdc44e11ddb376c8"
@@ -12460,20 +12494,15 @@ send@0.17.1:
range-parser "~1.2.1"
statuses "~1.5.0"
-serialize-javascript@^1.7.0:
- version "1.9.1"
- resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.9.1.tgz#cfc200aef77b600c47da9bb8149c943e798c2fdb"
- integrity sha512-0Vb/54WJ6k5v8sSWN09S0ora+Hnr+cX40r9F170nT+mSkaxltoE/7R3OrIdBSUv1OoiobH1QoWQbCnAO+e8J1A==
-
serialize-javascript@^2.1.2:
version "2.1.2"
resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-2.1.2.tgz#ecec53b0e0317bdc95ef76ab7074b7384785fa61"
integrity sha512-rs9OggEUF0V4jUSecXazOYsLfu7OGK2qIn3c7IPBiffz32XniEp/TX9Xmc9LQfK2nQ2QKHvZ2oygKUGU0lG4jQ==
serialize-to-js@^3.0.0:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/serialize-to-js/-/serialize-to-js-3.0.2.tgz#d71834a18135aff742e516d3b2208f662a46a8ac"
- integrity sha512-o5FqeMyxGx1wkp8p14q9QqGXh1JjXtIDYTr15N/B4ThM5ULqlpXdtOO84m950jFGvBkeRD1utW+WyNKvao2ybQ==
+ version "3.1.1"
+ resolved "https://registry.yarnpkg.com/serialize-to-js/-/serialize-to-js-3.1.1.tgz#b3e77d0568ee4a60bfe66287f991e104d3a1a4ac"
+ integrity sha512-F+NGU0UHMBO4Q965tjw7rvieNVjlH6Lqi2emq/Lc9LUURYJbiCzmpi4Cy1OOjjVPtxu0c+NE85LU6968Wko5ZA==
serve-favicon@^2.5.0:
version "2.5.0"
@@ -12545,9 +12574,9 @@ shallow-copy@~0.0.1:
integrity sha1-QV9CcC1z2BAzApLMXuhurhoRoXA=
shallow-equal@^1.1.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/shallow-equal/-/shallow-equal-1.2.0.tgz#fd828d2029ff4e19569db7e19e535e94e2d1f5cc"
- integrity sha512-Z21pVxR4cXsfwpMKMhCEIO1PCi5sp7KEp+CmOpBQ+E8GpHwKOw2sEzk7sgblM3d/j4z4gakoWEoPcjK0VJQogA==
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/shallow-equal/-/shallow-equal-1.2.1.tgz#4c16abfa56043aa20d050324efa68940b0da79da"
+ integrity sha512-S4vJDjHHMBaiZuT9NPb616CSmLf618jawtv3sufLl6ivK8WocjAo58cXwbRV1cgqxH0Qbv+iUt6m05eqEa2IRA==
shallowequal@^1.1.0:
version "1.1.0"
@@ -12644,7 +12673,7 @@ simplebar@^4.2.3:
lodash.throttle "^4.1.1"
resize-observer-polyfill "^1.5.1"
-sisteransi@^1.0.3:
+sisteransi@^1.0.4:
version "1.0.4"
resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.4.tgz#386713f1ef688c7c0304dc4c0632898941cad2e3"
integrity sha512-/ekMoM4NJ59ivGSfKapeG+FWtrmWvA1p6FBZwXrqojw90vJu8lBmrTxCMuBCydKtkaUe2zt4PlxeTKpjwMbyig==
@@ -12659,6 +12688,11 @@ slash@^2.0.0:
resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44"
integrity sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==
+slash@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634"
+ integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==
+
slice-ansi@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz#cacd7693461a637a5788d92a7dd4fba068e81636"
@@ -12744,11 +12778,11 @@ source-list-map@^2.0.0:
integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==
source-map-resolve@^0.5.0:
- version "0.5.2"
- resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.2.tgz#72e2cc34095543e43b2c62b2c4c10d4a9054f259"
- integrity sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==
+ version "0.5.3"
+ resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a"
+ integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==
dependencies:
- atob "^2.1.1"
+ atob "^2.1.2"
decode-uri-component "^0.2.0"
resolve-url "^0.2.1"
source-map-url "^0.4.0"
@@ -12783,14 +12817,14 @@ source-map@^0.7.3:
integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==
sourcemap-codec@^1.4.4:
- version "1.4.6"
- resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.6.tgz#e30a74f0402bad09807640d39e971090a08ce1e9"
- integrity sha512-1ZooVLYFxC448piVLBbtOxFcXwnymH9oUF8nRd3CuYDVvkRBxRl6pB4Mtas5a4drtL+E8LDgFkQNcgIw6tc8Hg==
+ version "1.4.8"
+ resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4"
+ integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==
space-separated-tokens@^1.0.0:
- version "1.1.4"
- resolved "https://registry.yarnpkg.com/space-separated-tokens/-/space-separated-tokens-1.1.4.tgz#27910835ae00d0adfcdbd0ad7e611fb9544351fa"
- integrity sha512-UyhMSmeIqZrQn2UdjYpxEkwY9JUrn8pP+7L4f91zRzOQuI8MF1FGLfYU9DKCYeLdo7LXMxwrX5zKFy7eeeVHuA==
+ version "1.1.5"
+ resolved "https://registry.yarnpkg.com/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz#85f32c3d10d9682007e917414ddc5c26d1aa6899"
+ integrity sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==
spdx-correct@^3.0.0:
version "3.1.0"
@@ -12898,32 +12932,33 @@ stack-utils@^1.0.1:
resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-1.0.2.tgz#33eba3897788558bebfc2db059dc158ec36cebb8"
integrity sha512-MTX+MeG5U994cazkjd/9KNAapsHnibjMLnfXodlkXw76JEea0UiNzrqidzo1emMwk7w5Qhc9jd4Bn9TBb1MFwA==
-standard-version@^7.0.0:
- version "7.0.1"
- resolved "https://registry.yarnpkg.com/standard-version/-/standard-version-7.0.1.tgz#33e950cf5c571ae0358a7ffae2292aa4547dc504"
- integrity sha512-3GR9dPlNpC/osTwb9YsU2KQelGvSORMPUFN7zOUE3HN4yjCTsT57IJAFsyPXPP512QDMSxwwjhxa8Em5vF5F5Q==
+standard-version@^7.1.0:
+ version "7.1.0"
+ resolved "https://registry.yarnpkg.com/standard-version/-/standard-version-7.1.0.tgz#021dd79eac749548677c876d5a94791df50f1f36"
+ integrity sha512-bHY2E/1tYGeVl+0XSXFivb+54h2fA4pWJocXAd6FGbtSFUvGsnfmMbIXYDxrYErpq7oEqoKreV8xTAp78WoATA==
dependencies:
chalk "2.4.2"
- conventional-changelog "3.1.12"
+ conventional-changelog "3.1.15"
conventional-changelog-config-spec "2.1.0"
- conventional-recommended-bump "6.0.2"
+ conventional-changelog-conventionalcommits "4.2.3"
+ conventional-recommended-bump "6.0.5"
detect-indent "6.0.0"
- detect-newline "3.0.0"
+ detect-newline "3.1.0"
dotgitignore "2.1.0"
- figures "3.0.0"
+ figures "3.1.0"
find-up "4.1.0"
fs-access "1.0.1"
- git-semver-tags "3.0.0"
+ git-semver-tags "3.0.1"
semver "6.3.0"
stringify-package "1.0.1"
- yargs "14.2.0"
+ yargs "15.0.2"
static-eval@^2.0.0:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/static-eval/-/static-eval-2.0.2.tgz#2d1759306b1befa688938454c546b7871f806a42"
- integrity sha512-N/D219Hcr2bPjLxPiV+TQE++Tsmrady7TqAJugLy7Xk1EumfDWS/f5dtBbkRCGE7wKKXuYockQoj8Rm2/pVKyg==
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/static-eval/-/static-eval-2.0.3.tgz#cb62fc79946bd4d5f623a45ad428233adace4d72"
+ integrity sha512-zsxDGucfAh8T339sSKgpFbvg15Fms2IVaJGC+jqp0bVsxhcpM+iMeAI8weNo8dmf4OblgifTBUoyk1vGVtYw2w==
dependencies:
- escodegen "^1.8.1"
+ escodegen "^1.11.1"
static-extend@^0.1.1:
version "0.1.2"
@@ -12996,9 +13031,9 @@ stream-http@^2.7.2:
xtend "^4.0.0"
stream-shift@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz#d5c752825e5367e786f78e18e445ea223a155952"
- integrity sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d"
+ integrity sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==
strict-uri-encode@^1.0.0:
version "1.1.0"
@@ -13010,13 +13045,13 @@ string-hash@^1.1.1:
resolved "https://registry.yarnpkg.com/string-hash/-/string-hash-1.1.3.tgz#e8aafc0ac1855b4666929ed7dd1275df5d6c811b"
integrity sha1-6Kr8CsGFW0Zmkp7X3RJ1311sgRs=
-string-length@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/string-length/-/string-length-2.0.0.tgz#d40dbb686a3ace960c1cffca562bf2c45f8363ed"
- integrity sha1-1A27aGo6zpYMHP/KVivyxF+DY+0=
+string-length@^3.1.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/string-length/-/string-length-3.1.0.tgz#107ef8c23456e187a8abd4a61162ff4ac6e25837"
+ integrity sha512-Ttp5YvkGm5v9Ijagtaz1BnN+k9ObpvS0eIBblPMp2YWL8FBmi9qblQ9fexc2k/CXFgrTIteU3jAw3payCnwSTA==
dependencies:
astral-regex "^1.0.0"
- strip-ansi "^4.0.0"
+ strip-ansi "^5.2.0"
string-width@^1.0.1:
version "1.0.2"
@@ -13044,7 +13079,7 @@ string-width@^3.0.0, string-width@^3.1.0:
is-fullwidth-code-point "^2.0.0"
strip-ansi "^5.1.0"
-string-width@^4.0.0, string-width@^4.1.0:
+string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0:
version "4.2.0"
resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.0.tgz#952182c46cc7b2c313d1596e623992bd163b72b5"
integrity sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==
@@ -13053,7 +13088,7 @@ string-width@^4.0.0, string-width@^4.1.0:
is-fullwidth-code-point "^3.0.0"
strip-ansi "^6.0.0"
-"string.prototype.matchall@^4.0.0 || ^3.0.1":
+"string.prototype.matchall@^4.0.0 || ^3.0.1", string.prototype.matchall@^4.0.2:
version "4.0.2"
resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.2.tgz#48bb510326fb9fdeb6a33ceaa81a6ea04ef7648e"
integrity sha512-N/jp6O5fMf9os0JU3E72Qhf590RSRZU/ungsL/qJUYVTNv7hTG0P/dbPjxINVN9jpscu3nzYwKESU3P3RY5tOg==
@@ -13066,38 +13101,28 @@ string-width@^4.0.0, string-width@^4.1.0:
side-channel "^1.0.2"
string.prototype.padend@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/string.prototype.padend/-/string.prototype.padend-3.0.0.tgz#f3aaef7c1719f170c5eab1c32bf780d96e21f2f0"
- integrity sha1-86rvfBcZ8XDF6rHDK/eA2W4h8vA=
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/string.prototype.padend/-/string.prototype.padend-3.1.0.tgz#dc08f57a8010dc5c153550318f67e13adbb72ac3"
+ integrity sha512-3aIv8Ffdp8EZj8iLwREGpQaUZiPyrWrpzMBHvkiSW/bK/EGve9np07Vwy7IJ5waydpGXzQZu/F8Oze2/IWkBaA==
dependencies:
- define-properties "^1.1.2"
- es-abstract "^1.4.3"
- function-bind "^1.0.2"
+ define-properties "^1.1.3"
+ es-abstract "^1.17.0-next.1"
string.prototype.padstart@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/string.prototype.padstart/-/string.prototype.padstart-3.0.0.tgz#5bcfad39f4649bb2d031292e19bcf0b510d4b242"
- integrity sha1-W8+tOfRkm7LQMSkuGbzwtRDUskI=
- dependencies:
- define-properties "^1.1.2"
- es-abstract "^1.4.3"
- function-bind "^1.0.2"
-
-string.prototype.trim@^1.1.2:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.0.tgz#75a729b10cfc1be439543dae442129459ce61e3d"
- integrity sha512-9EIjYD/WdlvLpn987+ctkLf0FfvBefOCuiEr2henD8X+7jfwPnyvTdmW8OJhj5p+M0/96mBdynLWkxUr+rHlpg==
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/string.prototype.padstart/-/string.prototype.padstart-3.1.0.tgz#b47c087540d0710be5a49375751a0a627bd4ff90"
+ integrity sha512-envqZvUp2JItI+OeQ5UAh1ihbAV5G/2bixTojvlIa090GGqF+NQRxbWb2nv9fTGrZABv6+pE6jXoAZhhS2k4Hw==
dependencies:
define-properties "^1.1.3"
- es-abstract "^1.13.0"
- function-bind "^1.1.1"
+ es-abstract "^1.17.0-next.1"
-string.prototype.trimleft@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz#6cc47f0d7eb8d62b0f3701611715a3954591d634"
- integrity sha512-FJ6b7EgdKxxbDxc79cOlok6Afd++TTs5szo+zJTUyow3ycrRfJVE2pq3vcN53XexvKZu/DJMDfeI/qMiZTrjTw==
+string.prototype.trim@^1.2.1:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.1.tgz#141233dff32c82bfad80684d7e5f0869ee0fb782"
+ integrity sha512-MjGFEeqixw47dAMFMtgUro/I0+wNqZB5GKXGt1fFr24u3TzDXCPu7J9Buppzoe3r/LqkSDLDDJzE15RGWDGAVw==
dependencies:
define-properties "^1.1.3"
+ es-abstract "^1.17.0-next.1"
function-bind "^1.1.1"
string.prototype.trimleft@^2.1.1:
@@ -13108,14 +13133,6 @@ string.prototype.trimleft@^2.1.1:
define-properties "^1.1.3"
function-bind "^1.1.1"
-string.prototype.trimright@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.1.0.tgz#669d164be9df9b6f7559fa8e89945b168a5a6c58"
- integrity sha512-fXZTSV55dNBwv16uw+hh5jkghxSnc5oHq+5K/gXgizHwAvMetdAJlHqqoFC1FSDVPYWLkAKl2cxpUT41sV7nSg==
- dependencies:
- define-properties "^1.1.3"
- function-bind "^1.1.1"
-
string.prototype.trimright@^2.1.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.1.1.tgz#440314b15996c866ce8a0341894d45186200c5d9"
@@ -13183,11 +13200,21 @@ strip-bom@^3.0.0:
resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=
+strip-bom@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878"
+ integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==
+
strip-eof@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf"
integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=
+strip-final-newline@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad"
+ integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==
+
strip-indent@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2"
@@ -13277,17 +13304,25 @@ supports-color@^6.1.0:
dependencies:
has-flag "^3.0.0"
-supports-color@^7.1.0:
+supports-color@^7.0.0, supports-color@^7.1.0:
version "7.1.0"
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.1.0.tgz#68e32591df73e25ad1c4b49108a2ec507962bfd1"
integrity sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==
dependencies:
has-flag "^4.0.0"
+supports-hyperlinks@^2.0.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.1.0.tgz#f663df252af5f37c5d49bbd7eeefa9e0b9e59e47"
+ integrity sha512-zoE5/e+dnEijk6ASB6/qrK+oYdm2do1hjoLWrqUC/8WEIW1gbxFcKuBof7sW8ArN6e+AYvsE8HBGiVRWL/F5CA==
+ dependencies:
+ has-flag "^4.0.0"
+ supports-color "^7.0.0"
+
svg-parser@^2.0.0:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/svg-parser/-/svg-parser-2.0.2.tgz#d134cc396fa2681dc64f518330784e98bd801ec8"
- integrity sha512-1gtApepKFweigFZj3sGO8KT8LvVZK8io146EzXrpVuWCDAbISz/yMucco3hWTkpZNoPabM+dnMOpy6Swue68Zg==
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/svg-parser/-/svg-parser-2.0.3.tgz#a38f2e4e5442986f7ecb554c11f1411cfcf8c2b9"
+ integrity sha512-fnCWiifNhK8i2Z7b9R5tbNahpxrRdAaQbnoxKlT2KrSCj9Kq/yBSgulCRgBJRhy1dPnSY5slg5ehPUnzpEcHlg==
svgo@^1.0.0, svgo@^1.2.2, svgo@^1.3.2:
version "1.3.2"
@@ -13319,12 +13354,12 @@ symbol-tree@^3.2.2:
integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==
symbol.prototype.description@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/symbol.prototype.description/-/symbol.prototype.description-1.0.1.tgz#e44e5db04d977932d1a261570bf65312773406d0"
- integrity sha512-smeS1BCkN6lcz1XveFK+cfvfBmNJ6dcPi6lgOnLUU8Po8SmV+rtmYGObbNOisW9RHWMyUfsgMA+eTQg+b3v9Vg==
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/symbol.prototype.description/-/symbol.prototype.description-1.0.2.tgz#f325e1e6ad534b3b29c9c3ca73c136c9ce03c5e2"
+ integrity sha512-2CW5SU4/Ki1cYOOHcL2cXK4rxSg5hCU1TwZ7X4euKhV9VnfqKslh7T6/UyKkubA8cq2tOmsOv7m3ZUmQslBRuw==
dependencies:
- es-abstract "^1.16.0"
- has-symbols "^1.0.0"
+ es-abstract "^1.17.0-next.1"
+ has-symbols "^1.0.1"
table@^5.2.3:
version "5.4.6"
@@ -13364,33 +13399,6 @@ tar-stream@^1.1.2, tar-stream@^1.5.4:
to-buffer "^1.1.1"
xtend "^4.0.0"
-tar@^4:
- version "4.4.13"
- resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.13.tgz#43b364bc52888d555298637b10d60790254ab525"
- integrity sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA==
- dependencies:
- chownr "^1.1.1"
- fs-minipass "^1.2.5"
- minipass "^2.8.6"
- minizlib "^1.2.1"
- mkdirp "^0.5.0"
- safe-buffer "^5.1.2"
- yallist "^3.0.3"
-
-telejson@^3.0.2:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/telejson/-/telejson-3.1.0.tgz#c648479afe0d8edd90aeaf478b0b8a2fe9f59513"
- integrity sha512-mhiVy+xp2atri1bzSzdy/gVGXlOhibaoZ092AUq5xhnrZGdzhF0fLaOduHJQghkro+qmjYMwhsOL9CkD2zTicg==
- dependencies:
- "@types/is-function" "^1.0.0"
- global "^4.4.0"
- is-function "^1.0.1"
- is-regex "^1.0.4"
- is-symbol "^1.0.2"
- isobject "^4.0.0"
- lodash "^4.17.15"
- memoizerific "^1.11.3"
-
telejson@^3.2.0:
version "3.3.0"
resolved "https://registry.yarnpkg.com/telejson/-/telejson-3.3.0.tgz#6d814f3c0d254d5c4770085aad063e266b56ad03"
@@ -13413,34 +13421,43 @@ term-size@^1.2.0:
execa "^0.7.0"
term-size@^2.1.0:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/term-size/-/term-size-2.2.0.tgz#1f16adedfe9bdc18800e1776821734086fcc6753"
+ integrity sha512-a6sumDlzyHVJWb8+YofY4TW112G6p2FCPEAFk+59gIYHv3XHRhm9ltVQ9kli4hNWeQBwSpe8cRN25x0ROunMOw==
+
+terminal-link@^2.0.0:
version "2.1.1"
- resolved "https://registry.yarnpkg.com/term-size/-/term-size-2.1.1.tgz#f81ec25854af91a480d2f9d0c77ffcb26594ed1a"
- integrity sha512-UqvQSch04R+69g4RDhrslmGvGL3ucDRX/U+snYW0Mab4uCAyKSndUksaoqlJ81QKSpRnIsuOYQCbC2ZWx2896A==
+ resolved "https://registry.yarnpkg.com/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994"
+ integrity sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==
+ dependencies:
+ ansi-escapes "^4.2.1"
+ supports-hyperlinks "^2.0.0"
-terser-webpack-plugin@^1.4.1:
- version "1.4.1"
- resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.4.1.tgz#61b18e40eaee5be97e771cdbb10ed1280888c2b4"
- integrity sha512-ZXmmfiwtCLfz8WKZyYUuuHf3dMYEjg8NrjHMb0JqHVHVOSkzp3cW2/XG1fP3tRhqEqSzMwzzRQGtAPbs4Cncxg==
+terser-webpack-plugin@^1.4.3:
+ version "1.4.3"
+ resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.4.3.tgz#5ecaf2dbdc5fb99745fd06791f46fc9ddb1c9a7c"
+ integrity sha512-QMxecFz/gHQwteWwSo5nTc6UaICqN1bMedC5sMtUc7y3Ha3Q8y6ZO0iCR8pq4RJC8Hjf0FEPEHZqcMB/+DFCrA==
dependencies:
cacache "^12.0.2"
find-cache-dir "^2.1.0"
is-wsl "^1.1.0"
schema-utils "^1.0.0"
- serialize-javascript "^1.7.0"
+ serialize-javascript "^2.1.2"
source-map "^0.6.1"
terser "^4.1.2"
webpack-sources "^1.4.0"
worker-farm "^1.7.0"
terser-webpack-plugin@^2.1.2:
- version "2.3.2"
- resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-2.3.2.tgz#6d3d1b0590c8f729bfbaeb7fb2528b8b62db4c74"
- integrity sha512-SmvB/6gtEPv+CJ88MH5zDOsZdKXPS/Uzv2//e90+wM1IHFUhsguPKEILgzqrM1nQ4acRXN/SV4Obr55SXC+0oA==
+ version "2.3.5"
+ resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-2.3.5.tgz#5ad971acce5c517440ba873ea4f09687de2f4a81"
+ integrity sha512-WlWksUoq+E4+JlJ+h+U+QUzXpcsMSSNXkDy9lBVkSqDn1w23Gg29L/ary9GeJVYCGiNJJX7LnVc4bwL1N3/g1w==
dependencies:
cacache "^13.0.1"
find-cache-dir "^3.2.0"
- jest-worker "^24.9.0"
- schema-utils "^2.6.1"
+ jest-worker "^25.1.0"
+ p-limit "^2.2.2"
+ schema-utils "^2.6.4"
serialize-javascript "^2.1.2"
source-map "^0.6.1"
terser "^4.4.3"
@@ -13455,16 +13472,7 @@ terser@^3.7.3:
source-map "~0.6.1"
source-map-support "~0.5.10"
-terser@^4.1.2, terser@^4.3.9:
- version "4.4.0"
- resolved "https://registry.yarnpkg.com/terser/-/terser-4.4.0.tgz#22c46b4817cf4c9565434bfe6ad47336af259ac3"
- integrity sha512-oDG16n2WKm27JO8h4y/w3iqBGAOSCtq7k8dRmrn4Wf9NouL0b2WpMHGChFGZq4nFAQy1FsNJrVQHfurXOSTmOA==
- dependencies:
- commander "^2.20.0"
- source-map "~0.6.1"
- source-map-support "~0.5.12"
-
-terser@^4.4.3:
+terser@^4.1.2, terser@^4.3.9, terser@^4.4.3:
version "4.6.3"
resolved "https://registry.yarnpkg.com/terser/-/terser-4.6.3.tgz#e33aa42461ced5238d352d2df2a67f21921f8d87"
integrity sha512-Lw+ieAXmY69d09IIc/yqeBqXpEQIpDGZqT34ui1QWXIUpR2RjbqEkT8X7Lgex19hslSqcWM5iMN2kM11eMsESQ==
@@ -13483,6 +13491,15 @@ test-exclude@^5.2.3:
read-pkg-up "^4.0.0"
require-main-filename "^2.0.0"
+test-exclude@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e"
+ integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==
+ dependencies:
+ "@istanbuljs/schema" "^0.1.2"
+ glob "^7.1.4"
+ minimatch "^3.0.4"
+
text-extensions@^1.0.0:
version "1.9.0"
resolved "https://registry.yarnpkg.com/text-extensions/-/text-extensions-1.9.0.tgz#1853e45fee39c945ce6f6c36b2d659b5aabc2a26"
@@ -13493,15 +13510,15 @@ text-table@0.2.0, text-table@^0.2.0:
resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=
-textextensions@^2.4.0:
- version "2.5.0"
- resolved "https://registry.yarnpkg.com/textextensions/-/textextensions-2.5.0.tgz#e21d3831dafa37513dd80666dff541414e314293"
- integrity sha512-1IkVr355eHcomgK7fgj1Xsokturx6L5S2JRT5WcRdA6v5shk9sxWuO/w/VbpQexwkXJMQIa/j1dBi3oo7+HhcA==
+textextensions@^2.5.0:
+ version "2.6.0"
+ resolved "https://registry.yarnpkg.com/textextensions/-/textextensions-2.6.0.tgz#d7e4ab13fe54e32e08873be40d51b74229b00fc4"
+ integrity sha512-49WtAWS+tcsy93dRt6P0P3AMD2m5PvXRhuEA0kaXos5ZLlujtYmpmFsB+QvWUSxE1ZsstmYXfQ7L40+EcQgpAQ==
-throat@^4.0.0:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/throat/-/throat-4.1.0.tgz#89037cbc92c56ab18926e6ba4cbb200e15672a6a"
- integrity sha1-iQN8vJLFarGJJua6TLsgDhVnKmo=
+throat@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/throat/-/throat-5.0.0.tgz#c5199235803aad18754a667d659b5e72ce16764b"
+ integrity sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==
throttle-debounce@^2.1.0:
version "2.1.0"
@@ -13551,9 +13568,9 @@ tiny-emitter@^2.0.0:
integrity sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==
tiny-inflate@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/tiny-inflate/-/tiny-inflate-1.0.2.tgz#93d9decffc8805bd57eae4310f0b745e9b6fb3a7"
- integrity sha1-k9nez/yIBb1X6uQxDwt0Xptvs6c=
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/tiny-inflate/-/tiny-inflate-1.0.3.tgz#122715494913a1805166aaf7c93467933eea26c4"
+ integrity sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw==
tmp@^0.0.33:
version "0.0.33"
@@ -13629,7 +13646,7 @@ toidentifier@1.0.0:
resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553"
integrity sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==
-tough-cookie@^2.3.3, tough-cookie@^2.3.4, tough-cookie@^2.5.0:
+tough-cookie@^2.3.3, tough-cookie@^2.3.4, tough-cookie@^2.5.0, tough-cookie@~2.5.0:
version "2.5.0"
resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2"
integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==
@@ -13637,13 +13654,14 @@ tough-cookie@^2.3.3, tough-cookie@^2.3.4, tough-cookie@^2.5.0:
psl "^1.1.28"
punycode "^2.1.1"
-tough-cookie@~2.4.3:
- version "2.4.3"
- resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.4.3.tgz#53f36da3f47783b0925afa06ff9f3b165280f781"
- integrity sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==
+tough-cookie@^3.0.1:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-3.0.1.tgz#9df4f57e739c26930a018184887f4adb7dca73b2"
+ integrity sha512-yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg==
dependencies:
- psl "^1.1.24"
- punycode "^1.4.1"
+ ip-regex "^2.1.0"
+ psl "^1.1.28"
+ punycode "^2.1.1"
tr46@^1.0.1:
version "1.0.1"
@@ -13675,9 +13693,9 @@ trim-repeated@^1.0.0:
escape-string-regexp "^1.0.2"
ts-dedent@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/ts-dedent/-/ts-dedent-1.1.0.tgz#67983940793183dc7c7f820acb66ba02cdc33c6e"
- integrity sha512-CVCvDwMBWZKjDxpN3mU/Dx1v3k+sJgE8nrhXcC9vRopRfoa7vVzilNvHEAUi5jQnmFHpnxDx5jZdI1TpG8ny2g==
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/ts-dedent/-/ts-dedent-1.1.1.tgz#68fad040d7dbd53a90f545b450702340e17d18f3"
+ integrity sha512-UGTRZu1evMw4uTPyYF66/KFd22XiU+jMaIuHrkIHQ2GivAXVlLV0v/vHrpOuTRf9BmpNHi/SO7Vd0rLu0y57jg==
ts-pnp@^1.1.2:
version "1.1.5"
@@ -13713,10 +13731,10 @@ type-check@~0.3.2:
dependencies:
prelude-ls "~1.1.2"
-type-fest@^0.5.0, type-fest@^0.5.2:
- version "0.5.2"
- resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.5.2.tgz#d6ef42a0356c6cd45f49485c3b6281fc148e48a2"
- integrity sha512-DWkS49EQKVX//Tbupb9TFa19c7+MK1XmzkrZUR8TAktmE/DizXoaoJV6TZ/tSIPXipqNiRI6CyAe7x69Jb6RSw==
+type-detect@4.0.8:
+ version "4.0.8"
+ resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c"
+ integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==
type-fest@^0.6.0:
version "0.6.0"
@@ -13741,28 +13759,40 @@ typed-styles@^0.0.7:
resolved "https://registry.yarnpkg.com/typed-styles/-/typed-styles-0.0.7.tgz#93392a008794c4595119ff62dde6809dbc40a3d9"
integrity sha512-pzP0PWoZUhsECYjABgCGQlRGL1n7tOHsgwYv3oIiEpJwGhFTuty/YNeduxQYzXXa3Ge5BdT6sHYIQYpl4uJ+5Q==
+typedarray-to-buffer@^3.1.5:
+ version "3.1.5"
+ resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080"
+ integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==
+ dependencies:
+ is-typedarray "^1.0.0"
+
typedarray@^0.0.6:
version "0.0.6"
resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=
+typescript@^3.7.5:
+ version "3.7.5"
+ resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.7.5.tgz#0692e21f65fd4108b9330238aac11dd2e177a1ae"
+ integrity sha512-/P5lkRXkWHNAbcJIiHPfRoKqyd7bsyCma1hZNUGfn20qm64T6ZBlrzprymeu918H+mB/0rIg2gGK/BXkhhYgBw==
+
ua-parser-js@^0.7.18:
- version "0.7.20"
- resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.20.tgz#7527178b82f6a62a0f243d1f94fd30e3e3c21098"
- integrity sha512-8OaIKfzL5cpx8eCMAhhvTlft8GYF8b2eQr6JkCyVdrgjcytyOmPCXrqXFcUnhonRpLlh5yxEZVohm6mzaowUOw==
+ version "0.7.21"
+ resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.21.tgz#853cf9ce93f642f67174273cc34565ae6f308777"
+ integrity sha512-+O8/qh/Qj8CgC6eYBVBykMrNtp5Gebn4dlGD/kKXVkJNDwyrAwSIqwz8CDf+tsAIWVycKcku6gIXJ0qwx/ZXaQ==
uglify-js@^3.1.4:
- version "3.6.9"
- resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.6.9.tgz#85d353edb6ddfb62a9d798f36e91792249320611"
- integrity sha512-pcnnhaoG6RtrvHJ1dFncAe8Od6Nuy30oaJ82ts6//sGSXOP5UjBMEthiProjXmMNHOfd93sqlkztifFMcb+4yw==
+ version "3.7.7"
+ resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.7.7.tgz#21e52c7dccda80a53bf7cde69628a7e511aec9c9"
+ integrity sha512-FeSU+hi7ULYy6mn8PKio/tXsdSXN35lm4KgV2asx00kzrLU9Pi3oAslcJT70Jdj7PHX29gGUPOT6+lXGBbemhA==
dependencies:
commander "~2.20.3"
source-map "~0.6.1"
uncss@^0.17.2:
- version "0.17.2"
- resolved "https://registry.yarnpkg.com/uncss/-/uncss-0.17.2.tgz#fac1c2429be72108e8a47437c647d58cf9ea66f1"
- integrity sha512-hu2HquwDItuGDem4YsJROdAD8SknmWtM24zwhQax6J1se8tPjV1cnwPKhtjodzBaUhaL8Zb3hlGdZ2WAUpbAOg==
+ version "0.17.3"
+ resolved "https://registry.yarnpkg.com/uncss/-/uncss-0.17.3.tgz#50fc1eb4ed573ffff763458d801cd86e4d69ea11"
+ integrity sha512-ksdDWl81YWvF/X14fOSw4iu8tESDHFIeyKIeDrK6GEVTQvqJc1WlOEXqostNwOCi3qAj++4EaLsdAgPmUbEyog==
dependencies:
commander "^2.20.0"
glob "^7.1.4"
@@ -13918,13 +13948,13 @@ urix@^0.1.0:
integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=
url-loader@^2.0.1:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-2.2.0.tgz#af321aece1fd0d683adc8aaeb27829f29c75b46e"
- integrity sha512-G8nk3np8ZAnwhHXas1JxJEwJyQdqFXAKJehfgZ/XrC48volFBRtO+FIKtF2u0Ma3bw+4vnDVjHPAQYlF9p2vsw==
+ version "2.3.0"
+ resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-2.3.0.tgz#e0e2ef658f003efb8ca41b0f3ffbf76bab88658b"
+ integrity sha512-goSdg8VY+7nPZKUEChZSEtW5gjbS66USIGCeSJ1OVOJ7Yfuh/36YxCwMi5HVEJh6mqUYOoy3NJ0vlOMrWsSHog==
dependencies:
loader-utils "^1.2.3"
mime "^2.4.4"
- schema-utils "^2.4.1"
+ schema-utils "^2.5.0"
url-parse-lax@^1.0.0:
version "1.0.0"
@@ -13972,7 +14002,7 @@ util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1:
resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=
-util.promisify@1.0.0, util.promisify@^1.0.0, util.promisify@~1.0.0:
+util.promisify@1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030"
integrity sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==
@@ -13980,6 +14010,16 @@ util.promisify@1.0.0, util.promisify@^1.0.0, util.promisify@~1.0.0:
define-properties "^1.1.2"
object.getownpropertydescriptors "^2.0.3"
+util.promisify@^1.0.0, util.promisify@~1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.1.tgz#6baf7774b80eeb0f7520d8b81d07982a59abbaee"
+ integrity sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA==
+ dependencies:
+ define-properties "^1.1.3"
+ es-abstract "^1.17.2"
+ has-symbols "^1.0.1"
+ object.getownpropertydescriptors "^2.1.0"
+
util@0.10.3:
version "0.10.3"
resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9"
@@ -14005,15 +14045,24 @@ utils-merge@1.0.1:
integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=
uuid@^3.3.2:
- version "3.3.3"
- resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.3.tgz#4568f0216e78760ee1dbf3a4d2cf53e224112866"
- integrity sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ==
+ version "3.4.0"
+ resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee"
+ integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==
v8-compile-cache@^2.0.0, v8-compile-cache@^2.0.3:
version "2.1.0"
resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz#e14de37b31a6d194f5690d67efc4e7f6fc6ab30e"
integrity sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==
+v8-to-istanbul@^4.0.1:
+ version "4.1.2"
+ resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-4.1.2.tgz#387d173be5383dbec209d21af033dcb892e3ac82"
+ integrity sha512-G9R+Hpw0ITAmPSr47lSlc5A1uekSYzXxTMlFxso2xoffwo4jQnzbv1p9yXIinO8UMZKfAFewaCHwWvnH4Jb4Ug==
+ dependencies:
+ "@types/istanbul-lib-coverage" "^2.0.1"
+ convert-source-map "^1.6.0"
+ source-map "^0.7.3"
+
validate-npm-package-license@^3.0.1:
version "3.0.4"
resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a"
@@ -14035,9 +14084,9 @@ vary@~1.1.2:
integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=
vendors@^1.0.0:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/vendors/-/vendors-1.0.3.tgz#a6467781abd366217c050f8202e7e50cc9eef8c0"
- integrity sha512-fOi47nsJP5Wqefa43kyWSg80qF+Q3XA6MUkgi7Hp1HQaKDQW4cQrK2D0P7mmbFtsV1N89am55Yru/nyEwRubcw==
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/vendors/-/vendors-1.0.4.tgz#e2b800a53e7a29b93506c3cf41100d16c4c4ad8e"
+ integrity sha512-/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w==
verror@1.10.0:
version "1.10.0"
@@ -14081,13 +14130,6 @@ walker@^1.0.7, walker@~1.0.5:
dependencies:
makeerror "1.0.x"
-warning@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/warning/-/warning-3.0.0.tgz#32e5377cb572de4ab04753bdf8821c01ed605b7c"
- integrity sha1-MuU3fLVy3kqwR1O9+IIcAe1gW3w=
- dependencies:
- loose-envify "^1.0.0"
-
warning@^4.0.2, warning@^4.0.3:
version "4.0.3"
resolved "https://registry.yarnpkg.com/warning/-/warning-4.0.3.tgz#16e9e077eb8a86d6af7d64aa1e05fd85b4678ca3"
@@ -14161,9 +14203,9 @@ webpack-virtual-modules@^0.2.0:
debug "^3.0.0"
webpack@^4.33.0, webpack@^4.38.0:
- version "4.41.2"
- resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.41.2.tgz#c34ec76daa3a8468c9b61a50336d8e3303dce74e"
- integrity sha512-Zhw69edTGfbz9/8JJoyRQ/pq8FYUoY0diOXqW0T6yhgdhCv6wr0hra5DwwWexNRns2Z2+gsnrNcbe9hbGBgk/A==
+ version "4.41.6"
+ resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.41.6.tgz#12f2f804bf6542ef166755050d4afbc8f66ba7e1"
+ integrity sha512-yxXfV0Zv9WMGRD+QexkZzmGIh54bsvEs+9aRWxnN8erLWEOehAKUTeNBoUbA6HPEZPlRo7KDi2ZcNveoZgK9MA==
dependencies:
"@webassemblyjs/ast" "1.8.5"
"@webassemblyjs/helper-module-context" "1.8.5"
@@ -14185,7 +14227,7 @@ webpack@^4.33.0, webpack@^4.38.0:
node-libs-browser "^2.2.1"
schema-utils "^1.0.0"
tapable "^1.1.3"
- terser-webpack-plugin "^1.4.1"
+ terser-webpack-plugin "^1.4.3"
watchpack "^1.6.0"
webpack-sources "^1.4.1"
@@ -14243,7 +14285,7 @@ which-module@^2.0.0:
resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a"
integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=
-which@^1.2.12, which@^1.2.9, which@^1.3.0, which@^1.3.1:
+which@^1.2.12, which@^1.2.9, which@^1.3.1:
version "1.3.1"
resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a"
integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==
@@ -14251,9 +14293,9 @@ which@^1.2.12, which@^1.2.9, which@^1.3.0, which@^1.3.1:
isexe "^2.0.0"
which@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/which/-/which-2.0.1.tgz#f1cf94d07a8e571b6ff006aeb91d0300c47ef0a4"
- integrity sha512-N7GBZOTswtB9lkQBZA4+zAXrjEIWAUOB93AvzUiudRzRxhUdLURQ7D/gAIMY1gatT/LTbmbcv8SiYazy3eYB7w==
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1"
+ integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==
dependencies:
isexe "^2.0.0"
@@ -14311,6 +14353,15 @@ wrap-ansi@^5.1.0:
string-width "^3.0.0"
strip-ansi "^5.0.0"
+wrap-ansi@^6.2.0:
+ version "6.2.0"
+ resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53"
+ integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==
+ dependencies:
+ ansi-styles "^4.0.0"
+ string-width "^4.1.0"
+ strip-ansi "^6.0.0"
+
wrappy@1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
@@ -14334,6 +14385,16 @@ write-file-atomic@^2.0.0:
imurmurhash "^0.1.4"
signal-exit "^3.0.2"
+write-file-atomic@^3.0.0:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.1.tgz#558328352e673b5bb192cf86500d60b230667d4b"
+ integrity sha512-JPStrIyyVJ6oCSz/691fAjFtefZ6q+fP6tm+OS4Qw6o+TGQxNp1ziY2PgS+X/m0V8OWhZiO/m4xSj+Pr4RrZvw==
+ dependencies:
+ imurmurhash "^0.1.4"
+ is-typedarray "^1.0.0"
+ signal-exit "^3.0.2"
+ typedarray-to-buffer "^3.1.5"
+
write@1.0.3:
version "1.0.3"
resolved "https://registry.yarnpkg.com/write/-/write-1.0.3.tgz#0800e14523b923a387e415123c865616aae0f5c3"
@@ -14355,6 +14416,11 @@ ws@^6.1.2:
dependencies:
async-limiter "~1.0.0"
+ws@^7.0.0:
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/ws/-/ws-7.2.1.tgz#03ed52423cd744084b2cf42ed197c8b65a936b8e"
+ integrity sha512-sucePNSafamSKoOqoNfBd8V0StlkzJKL2ZAhGQinCfNQ+oacw+Pk7lcdAElecBF2VkLNZRiIb5Oi1Q5lVUVt2A==
+
xdg-basedir@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-3.0.0.tgz#496b2cc109eca8dbacfe2dc72b603c17c5870ad4"
@@ -14370,7 +14436,7 @@ xmlchars@^2.1.1:
resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb"
integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==
-xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.1:
+xtend@^4.0.0, xtend@~4.0.1:
version "4.0.2"
resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54"
integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==
@@ -14390,7 +14456,7 @@ yallist@^2.1.2:
resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52"
integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=
-yallist@^3.0.0, yallist@^3.0.2, yallist@^3.0.3:
+yallist@^3.0.2:
version "3.1.1"
resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd"
integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==
@@ -14414,14 +14480,6 @@ yargs-parser@^10.0.0:
dependencies:
camelcase "^4.1.0"
-yargs-parser@^13.1.1:
- version "13.1.1"
- resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.1.tgz#d26058532aa06d365fe091f6a1fc06b2f7e5eca0"
- integrity sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==
- dependencies:
- camelcase "^5.0.0"
- decamelize "^1.2.0"
-
yargs-parser@^15.0.0:
version "15.0.0"
resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-15.0.0.tgz#cdd7a97490ec836195f59f3f4dbe5ea9e8f75f08"
@@ -14430,10 +14488,35 @@ yargs-parser@^15.0.0:
camelcase "^5.0.0"
decamelize "^1.2.0"
-yargs@14.2.0, yargs@^14.0.0:
- version "14.2.0"
- resolved "https://registry.yarnpkg.com/yargs/-/yargs-14.2.0.tgz#f116a9242c4ed8668790b40759b4906c276e76c3"
- integrity sha512-/is78VKbKs70bVZH7w4YaZea6xcJWOAwkhbR0CFuZBmYtfTYF0xjGJF43AYd8g2Uii1yJwmS5GR2vBmrc32sbg==
+yargs-parser@^16.1.0:
+ version "16.1.0"
+ resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-16.1.0.tgz#73747d53ae187e7b8dbe333f95714c76ea00ecf1"
+ integrity sha512-H/V41UNZQPkUMIT5h5hiwg4QKIY1RPvoBV4XcjUbRM8Bk2oKqqyZ0DIEbTFZB0XjbtSPG8SAa/0DxCQmiRgzKg==
+ dependencies:
+ camelcase "^5.0.0"
+ decamelize "^1.2.0"
+
+yargs@15.0.2:
+ version "15.0.2"
+ resolved "https://registry.yarnpkg.com/yargs/-/yargs-15.0.2.tgz#4248bf218ef050385c4f7e14ebdf425653d13bd3"
+ integrity sha512-GH/X/hYt+x5hOat4LMnCqMd8r5Cv78heOMIJn1hr7QPPBqfeC6p89Y78+WB9yGDvfpCvgasfmWLzNzEioOUD9Q==
+ dependencies:
+ cliui "^6.0.0"
+ decamelize "^1.2.0"
+ find-up "^4.1.0"
+ get-caller-file "^2.0.1"
+ require-directory "^2.1.1"
+ require-main-filename "^2.0.0"
+ set-blocking "^2.0.0"
+ string-width "^4.2.0"
+ which-module "^2.0.0"
+ y18n "^4.0.0"
+ yargs-parser "^16.1.0"
+
+yargs@^14.0.0:
+ version "14.2.2"
+ resolved "https://registry.yarnpkg.com/yargs/-/yargs-14.2.2.tgz#2769564379009ff8597cdd38fba09da9b493c4b5"
+ integrity sha512-/4ld+4VV5RnrynMhPZJ/ZpOCGSCeghMykZ3BhdFBDa9Wy/RH6uEGNWDJog+aUlq+9OM1CFTgtYRW5Is1Po9NOA==
dependencies:
cliui "^5.0.0"
decamelize "^1.2.0"
@@ -14447,18 +14530,19 @@ yargs@14.2.0, yargs@^14.0.0:
y18n "^4.0.0"
yargs-parser "^15.0.0"
-yargs@^13.3.0:
- version "13.3.0"
- resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.0.tgz#4c657a55e07e5f2cf947f8a366567c04a0dedc83"
- integrity sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA==
+yargs@^15.0.0:
+ version "15.1.0"
+ resolved "https://registry.yarnpkg.com/yargs/-/yargs-15.1.0.tgz#e111381f5830e863a89550bd4b136bb6a5f37219"
+ integrity sha512-T39FNN1b6hCW4SOIk1XyTOWxtXdcen0t+XYrysQmChzSipvhBO8Bj0nK1ozAasdk24dNWuMZvr4k24nz+8HHLg==
dependencies:
- cliui "^5.0.0"
- find-up "^3.0.0"
+ cliui "^6.0.0"
+ decamelize "^1.2.0"
+ find-up "^4.1.0"
get-caller-file "^2.0.1"
require-directory "^2.1.1"
require-main-filename "^2.0.0"
set-blocking "^2.0.0"
- string-width "^3.0.0"
+ string-width "^4.2.0"
which-module "^2.0.0"
y18n "^4.0.0"
- yargs-parser "^13.1.1"
+ yargs-parser "^16.1.0"