From def92af022e94331c69200aca7ad232403485ad2 Mon Sep 17 00:00:00 2001 From: Dylan Vorster Date: Wed, 24 Jul 2019 00:31:31 +0200 Subject: [PATCH] lerna --- {images => docs/images}/canvasDrag.gif | Bin {images => docs/images}/createLink.gif | Bin {images => docs/images}/createPoint.gif | Bin {images => docs/images}/demo.gif | Bin {images => docs/images}/example1.jpg | Bin {images => docs/images}/example2.jpg | Bin {images => docs/images}/example3.jpg | Bin {images => docs/images}/example3.png | Bin {images => docs/images}/mouseDrag.gif | Bin {images => docs/images}/mouseWheel.gif | Bin {images => docs/images}/rjdDelete.gif | Bin {images => docs/images}/shiftClick.gif | Bin lerna.json | 5 + lib-all/README.md | 0 lib-all/index.ts | 22 + lib-all/package.json | 37 + lib-all/tsconfig.json | 13 + lib-all/webpack.config.js | 8 + lib-core/README.md | 3 + lib-core/index.ts | 33 + lib-core/package.json | 31 + {src => lib-core}/sass/_DiagramWidget.scss | 0 {src => lib-core}/sass/_LinkLayerWidget.scss | 0 {src => lib-core}/sass/_NodeLayerWidget.scss | 0 {src => lib-core}/sass/_NodeWidget.scss | 0 {src => lib-core}/sass/_PortWidget.scss | 0 lib-core/sass/main.scss | 5 + {src => lib-core/src}/BaseEntity.ts | 0 {src => lib-core/src}/DiagramEngine.ts | 220 -- {src => lib-core/src}/Toolkit.ts | 12 - {src => lib-core/src}/actions/BaseAction.ts | 0 .../src}/actions/MoveCanvasAction.ts | 0 .../src}/actions/MoveItemsAction.ts | 0 .../src}/actions/SelectingAction.ts | 0 .../src}/factories/AbstractFactory.ts | 0 .../src}/factories/AbstractLabelFactory.ts | 0 .../src}/factories/AbstractLinkFactory.ts | 0 .../src}/factories/AbstractNodeFactory.ts | 0 .../src}/factories/AbstractPortFactory.ts | 0 {src => lib-core/src}/models/BaseModel.ts | 0 {src => lib-core/src}/models/DiagramModel.ts | 0 {src => lib-core/src}/models/LabelModel.ts | 0 {src => lib-core/src}/models/LinkModel.ts | 0 {src => lib-core/src}/models/NodeModel.ts | 2 - {src => lib-core/src}/models/PointModel.ts | 0 {src => lib-core/src}/models/PortModel.ts | 0 .../src}/models/SelectionModel.ts | 0 {src => lib-core/src}/widgets/BaseWidget.tsx | 1 - .../src}/widgets/DiagramWidget.tsx | 18 +- {src => lib-core/src}/widgets/LinkWidget.tsx | 0 {src => lib-core/src}/widgets/NodeWidget.tsx | 1 - {src => lib-core/src}/widgets/PortWidget.tsx | 0 .../src}/widgets/layers/LinkLayerWidget.tsx | 0 .../src}/widgets/layers/NodeLayerWidget.tsx | 0 lib-core/tsconfig.json | 13 + lib-core/webpack.config.js | 8 + lib-defaults/README.md | 3 + lib-defaults/index.ts | 17 + lib-defaults/package.json | 36 + .../sass}/_DefaultLabelWidget.scss | 0 .../sass}/_DefaultLinkWidget.scss | 0 .../sass}/_DefaultNodeWidget.scss | 0 .../sass}/_DefaultPortWidget.scss | 0 lib-defaults/sass/index.scss | 4 + .../src/label}/DefaultLabelFactory.tsx | 7 +- .../src/label}/DefaultLabelModel.tsx | 9 +- .../src/label}/DefaultLabelWidget.tsx | 4 +- .../src/link}/DefaultLinkFactory.tsx | 11 +- .../src/link}/DefaultLinkModel.ts | 11 +- .../src/link}/DefaultLinkWidget.tsx | 84 +- .../src/node}/DefaultNodeFactory.ts | 7 +- .../src/node}/DefaultNodeModel.ts | 9 +- .../src/node}/DefaultNodeWidget.tsx | 7 +- .../src/port}/DefaultPortFactory.tsx | 4 +- .../src/port}/DefaultPortLabelWidget.tsx | 8 +- .../src/port}/DefaultPortModel.ts | 6 +- lib-defaults/tsconfig.json | 13 + lib-defaults/webpack.config.js | 8 + {demos => lib-demo-gallery}/index.tsx | 0 .../src}/.helpers/DemoWorkspaceWidget.tsx | 0 .../src}/.helpers/Helper.tsx | 0 .../src}/.helpers/demo.scss | 0 .../src}/demo-cloning/index.tsx | 0 .../src}/demo-custom-link1/index.tsx | 0 .../demo-custom-node1/DiamondNodeFactory.tsx | 0 .../demo-custom-node1/DiamondNodeModel.ts | 0 .../demo-custom-node1/DiamondNodeWidget.tsx | 0 .../demo-custom-node1/DiamondPortModel.ts | 0 .../demo-custom-node1/SimplePortFactory.ts | 0 .../src}/demo-custom-node1/index.tsx | 0 .../src}/demo-dagre/dagre-utils.ts | 0 .../src}/demo-dagre/index.tsx | 0 .../src}/demo-drag-and-drop/Application.ts | 0 .../components/BodyWidget.tsx | 0 .../components/TrayItemWidget.tsx | 0 .../components/TrayWidget.tsx | 0 .../src}/demo-drag-and-drop/index.tsx | 0 .../src}/demo-drag-and-drop/sass/main.scss | 0 .../src}/demo-grid/index.tsx | 0 .../src}/demo-labelled-links/index.tsx | 0 .../src}/demo-limit-points/index.tsx | 0 .../src}/demo-listeners/index.tsx | 0 .../src}/demo-locks/index.tsx | 0 .../src}/demo-mutate-graph/index.tsx | 0 .../src}/demo-performance/index.tsx | 0 .../src}/demo-serializing/index.tsx | 0 .../src}/demo-simple-flow/index.tsx | 0 .../src}/demo-simple/docs.md | 0 .../src}/demo-simple/index.tsx | 0 .../src}/demo-smart-routing/index.tsx | 0 .../src}/demo-zoom-to-fit/index.tsx | 0 .../tests-e2e}/E2EHelper.ts | 0 .../tests-e2e}/entry.js | 0 .../tests-e2e}/generate-e2e.js | 0 .../tests-e2e}/index.html | 0 .../tests-e2e}/simple-flow.test.ts | 0 .../tests-e2e}/simple.test.ts | 0 .../__snapshots__/storybook.test.tsx.snap | 0 .../tests-snapshots}/config.js | 0 .../tests-snapshots}/storybook.test.tsx | 0 .../tests-snapshots}/test_loader.tsx | 0 {demos => lib-demo-gallery}/tslint.json | 0 lib-demo-project/.babelrc | 10 + lib-demo-project/README.md | 1 + lib-demo-project/index.html | 12 + lib-demo-project/package.json | 28 + lib-demo-project/src/BodyWidget.tsx | 15 + .../custom-node-js/JSCustomNodeFactory.jsx | 24 + .../src/custom-node-js/JSCustomNodeModel.js | 29 + .../src/custom-node-js/JSCustomNodeWidget.jsx | 14 + .../custom-node-ts/TSCustomNodeFactory.tsx | 22 + .../src/custom-node-ts/TSCustomNodeModel.ts | 34 + .../src/custom-node-ts/TSCustomNodeWidget.tsx | 27 + lib-demo-project/src/main.css | 21 + lib-demo-project/src/main.tsx | 43 + lib-demo-project/tsconfig.json | 13 + lib-demo-project/webpack.config.js | 51 + lib-routing/README.md | 3 + lib-routing/package.json | 33 + .../src/engine}/PathFinding.ts | 15 +- lib-routing/src/engine/PathFindingEngine.ts | 233 ++ .../src/link/PathFindingLinkWidget.tsx | 291 ++ .../tests}/PathFinding.test.tsx | 0 package.json | 26 +- src/main.ts | 53 - src/sass/main.scss | 11 - tests/helpers/css-mock.js | 1 - tests/helpers/storybook-loader.js | 27 - tests/tslint.json | 9 - tsconfig.json | 7 +- webpack.config.js => webpack.shared.js | 25 +- yarn.lock | 2603 ++++++++++++++++- 152 files changed, 3771 insertions(+), 590 deletions(-) rename {images => docs/images}/canvasDrag.gif (100%) rename {images => docs/images}/createLink.gif (100%) rename {images => docs/images}/createPoint.gif (100%) rename {images => docs/images}/demo.gif (100%) rename {images => docs/images}/example1.jpg (100%) rename {images => docs/images}/example2.jpg (100%) rename {images => docs/images}/example3.jpg (100%) rename {images => docs/images}/example3.png (100%) rename {images => docs/images}/mouseDrag.gif (100%) rename {images => docs/images}/mouseWheel.gif (100%) rename {images => docs/images}/rjdDelete.gif (100%) rename {images => docs/images}/shiftClick.gif (100%) create mode 100644 lerna.json create mode 100644 lib-all/README.md create mode 100644 lib-all/index.ts create mode 100644 lib-all/package.json create mode 100644 lib-all/tsconfig.json create mode 100644 lib-all/webpack.config.js create mode 100644 lib-core/README.md create mode 100644 lib-core/index.ts create mode 100644 lib-core/package.json rename {src => lib-core}/sass/_DiagramWidget.scss (100%) rename {src => lib-core}/sass/_LinkLayerWidget.scss (100%) rename {src => lib-core}/sass/_NodeLayerWidget.scss (100%) rename {src => lib-core}/sass/_NodeWidget.scss (100%) rename {src => lib-core}/sass/_PortWidget.scss (100%) create mode 100644 lib-core/sass/main.scss rename {src => lib-core/src}/BaseEntity.ts (100%) rename {src => lib-core/src}/DiagramEngine.ts (58%) rename {src => lib-core/src}/Toolkit.ts (78%) rename {src => lib-core/src}/actions/BaseAction.ts (100%) rename {src => lib-core/src}/actions/MoveCanvasAction.ts (100%) rename {src => lib-core/src}/actions/MoveItemsAction.ts (100%) rename {src => lib-core/src}/actions/SelectingAction.ts (100%) rename {src => lib-core/src}/factories/AbstractFactory.ts (100%) rename {src => lib-core/src}/factories/AbstractLabelFactory.ts (100%) rename {src => lib-core/src}/factories/AbstractLinkFactory.ts (100%) rename {src => lib-core/src}/factories/AbstractNodeFactory.ts (100%) rename {src => lib-core/src}/factories/AbstractPortFactory.ts (100%) rename {src => lib-core/src}/models/BaseModel.ts (100%) rename {src => lib-core/src}/models/DiagramModel.ts (100%) rename {src => lib-core/src}/models/LabelModel.ts (100%) rename {src => lib-core/src}/models/LinkModel.ts (100%) rename {src => lib-core/src}/models/NodeModel.ts (96%) rename {src => lib-core/src}/models/PointModel.ts (100%) rename {src => lib-core/src}/models/PortModel.ts (100%) rename {src => lib-core/src}/models/SelectionModel.ts (100%) rename {src => lib-core/src}/widgets/BaseWidget.tsx (96%) rename {src => lib-core/src}/widgets/DiagramWidget.tsx (97%) rename {src => lib-core/src}/widgets/LinkWidget.tsx (100%) rename {src => lib-core/src}/widgets/NodeWidget.tsx (96%) rename {src => lib-core/src}/widgets/PortWidget.tsx (100%) rename {src => lib-core/src}/widgets/layers/LinkLayerWidget.tsx (100%) rename {src => lib-core/src}/widgets/layers/NodeLayerWidget.tsx (100%) create mode 100644 lib-core/tsconfig.json create mode 100644 lib-core/webpack.config.js create mode 100644 lib-defaults/README.md create mode 100644 lib-defaults/index.ts create mode 100644 lib-defaults/package.json rename {src/sass/defaults => lib-defaults/sass}/_DefaultLabelWidget.scss (100%) rename {src/sass/defaults => lib-defaults/sass}/_DefaultLinkWidget.scss (100%) rename {src/sass/defaults => lib-defaults/sass}/_DefaultNodeWidget.scss (100%) rename {src/sass/defaults => lib-defaults/sass}/_DefaultPortWidget.scss (100%) create mode 100644 lib-defaults/sass/index.scss rename {src/defaults/factories => lib-defaults/src/label}/DefaultLabelFactory.tsx (62%) rename {src/defaults/models => lib-defaults/src/label}/DefaultLabelModel.tsx (64%) rename {src/defaults/widgets => lib-defaults/src/label}/DefaultLabelWidget.tsx (72%) rename {src/defaults/factories => lib-defaults/src/link}/DefaultLinkFactory.tsx (71%) rename {src/defaults/models => lib-defaults/src/link}/DefaultLinkModel.ts (80%) rename {src/defaults/widgets => lib-defaults/src/link}/DefaultLinkWidget.tsx (76%) rename {src/defaults/factories => lib-defaults/src/node}/DefaultNodeFactory.ts (65%) rename {src/defaults/models => lib-defaults/src/node}/DefaultNodeModel.ts (80%) rename {src/defaults/widgets => lib-defaults/src/node}/DefaultNodeWidget.tsx (81%) rename {src/defaults/factories => lib-defaults/src/port}/DefaultPortFactory.tsx (62%) rename {src/defaults/widgets => lib-defaults/src/port}/DefaultPortLabelWidget.tsx (77%) rename {src/defaults/models => lib-defaults/src/port}/DefaultPortModel.ts (81%) create mode 100644 lib-defaults/tsconfig.json create mode 100644 lib-defaults/webpack.config.js rename {demos => lib-demo-gallery}/index.tsx (100%) rename {demos => lib-demo-gallery/src}/.helpers/DemoWorkspaceWidget.tsx (100%) rename {demos => lib-demo-gallery/src}/.helpers/Helper.tsx (100%) rename {demos => lib-demo-gallery/src}/.helpers/demo.scss (100%) rename {demos => lib-demo-gallery/src}/demo-cloning/index.tsx (100%) rename {demos => lib-demo-gallery/src}/demo-custom-link1/index.tsx (100%) rename {demos => lib-demo-gallery/src}/demo-custom-node1/DiamondNodeFactory.tsx (100%) rename {demos => lib-demo-gallery/src}/demo-custom-node1/DiamondNodeModel.ts (100%) rename {demos => lib-demo-gallery/src}/demo-custom-node1/DiamondNodeWidget.tsx (100%) rename {demos => lib-demo-gallery/src}/demo-custom-node1/DiamondPortModel.ts (100%) rename {demos => lib-demo-gallery/src}/demo-custom-node1/SimplePortFactory.ts (100%) rename {demos => lib-demo-gallery/src}/demo-custom-node1/index.tsx (100%) rename {demos => lib-demo-gallery/src}/demo-dagre/dagre-utils.ts (100%) rename {demos => lib-demo-gallery/src}/demo-dagre/index.tsx (100%) rename {demos => lib-demo-gallery/src}/demo-drag-and-drop/Application.ts (100%) rename {demos => lib-demo-gallery/src}/demo-drag-and-drop/components/BodyWidget.tsx (100%) rename {demos => lib-demo-gallery/src}/demo-drag-and-drop/components/TrayItemWidget.tsx (100%) rename {demos => lib-demo-gallery/src}/demo-drag-and-drop/components/TrayWidget.tsx (100%) rename {demos => lib-demo-gallery/src}/demo-drag-and-drop/index.tsx (100%) rename {demos => lib-demo-gallery/src}/demo-drag-and-drop/sass/main.scss (100%) rename {demos => lib-demo-gallery/src}/demo-grid/index.tsx (100%) rename {demos => lib-demo-gallery/src}/demo-labelled-links/index.tsx (100%) rename {demos => lib-demo-gallery/src}/demo-limit-points/index.tsx (100%) rename {demos => lib-demo-gallery/src}/demo-listeners/index.tsx (100%) rename {demos => lib-demo-gallery/src}/demo-locks/index.tsx (100%) rename {demos => lib-demo-gallery/src}/demo-mutate-graph/index.tsx (100%) rename {demos => lib-demo-gallery/src}/demo-performance/index.tsx (100%) rename {demos => lib-demo-gallery/src}/demo-serializing/index.tsx (100%) rename {demos => lib-demo-gallery/src}/demo-simple-flow/index.tsx (100%) rename {demos => lib-demo-gallery/src}/demo-simple/docs.md (100%) rename {demos => lib-demo-gallery/src}/demo-simple/index.tsx (100%) rename {demos => lib-demo-gallery/src}/demo-smart-routing/index.tsx (100%) rename {demos => lib-demo-gallery/src}/demo-zoom-to-fit/index.tsx (100%) rename {tests/e2e => lib-demo-gallery/tests-e2e}/E2EHelper.ts (100%) rename {tests/e2e => lib-demo-gallery/tests-e2e}/entry.js (100%) rename {tests/e2e => lib-demo-gallery/tests-e2e}/generate-e2e.js (100%) rename {tests/e2e => lib-demo-gallery/tests-e2e}/index.html (100%) rename {tests/e2e => lib-demo-gallery/tests-e2e}/simple-flow.test.ts (100%) rename {tests/e2e => lib-demo-gallery/tests-e2e}/simple.test.ts (100%) rename {tests/snapshots => lib-demo-gallery/tests-snapshots}/__snapshots__/storybook.test.tsx.snap (100%) rename {tests/snapshots => lib-demo-gallery/tests-snapshots}/config.js (100%) rename {tests/snapshots => lib-demo-gallery/tests-snapshots}/storybook.test.tsx (100%) rename {tests/snapshots => lib-demo-gallery/tests-snapshots}/test_loader.tsx (100%) rename {demos => lib-demo-gallery}/tslint.json (100%) create mode 100644 lib-demo-project/.babelrc create mode 100644 lib-demo-project/README.md create mode 100644 lib-demo-project/index.html create mode 100644 lib-demo-project/package.json create mode 100644 lib-demo-project/src/BodyWidget.tsx create mode 100644 lib-demo-project/src/custom-node-js/JSCustomNodeFactory.jsx create mode 100644 lib-demo-project/src/custom-node-js/JSCustomNodeModel.js create mode 100644 lib-demo-project/src/custom-node-js/JSCustomNodeWidget.jsx create mode 100644 lib-demo-project/src/custom-node-ts/TSCustomNodeFactory.tsx create mode 100644 lib-demo-project/src/custom-node-ts/TSCustomNodeModel.ts create mode 100644 lib-demo-project/src/custom-node-ts/TSCustomNodeWidget.tsx create mode 100644 lib-demo-project/src/main.css create mode 100644 lib-demo-project/src/main.tsx create mode 100644 lib-demo-project/tsconfig.json create mode 100644 lib-demo-project/webpack.config.js create mode 100644 lib-routing/README.md create mode 100644 lib-routing/package.json rename {src/routing => lib-routing/src/engine}/PathFinding.ts (83%) create mode 100644 lib-routing/src/engine/PathFindingEngine.ts create mode 100644 lib-routing/src/link/PathFindingLinkWidget.tsx rename {tests/routing => lib-routing/tests}/PathFinding.test.tsx (100%) delete mode 100644 src/main.ts delete mode 100644 src/sass/main.scss delete mode 100644 tests/helpers/css-mock.js delete mode 100644 tests/helpers/storybook-loader.js delete mode 100644 tests/tslint.json rename webpack.config.js => webpack.shared.js (57%) diff --git a/images/canvasDrag.gif b/docs/images/canvasDrag.gif similarity index 100% rename from images/canvasDrag.gif rename to docs/images/canvasDrag.gif diff --git a/images/createLink.gif b/docs/images/createLink.gif similarity index 100% rename from images/createLink.gif rename to docs/images/createLink.gif diff --git a/images/createPoint.gif b/docs/images/createPoint.gif similarity index 100% rename from images/createPoint.gif rename to docs/images/createPoint.gif diff --git a/images/demo.gif b/docs/images/demo.gif similarity index 100% rename from images/demo.gif rename to docs/images/demo.gif diff --git a/images/example1.jpg b/docs/images/example1.jpg similarity index 100% rename from images/example1.jpg rename to docs/images/example1.jpg diff --git a/images/example2.jpg b/docs/images/example2.jpg similarity index 100% rename from images/example2.jpg rename to docs/images/example2.jpg diff --git a/images/example3.jpg b/docs/images/example3.jpg similarity index 100% rename from images/example3.jpg rename to docs/images/example3.jpg diff --git a/images/example3.png b/docs/images/example3.png similarity index 100% rename from images/example3.png rename to docs/images/example3.png diff --git a/images/mouseDrag.gif b/docs/images/mouseDrag.gif similarity index 100% rename from images/mouseDrag.gif rename to docs/images/mouseDrag.gif diff --git a/images/mouseWheel.gif b/docs/images/mouseWheel.gif similarity index 100% rename from images/mouseWheel.gif rename to docs/images/mouseWheel.gif diff --git a/images/rjdDelete.gif b/docs/images/rjdDelete.gif similarity index 100% rename from images/rjdDelete.gif rename to docs/images/rjdDelete.gif diff --git a/images/shiftClick.gif b/docs/images/shiftClick.gif similarity index 100% rename from images/shiftClick.gif rename to docs/images/shiftClick.gif diff --git a/lerna.json b/lerna.json new file mode 100644 index 0000000..3d67a4f --- /dev/null +++ b/lerna.json @@ -0,0 +1,5 @@ +{ + "npmClient": "yarn", + "useWorkspaces": true, + "version": "independent" +} diff --git a/lib-all/README.md b/lib-all/README.md new file mode 100644 index 0000000..e69de29 diff --git a/lib-all/index.ts b/lib-all/index.ts new file mode 100644 index 0000000..2b63d3a --- /dev/null +++ b/lib-all/index.ts @@ -0,0 +1,22 @@ +import {DiagramEngine} from "@projectstorm/react-diagrams-core"; +import { + DefaultLabelFactory, + DefaultLinkFactory, + DefaultNodeFactory, + DefaultPortFactory +} from "@projectstorm/react-diagrams-defaults"; + +export * from "@projectstorm/react-diagrams-core" +export * from "@projectstorm/react-diagrams-defaults" + +/** + * Construct an engine with the defaults installed + */ +export default (): DiagramEngine => { + const engine = new DiagramEngine(); + engine.registerLabelFactory(new DefaultLabelFactory()); + engine.registerNodeFactory(new DefaultNodeFactory()); + engine.registerLinkFactory(new DefaultLinkFactory()); + engine.registerPortFactory(new DefaultPortFactory()); + return engine; +} diff --git a/lib-all/package.json b/lib-all/package.json new file mode 100644 index 0000000..6b724de --- /dev/null +++ b/lib-all/package.json @@ -0,0 +1,37 @@ +{ + "name": "@projectstorm/react-diagrams", + "version": "5.3.2", + "author": "dylanvorster", + "repository": { + "type": "git", + "url": "https://github.com/projectstorm/react-diagrams.git" + }, + "scripts": { + "clean": "rm -rf ./dist", + "build": "../node_modules/.bin/webpack" + }, + "keywords": [ + "web", + "diagram", + "diagrams", + "react", + "typescript", + "flowchart", + "simple", + "links", + "nodes" + ], + "main": "./dist/index.js", + "typings": "./dist/@types/index", + "dependencies": { + "@projectstorm/react-diagrams-core": "5.3.2", + "@projectstorm/react-diagrams-defaults": "5.3.2" + }, + "peerDependencies": { + "closest": "^0.0.1", + "lodash": "4.*", + "pathfinding": "^0.4.18", + "paths-js": "^0.4.9", + "react": "16.*" + } +} diff --git a/lib-all/tsconfig.json b/lib-all/tsconfig.json new file mode 100644 index 0000000..b479932 --- /dev/null +++ b/lib-all/tsconfig.json @@ -0,0 +1,13 @@ +{ + "extends": "../tsconfig", + "compilerOptions": { + "declaration": true, + "declarationDir": "dist/@types" + }, + "include": [ + "./index.ts" + ], + "exclude": [ + "./dist" + ] +} diff --git a/lib-all/webpack.config.js b/lib-all/webpack.config.js new file mode 100644 index 0000000..b5ca20c --- /dev/null +++ b/lib-all/webpack.config.js @@ -0,0 +1,8 @@ +const config = require("../webpack.shared")(__dirname); +module.exports = { + ...config, + output: { + ...config.output, + library: 'projectstorm/react-diagrams' + } +}; diff --git a/lib-core/README.md b/lib-core/README.md new file mode 100644 index 0000000..ad92591 --- /dev/null +++ b/lib-core/README.md @@ -0,0 +1,3 @@ +# Project STORM > React Diagrams > Core + +This workspace houses the default models diff --git a/lib-core/index.ts b/lib-core/index.ts new file mode 100644 index 0000000..cb702ad --- /dev/null +++ b/lib-core/index.ts @@ -0,0 +1,33 @@ +import "./sass/main.scss"; + +export * from "./src/actions/BaseAction"; +export * from "./src/actions/MoveCanvasAction" +export * from "./src/actions/SelectingAction" +export * from "./src/actions/MoveItemsAction" + +export * from "./src/factories/AbstractFactory" +export * from "./src/factories/AbstractLabelFactory" +export * from "./src/factories/AbstractLinkFactory" +export * from "./src/factories/AbstractNodeFactory" +export * from "./src/factories/AbstractPortFactory" + +export * from "./src/models/BaseModel" +export * from "./src/models/DiagramModel" +export * from "./src/models/LabelModel" +export * from "./src/models/LinkModel" +export * from "./src/models/PointModel" +export * from "./src/models/PortModel" +export * from "./src/models/SelectionModel" +export * from "./src/models/NodeModel" + +export * from "./src/widgets/BaseWidget" +export * from "./src/widgets/DiagramWidget" +export * from "./src/widgets/layers/LinkLayerWidget" +export * from "./src/widgets/layers/NodeLayerWidget" +export * from "./src/widgets/LinkWidget" +export * from "./src/widgets/NodeWidget" +export * from "./src/widgets/PortWidget" + +export * from "./src/BaseEntity" +export * from "./src/DiagramEngine" +export * from "./src/Toolkit" diff --git a/lib-core/package.json b/lib-core/package.json new file mode 100644 index 0000000..e44cfc7 --- /dev/null +++ b/lib-core/package.json @@ -0,0 +1,31 @@ +{ + "name": "@projectstorm/react-diagrams-core", + "version": "5.3.2", + "author": "dylanvorster", + "repository": { + "type": "git", + "url": "https://github.com/projectstorm/react-diagrams.git" + }, + "scripts": { + "clean": "rm -rf ./dist", + "build": "../node_modules/.bin/webpack" + }, + "keywords": [ + "web", + "diagram", + "diagrams", + "react", + "typescript", + "flowchart", + "simple", + "links", + "nodes" + ], + "main": "./dist/index.js", + "typings": "./dist/@types/index", + "peerDependencies": { + "closest": "^0.0.1", + "lodash": "4.*", + "react": "16.*" + } +} diff --git a/src/sass/_DiagramWidget.scss b/lib-core/sass/_DiagramWidget.scss similarity index 100% rename from src/sass/_DiagramWidget.scss rename to lib-core/sass/_DiagramWidget.scss diff --git a/src/sass/_LinkLayerWidget.scss b/lib-core/sass/_LinkLayerWidget.scss similarity index 100% rename from src/sass/_LinkLayerWidget.scss rename to lib-core/sass/_LinkLayerWidget.scss diff --git a/src/sass/_NodeLayerWidget.scss b/lib-core/sass/_NodeLayerWidget.scss similarity index 100% rename from src/sass/_NodeLayerWidget.scss rename to lib-core/sass/_NodeLayerWidget.scss diff --git a/src/sass/_NodeWidget.scss b/lib-core/sass/_NodeWidget.scss similarity index 100% rename from src/sass/_NodeWidget.scss rename to lib-core/sass/_NodeWidget.scss diff --git a/src/sass/_PortWidget.scss b/lib-core/sass/_PortWidget.scss similarity index 100% rename from src/sass/_PortWidget.scss rename to lib-core/sass/_PortWidget.scss diff --git a/lib-core/sass/main.scss b/lib-core/sass/main.scss new file mode 100644 index 0000000..146bedd --- /dev/null +++ b/lib-core/sass/main.scss @@ -0,0 +1,5 @@ +@import "DiagramWidget"; +@import "LinkLayerWidget"; +@import "NodeLayerWidget"; +@import "NodeWidget"; +@import "PortWidget"; diff --git a/src/BaseEntity.ts b/lib-core/src/BaseEntity.ts similarity index 100% rename from src/BaseEntity.ts rename to lib-core/src/BaseEntity.ts diff --git a/src/DiagramEngine.ts b/lib-core/src/DiagramEngine.ts similarity index 58% rename from src/DiagramEngine.ts rename to lib-core/src/DiagramEngine.ts index 4267dfd..e3f0736 100644 --- a/src/DiagramEngine.ts +++ b/lib-core/src/DiagramEngine.ts @@ -10,11 +10,7 @@ import { AbstractLabelFactory } from "./factories/AbstractLabelFactory"; import { AbstractLinkFactory } from "./factories/AbstractLinkFactory"; import { AbstractNodeFactory } from "./factories/AbstractNodeFactory"; import { AbstractPortFactory } from "./factories/AbstractPortFactory"; -import { DefaultLinkFactory, DefaultNodeFactory } from "./main"; -import { ROUTING_SCALING_FACTOR } from "./routing/PathFinding"; -import { DefaultPortFactory } from "./defaults/factories/DefaultPortFactory"; import { LabelModel } from "./models/LabelModel"; -import { DefaultLabelFactory } from "./defaults/factories/DefaultLabelFactory"; import { Toolkit } from "./Toolkit"; /** * @author Dylan Vorster @@ -46,14 +42,6 @@ export class DiagramEngine extends BaseEntity { linksThatHaveInitiallyRendered: {}; nodesRendered: boolean; maxNumberPointsPerLink: number; - smartRouting: boolean; - - // calculated only when smart routing is active - canvasMatrix: number[][] = []; - routingMatrix: number[][] = []; - // used when at least one element has negative coordinates - hAdjustmentFactor: number = 0; - vAdjustmentFactor: number = 0; constructor() { super(); @@ -76,13 +64,6 @@ export class DiagramEngine extends BaseEntity { } } - installDefaultFactories() { - this.registerNodeFactory(new DefaultNodeFactory()); - this.registerLinkFactory(new DefaultLinkFactory()); - this.registerPortFactory(new DefaultPortFactory()); - this.registerLabelFactory(new DefaultLabelFactory()); - } - repaintCanvas() { this.iterateListeners(listener => { if (listener.repaintCanvas) { @@ -370,207 +351,6 @@ export class DiagramEngine extends BaseEntity { this.maxNumberPointsPerLink = max; } - isSmartRoutingEnabled() { - return !!this.smartRouting; - } - setSmartRoutingStatus(status: boolean) { - this.smartRouting = status; - } - - /** - * A representation of the canvas in the following format: - * - * +-----------------+ - * | 0 0 0 0 0 0 0 0 | - * | 0 0 0 0 0 0 0 0 | - * | 0 0 0 0 0 0 0 0 | - * | 0 0 0 0 0 0 0 0 | - * | 0 0 0 0 0 0 0 0 | - * +-----------------+ - * - * In which all walkable points are marked by zeros. - * It uses @link{#ROUTING_SCALING_FACTOR} to reduce the matrix dimensions and improve performance. - */ - getCanvasMatrix(): number[][] { - if (this.canvasMatrix.length === 0) { - this.calculateCanvasMatrix(); - } - - return this.canvasMatrix; - } - calculateCanvasMatrix() { - const { - width: canvasWidth, - hAdjustmentFactor, - height: canvasHeight, - vAdjustmentFactor - } = this.calculateMatrixDimensions(); - - this.hAdjustmentFactor = hAdjustmentFactor; - this.vAdjustmentFactor = vAdjustmentFactor; - - const matrixWidth = Math.ceil(canvasWidth / ROUTING_SCALING_FACTOR); - const matrixHeight = Math.ceil(canvasHeight / ROUTING_SCALING_FACTOR); - - this.canvasMatrix = _.range(0, matrixHeight).map(() => { - return new Array(matrixWidth).fill(0); - }); - } - - /** - * A representation of the canvas in the following format: - * - * +-----------------+ - * | 0 0 1 1 0 0 0 0 | - * | 0 0 1 1 0 0 1 1 | - * | 0 0 0 0 0 0 1 1 | - * | 1 1 0 0 0 0 0 0 | - * | 1 1 0 0 0 0 0 0 | - * +-----------------+ - * - * In which all points blocked by a node (and its ports) are - * marked as 1; points were there is nothing (ie, free) receive 0. - */ - getRoutingMatrix(): number[][] { - if (this.routingMatrix.length === 0) { - this.calculateRoutingMatrix(); - } - - return this.routingMatrix; - } - calculateRoutingMatrix(): void { - const matrix = _.cloneDeep(this.getCanvasMatrix()); - - // nodes need to be marked as blocked points - this.markNodes(matrix); - // same thing for ports - this.markPorts(matrix); - - this.routingMatrix = matrix; - } - - /** - * The routing matrix does not have negative indexes, but elements could be negatively positioned. - * We use the functions below to translate back and forth between these coordinates, relying on the - * calculated values of hAdjustmentFactor and vAdjustmentFactor. - */ - translateRoutingX(x: number, reverse: boolean = false) { - return x + this.hAdjustmentFactor * (reverse ? -1 : 1); - } - translateRoutingY(y: number, reverse: boolean = false) { - return y + this.vAdjustmentFactor * (reverse ? -1 : 1); - } - - /** - * Despite being a long method, we simply iterate over all three collections (nodes, ports and points) - * to find the highest X and Y dimensions, so we can build the matrix large enough to contain all elements. - */ - calculateMatrixDimensions = (): { - width: number; - hAdjustmentFactor: number; - height: number; - vAdjustmentFactor: number; - } => { - const allNodesCoords = _.values(this.diagramModel.nodes).map(item => ({ - x: item.x, - width: item.width, - y: item.y, - height: item.height - })); - - const allLinks = _.values(this.diagramModel.links); - const allPortsCoords = _.flatMap(allLinks.map(link => [link.sourcePort, link.targetPort])) - .filter(port => port !== null) - .map(item => ({ - x: item.x, - width: item.width, - y: item.y, - height: item.height - })); - const allPointsCoords = _.flatMap(allLinks.map(link => link.points)).map(item => ({ - // points don't have width/height, so let's just use 0 - x: item.x, - width: 0, - y: item.y, - height: 0 - })); - - const canvas = this.canvas as HTMLDivElement; - const minX = - Math.floor( - Math.min(_.minBy(_.concat(allNodesCoords, allPortsCoords, allPointsCoords), item => item.x).x, 0) / - ROUTING_SCALING_FACTOR - ) * ROUTING_SCALING_FACTOR; - const maxXElement = _.maxBy( - _.concat(allNodesCoords, allPortsCoords, allPointsCoords), - item => item.x + item.width - ); - const maxX = Math.max(maxXElement.x + maxXElement.width, canvas.offsetWidth); - - const minY = - Math.floor( - Math.min(_.minBy(_.concat(allNodesCoords, allPortsCoords, allPointsCoords), item => item.y).y, 0) / - ROUTING_SCALING_FACTOR - ) * ROUTING_SCALING_FACTOR; - const maxYElement = _.maxBy( - _.concat(allNodesCoords, allPortsCoords, allPointsCoords), - item => item.y + item.height - ); - const maxY = Math.max(maxYElement.y + maxYElement.height, canvas.offsetHeight); - - return { - width: Math.ceil(Math.abs(minX) + maxX), - hAdjustmentFactor: Math.abs(minX) / ROUTING_SCALING_FACTOR + 1, - height: Math.ceil(Math.abs(minY) + maxY), - vAdjustmentFactor: Math.abs(minY) / ROUTING_SCALING_FACTOR + 1 - }; - }; - - /** - * Updates (by reference) where nodes will be drawn on the matrix passed in. - */ - markNodes = (matrix: number[][]): void => { - _.values(this.diagramModel.nodes).forEach(node => { - const startX = Math.floor(node.x / ROUTING_SCALING_FACTOR); - const endX = Math.ceil((node.x + node.width) / ROUTING_SCALING_FACTOR); - const startY = Math.floor(node.y / ROUTING_SCALING_FACTOR); - const endY = Math.ceil((node.y + node.height) / ROUTING_SCALING_FACTOR); - - for (let x = startX - 1; x <= endX + 1; x++) { - for (let y = startY - 1; y < endY + 1; y++) { - this.markMatrixPoint(matrix, this.translateRoutingX(x), this.translateRoutingY(y)); - } - } - }); - }; - - /** - * Updates (by reference) where ports will be drawn on the matrix passed in. - */ - markPorts = (matrix: number[][]): void => { - const allElements = _.flatMap( - _.values(this.diagramModel.links).map(link => [].concat(link.sourcePort, link.targetPort)) - ); - allElements.filter(port => port !== null).forEach(port => { - const startX = Math.floor(port.x / ROUTING_SCALING_FACTOR); - const endX = Math.ceil((port.x + port.width) / ROUTING_SCALING_FACTOR); - const startY = Math.floor(port.y / ROUTING_SCALING_FACTOR); - const endY = Math.ceil((port.y + port.height) / ROUTING_SCALING_FACTOR); - - for (let x = startX - 1; x <= endX + 1; x++) { - for (let y = startY - 1; y < endY + 1; y++) { - this.markMatrixPoint(matrix, this.translateRoutingX(x), this.translateRoutingY(y)); - } - } - }); - }; - - markMatrixPoint = (matrix: number[][], x: number, y: number) => { - if (matrix[y] !== undefined && matrix[y][x] !== undefined) { - matrix[y][x] = 1; - } - }; - zoomToFit() { const xFactor = this.canvas.clientWidth / this.canvas.scrollWidth; const yFactor = this.canvas.clientHeight / this.canvas.scrollHeight; diff --git a/src/Toolkit.ts b/lib-core/src/Toolkit.ts similarity index 78% rename from src/Toolkit.ts rename to lib-core/src/Toolkit.ts index c3de168..a2d0939 100644 --- a/src/Toolkit.ts +++ b/lib-core/src/Toolkit.ts @@ -1,8 +1,5 @@ -// tslint:disable no-bitwise import closest = require("closest"); import { PointModel } from "./models/PointModel"; -import { ROUTING_SCALING_FACTOR } from "./routing/PathFinding"; -import * as Path from "paths-js/path"; /** * @author Dylan Vorster */ @@ -61,13 +58,4 @@ export class Toolkit { return `M${firstPoint.x},${firstPoint.y} C ${firstPoint.x + curvyX},${firstPoint.y + curvyY} ${lastPoint.x - curvyX},${lastPoint.y - curvyY} ${lastPoint.x},${lastPoint.y}`; } - - public static generateDynamicPath(pathCoords: number[][]) { - let path = Path(); - path = path.moveto(pathCoords[0][0] * ROUTING_SCALING_FACTOR, pathCoords[0][1] * ROUTING_SCALING_FACTOR); - pathCoords.slice(1).forEach(coords => { - path = path.lineto(coords[0] * ROUTING_SCALING_FACTOR, coords[1] * ROUTING_SCALING_FACTOR); - }); - return path.print(); - } } diff --git a/src/actions/BaseAction.ts b/lib-core/src/actions/BaseAction.ts similarity index 100% rename from src/actions/BaseAction.ts rename to lib-core/src/actions/BaseAction.ts diff --git a/src/actions/MoveCanvasAction.ts b/lib-core/src/actions/MoveCanvasAction.ts similarity index 100% rename from src/actions/MoveCanvasAction.ts rename to lib-core/src/actions/MoveCanvasAction.ts diff --git a/src/actions/MoveItemsAction.ts b/lib-core/src/actions/MoveItemsAction.ts similarity index 100% rename from src/actions/MoveItemsAction.ts rename to lib-core/src/actions/MoveItemsAction.ts diff --git a/src/actions/SelectingAction.ts b/lib-core/src/actions/SelectingAction.ts similarity index 100% rename from src/actions/SelectingAction.ts rename to lib-core/src/actions/SelectingAction.ts diff --git a/src/factories/AbstractFactory.ts b/lib-core/src/factories/AbstractFactory.ts similarity index 100% rename from src/factories/AbstractFactory.ts rename to lib-core/src/factories/AbstractFactory.ts diff --git a/src/factories/AbstractLabelFactory.ts b/lib-core/src/factories/AbstractLabelFactory.ts similarity index 100% rename from src/factories/AbstractLabelFactory.ts rename to lib-core/src/factories/AbstractLabelFactory.ts diff --git a/src/factories/AbstractLinkFactory.ts b/lib-core/src/factories/AbstractLinkFactory.ts similarity index 100% rename from src/factories/AbstractLinkFactory.ts rename to lib-core/src/factories/AbstractLinkFactory.ts diff --git a/src/factories/AbstractNodeFactory.ts b/lib-core/src/factories/AbstractNodeFactory.ts similarity index 100% rename from src/factories/AbstractNodeFactory.ts rename to lib-core/src/factories/AbstractNodeFactory.ts diff --git a/src/factories/AbstractPortFactory.ts b/lib-core/src/factories/AbstractPortFactory.ts similarity index 100% rename from src/factories/AbstractPortFactory.ts rename to lib-core/src/factories/AbstractPortFactory.ts diff --git a/src/models/BaseModel.ts b/lib-core/src/models/BaseModel.ts similarity index 100% rename from src/models/BaseModel.ts rename to lib-core/src/models/BaseModel.ts diff --git a/src/models/DiagramModel.ts b/lib-core/src/models/DiagramModel.ts similarity index 100% rename from src/models/DiagramModel.ts rename to lib-core/src/models/DiagramModel.ts diff --git a/src/models/LabelModel.ts b/lib-core/src/models/LabelModel.ts similarity index 100% rename from src/models/LabelModel.ts rename to lib-core/src/models/LabelModel.ts diff --git a/src/models/LinkModel.ts b/lib-core/src/models/LinkModel.ts similarity index 100% rename from src/models/LinkModel.ts rename to lib-core/src/models/LinkModel.ts diff --git a/src/models/NodeModel.ts b/lib-core/src/models/NodeModel.ts similarity index 96% rename from src/models/NodeModel.ts rename to lib-core/src/models/NodeModel.ts index 4e7ec8b..020e40b 100644 --- a/src/models/NodeModel.ts +++ b/lib-core/src/models/NodeModel.ts @@ -1,11 +1,9 @@ import { BaseEvent } from "../BaseEntity"; import { BaseModel, BaseModelListener } from "./BaseModel"; -import { LinkModel, LinkModelListener } from "./LinkModel"; import { PortModel } from "./PortModel"; import * as _ from "lodash"; import { DiagramEngine } from "../DiagramEngine"; import { DiagramModel } from "./DiagramModel"; -import { PointModel } from "./PointModel"; export interface NodeModelListener extends BaseModelListener { positionChanged?(event: BaseEvent): void; diff --git a/src/models/PointModel.ts b/lib-core/src/models/PointModel.ts similarity index 100% rename from src/models/PointModel.ts rename to lib-core/src/models/PointModel.ts diff --git a/src/models/PortModel.ts b/lib-core/src/models/PortModel.ts similarity index 100% rename from src/models/PortModel.ts rename to lib-core/src/models/PortModel.ts diff --git a/src/models/SelectionModel.ts b/lib-core/src/models/SelectionModel.ts similarity index 100% rename from src/models/SelectionModel.ts rename to lib-core/src/models/SelectionModel.ts diff --git a/src/widgets/BaseWidget.tsx b/lib-core/src/widgets/BaseWidget.tsx similarity index 96% rename from src/widgets/BaseWidget.tsx rename to lib-core/src/widgets/BaseWidget.tsx index 36464c0..fa5354f 100644 --- a/src/widgets/BaseWidget.tsx +++ b/lib-core/src/widgets/BaseWidget.tsx @@ -1,5 +1,4 @@ import * as React from "react"; -import * as _ from "lodash"; export interface BaseWidgetProps { /** diff --git a/src/widgets/DiagramWidget.tsx b/lib-core/src/widgets/DiagramWidget.tsx similarity index 97% rename from src/widgets/DiagramWidget.tsx rename to lib-core/src/widgets/DiagramWidget.tsx index e05f39f..3f40cc6 100644 --- a/src/widgets/DiagramWidget.tsx +++ b/lib-core/src/widgets/DiagramWidget.tsx @@ -12,7 +12,6 @@ import { NodeModel } from "../models/NodeModel"; import { PointModel } from "../models/PointModel"; import { PortModel } from "../models/PortModel"; import { LinkModel } from "../models/LinkModel"; -import { SelectionModel } from "../models/SelectionModel"; import { BaseModel, BaseModelListener } from "../models/BaseModel"; import { BaseEntity } from "../BaseEntity"; import { BaseWidget, BaseWidgetProps } from "./BaseWidget"; @@ -265,9 +264,10 @@ export class DiagramWidget extends BaseWidget { }); } - if (diagramEngine.isSmartRoutingEnabled()) { - diagramEngine.calculateRoutingMatrix(); - } + // TODO fixme (do this based on actions firing) + // if (diagramEngine.isSmartRoutingEnabled()) { + // diagramEngine.calculateRoutingMatrix(); + // } } else if (model.model instanceof PointModel) { // we want points that are connected to ports, to not necessarily snap to grid // this stuff needs to be pixel perfect, dont touch it @@ -276,9 +276,10 @@ export class DiagramWidget extends BaseWidget { } }); - if (diagramEngine.isSmartRoutingEnabled()) { - diagramEngine.calculateCanvasMatrix(); - } + // TODO fixme (do this based on actions firing) + // if (diagramEngine.isSmartRoutingEnabled()) { + // diagramEngine.calculateCanvasMatrix(); + // } this.fireAction(); if (!this.state.wasMoved) { @@ -420,7 +421,8 @@ export class DiagramWidget extends BaseWidget { render() { var diagramEngine = this.props.diagramEngine; diagramEngine.setMaxNumberPointsPerLink(this.props.maxNumberPointsPerLink); - diagramEngine.setSmartRoutingStatus(this.props.smartRouting); + // diagramEngine.setSmartRoutingStatus(this.props.smartRouting); + // TODO fixme var diagramModel = diagramEngine.getDiagramModel(); return ( diff --git a/src/widgets/LinkWidget.tsx b/lib-core/src/widgets/LinkWidget.tsx similarity index 100% rename from src/widgets/LinkWidget.tsx rename to lib-core/src/widgets/LinkWidget.tsx diff --git a/src/widgets/NodeWidget.tsx b/lib-core/src/widgets/NodeWidget.tsx similarity index 96% rename from src/widgets/NodeWidget.tsx rename to lib-core/src/widgets/NodeWidget.tsx index 9b445d3..db0c455 100644 --- a/src/widgets/NodeWidget.tsx +++ b/lib-core/src/widgets/NodeWidget.tsx @@ -1,7 +1,6 @@ import * as React from "react"; import { DiagramEngine } from "../DiagramEngine"; import { NodeModel } from "../models/NodeModel"; -import { Toolkit } from "../Toolkit"; import { BaseWidget, BaseWidgetProps } from "./BaseWidget"; export interface NodeProps extends BaseWidgetProps { diff --git a/src/widgets/PortWidget.tsx b/lib-core/src/widgets/PortWidget.tsx similarity index 100% rename from src/widgets/PortWidget.tsx rename to lib-core/src/widgets/PortWidget.tsx diff --git a/src/widgets/layers/LinkLayerWidget.tsx b/lib-core/src/widgets/layers/LinkLayerWidget.tsx similarity index 100% rename from src/widgets/layers/LinkLayerWidget.tsx rename to lib-core/src/widgets/layers/LinkLayerWidget.tsx diff --git a/src/widgets/layers/NodeLayerWidget.tsx b/lib-core/src/widgets/layers/NodeLayerWidget.tsx similarity index 100% rename from src/widgets/layers/NodeLayerWidget.tsx rename to lib-core/src/widgets/layers/NodeLayerWidget.tsx diff --git a/lib-core/tsconfig.json b/lib-core/tsconfig.json new file mode 100644 index 0000000..c46812c --- /dev/null +++ b/lib-core/tsconfig.json @@ -0,0 +1,13 @@ +{ + "extends": "../tsconfig", + "compilerOptions": { + "declaration": true, + "declarationDir": "dist/@types" + }, + "include": [ + "./src" + ], + "exclude": [ + "./dist" + ] +} diff --git a/lib-core/webpack.config.js b/lib-core/webpack.config.js new file mode 100644 index 0000000..fbc5a3c --- /dev/null +++ b/lib-core/webpack.config.js @@ -0,0 +1,8 @@ +const config = require("../webpack.shared")(__dirname); +module.exports = { + ...config, + output: { + ...config.output, + library: 'projectstorm/react-diagrams-core' + } +}; diff --git a/lib-defaults/README.md b/lib-defaults/README.md new file mode 100644 index 0000000..8603b04 --- /dev/null +++ b/lib-defaults/README.md @@ -0,0 +1,3 @@ +# Project STORM > React Diagrams > Defaults + +This workspace houses the default models diff --git a/lib-defaults/index.ts b/lib-defaults/index.ts new file mode 100644 index 0000000..75f29c0 --- /dev/null +++ b/lib-defaults/index.ts @@ -0,0 +1,17 @@ +import "./sass/index.scss"; + +export * from "./src/label/DefaultLabelFactory" +export * from "./src/label/DefaultLabelModel" +export * from "./src/label/DefaultLabelWidget" + +export * from "./src/link/DefaultLinkFactory" +export * from "./src/link/DefaultLinkModel" +export * from "./src/link/DefaultLinkWidget" + +export * from "./src/node/DefaultNodeFactory" +export * from "./src/node/DefaultNodeModel" +export * from "./src/node/DefaultNodeWidget" + +export * from "./src/port/DefaultPortFactory" +export * from "./src/port/DefaultPortLabelWidget" +export * from "./src/port/DefaultPortModel" diff --git a/lib-defaults/package.json b/lib-defaults/package.json new file mode 100644 index 0000000..674fc6c --- /dev/null +++ b/lib-defaults/package.json @@ -0,0 +1,36 @@ +{ + "name": "@projectstorm/react-diagrams-defaults", + "version": "5.3.2", + "author": "dylanvorster", + "repository": { + "type": "git", + "url": "https://github.com/projectstorm/react-diagrams.git" + }, + "scripts": { + "clean": "rm -rf ./dist", + "build": "../node_modules/.bin/webpack" + }, + "keywords": [ + "web", + "diagram", + "diagrams", + "react", + "typescript", + "flowchart", + "simple", + "links", + "nodes" + ], + "main": "./dist/index.js", + "typings": "./dist/@types/index", + "dependencies": { + "@projectstorm/react-diagrams-core": "5.3.2" + }, + "peerDependencies": { + "closest": "^0.0.1", + "lodash": "4.*", + "pathfinding": "^0.4.18", + "paths-js": "^0.4.9", + "react": "16.*" + } +} diff --git a/src/sass/defaults/_DefaultLabelWidget.scss b/lib-defaults/sass/_DefaultLabelWidget.scss similarity index 100% rename from src/sass/defaults/_DefaultLabelWidget.scss rename to lib-defaults/sass/_DefaultLabelWidget.scss diff --git a/src/sass/defaults/_DefaultLinkWidget.scss b/lib-defaults/sass/_DefaultLinkWidget.scss similarity index 100% rename from src/sass/defaults/_DefaultLinkWidget.scss rename to lib-defaults/sass/_DefaultLinkWidget.scss diff --git a/src/sass/defaults/_DefaultNodeWidget.scss b/lib-defaults/sass/_DefaultNodeWidget.scss similarity index 100% rename from src/sass/defaults/_DefaultNodeWidget.scss rename to lib-defaults/sass/_DefaultNodeWidget.scss diff --git a/src/sass/defaults/_DefaultPortWidget.scss b/lib-defaults/sass/_DefaultPortWidget.scss similarity index 100% rename from src/sass/defaults/_DefaultPortWidget.scss rename to lib-defaults/sass/_DefaultPortWidget.scss diff --git a/lib-defaults/sass/index.scss b/lib-defaults/sass/index.scss new file mode 100644 index 0000000..72996c4 --- /dev/null +++ b/lib-defaults/sass/index.scss @@ -0,0 +1,4 @@ +@import "DefaultLabelWidget"; +@import "DefaultLinkWidget"; +@import "DefaultNodeWidget"; +@import "DefaultPortWidget"; diff --git a/src/defaults/factories/DefaultLabelFactory.tsx b/lib-defaults/src/label/DefaultLabelFactory.tsx similarity index 62% rename from src/defaults/factories/DefaultLabelFactory.tsx rename to lib-defaults/src/label/DefaultLabelFactory.tsx index 544e28c..22152de 100644 --- a/src/defaults/factories/DefaultLabelFactory.tsx +++ b/lib-defaults/src/label/DefaultLabelFactory.tsx @@ -1,8 +1,7 @@ import * as React from "react"; -import { DiagramEngine } from "../../DiagramEngine"; -import { AbstractLabelFactory } from "../../factories/AbstractLabelFactory"; -import { DefaultLabelModel } from "../models/DefaultLabelModel"; -import { DefaultLabelWidget } from "../widgets/DefaultLabelWidget"; +import {AbstractLabelFactory, DiagramEngine} from "@projectstorm/react-diagrams-core"; +import {DefaultLabelModel} from "./DefaultLabelModel"; +import {DefaultLabelWidget} from "./DefaultLabelWidget"; /** * @author Dylan Vorster diff --git a/src/defaults/models/DefaultLabelModel.tsx b/lib-defaults/src/label/DefaultLabelModel.tsx similarity index 64% rename from src/defaults/models/DefaultLabelModel.tsx rename to lib-defaults/src/label/DefaultLabelModel.tsx index 524e416..9b97ea8 100644 --- a/src/defaults/models/DefaultLabelModel.tsx +++ b/lib-defaults/src/label/DefaultLabelModel.tsx @@ -1,6 +1,4 @@ -import { LabelModel } from "../../models/LabelModel"; -import * as _ from "lodash"; -import { DiagramEngine } from "../../DiagramEngine"; +import {DiagramEngine, LabelModel} from "@projectstorm/react-diagrams-core"; export class DefaultLabelModel extends LabelModel { label: string; @@ -20,8 +18,9 @@ export class DefaultLabelModel extends LabelModel { } serialize() { - return _.merge(super.serialize(), { + return { + ...super.serialize(), label: this.label - }); + } } } diff --git a/src/defaults/widgets/DefaultLabelWidget.tsx b/lib-defaults/src/label/DefaultLabelWidget.tsx similarity index 72% rename from src/defaults/widgets/DefaultLabelWidget.tsx rename to lib-defaults/src/label/DefaultLabelWidget.tsx index 5a2be6b..2ffc02c 100644 --- a/src/defaults/widgets/DefaultLabelWidget.tsx +++ b/lib-defaults/src/label/DefaultLabelWidget.tsx @@ -1,6 +1,6 @@ import * as React from "react"; -import { DefaultLabelModel } from "../models/DefaultLabelModel"; -import { BaseWidget, BaseWidgetProps } from "../../widgets/BaseWidget"; +import {BaseWidget, BaseWidgetProps} from "@projectstorm/react-diagrams-core"; +import {DefaultLabelModel} from "./DefaultLabelModel"; export interface DefaultLabelWidgetProps extends BaseWidgetProps { model: DefaultLabelModel; diff --git a/src/defaults/factories/DefaultLinkFactory.tsx b/lib-defaults/src/link/DefaultLinkFactory.tsx similarity index 71% rename from src/defaults/factories/DefaultLinkFactory.tsx rename to lib-defaults/src/link/DefaultLinkFactory.tsx index a4ca8e8..ae95a7e 100644 --- a/src/defaults/factories/DefaultLinkFactory.tsx +++ b/lib-defaults/src/link/DefaultLinkFactory.tsx @@ -1,12 +1,9 @@ import * as React from "react"; -import { DefaultLinkWidget } from "../widgets/DefaultLinkWidget"; -import { DiagramEngine } from "../../DiagramEngine"; -import { AbstractLinkFactory } from "../../factories/AbstractLinkFactory"; -import { DefaultLinkModel } from "../models/DefaultLinkModel"; +import {AbstractLinkFactory, DiagramEngine} from "@projectstorm/react-diagrams-core"; +import {DefaultLinkModel} from "./DefaultLinkModel"; +import {DefaultLinkWidget} from "./DefaultLinkWidget"; + -/** - * @author Dylan Vorster - */ export class DefaultLinkFactory extends AbstractLinkFactory { constructor() { super("default"); diff --git a/src/defaults/models/DefaultLinkModel.ts b/lib-defaults/src/link/DefaultLinkModel.ts similarity index 80% rename from src/defaults/models/DefaultLinkModel.ts rename to lib-defaults/src/link/DefaultLinkModel.ts index 500a9d1..f00a3cd 100644 --- a/src/defaults/models/DefaultLinkModel.ts +++ b/lib-defaults/src/link/DefaultLinkModel.ts @@ -1,13 +1,6 @@ -/** - * @author Dylan Vorster - */ -import { LinkModel, LinkModelListener } from "../../models/LinkModel"; -import { BaseEvent } from "../../BaseEntity"; import * as _ from "lodash"; -import { PointModel } from "../../models/PointModel"; -import { DiagramEngine } from "../../DiagramEngine"; -import { DefaultLabelModel } from "./DefaultLabelModel"; -import { LabelModel } from "../../models/LabelModel"; +import {BaseEvent, DiagramEngine, LabelModel, LinkModel, LinkModelListener} from "@projectstorm/react-diagrams-core"; +import {DefaultLabelModel} from "../label/DefaultLabelModel"; export interface DefaultLinkModelListener extends LinkModelListener { colorChanged?(event: BaseEvent & { color: null | string }): void; diff --git a/src/defaults/widgets/DefaultLinkWidget.tsx b/lib-defaults/src/link/DefaultLinkWidget.tsx similarity index 76% rename from src/defaults/widgets/DefaultLinkWidget.tsx rename to lib-defaults/src/link/DefaultLinkWidget.tsx index 38a9c31..c38f2eb 100644 --- a/src/defaults/widgets/DefaultLinkWidget.tsx +++ b/lib-defaults/src/link/DefaultLinkWidget.tsx @@ -1,13 +1,15 @@ import * as React from "react"; -import { DiagramEngine } from "../../DiagramEngine"; -import { PointModel } from "../../models/PointModel"; -import { Toolkit } from "../../Toolkit"; -import { DefaultLinkFactory } from "../factories/DefaultLinkFactory"; -import { DefaultLinkModel } from "../models/DefaultLinkModel"; -import PathFinding from "../../routing/PathFinding"; import * as _ from "lodash"; -import { LabelModel } from "../../models/LabelModel"; -import { BaseWidget, BaseWidgetProps } from "../../widgets/BaseWidget"; +import { + BaseWidget, + BaseWidgetProps, + DiagramEngine, + LabelModel, + PointModel, + Toolkit +} from "@projectstorm/react-diagrams-core"; +import {DefaultLinkModel} from "./DefaultLinkModel"; +import {DefaultLinkFactory} from "./DefaultLinkFactory"; export interface DefaultLinkProps extends BaseWidgetProps { color?: string; @@ -36,8 +38,6 @@ export class DefaultLinkWidget extends BaseWidget { - this.addPointToLink(event, 1); - } - }, - "0" - ) - ); - } - } - // true when smart routing was skipped or not enabled. // See @link{#isSmartRoutingApplicable()}. if (paths.length === 0) { diff --git a/src/defaults/factories/DefaultNodeFactory.ts b/lib-defaults/src/node/DefaultNodeFactory.ts similarity index 65% rename from src/defaults/factories/DefaultNodeFactory.ts rename to lib-defaults/src/node/DefaultNodeFactory.ts index c9a82cc..f3cc9e5 100644 --- a/src/defaults/factories/DefaultNodeFactory.ts +++ b/lib-defaults/src/node/DefaultNodeFactory.ts @@ -1,8 +1,7 @@ -import { DefaultNodeModel } from "../models/DefaultNodeModel"; import * as React from "react"; -import { DefaultNodeWidget } from "../widgets/DefaultNodeWidget"; -import { DiagramEngine } from "../../DiagramEngine"; -import { AbstractNodeFactory } from "../../factories/AbstractNodeFactory"; +import {AbstractNodeFactory, DiagramEngine} from "@projectstorm/react-diagrams-core"; +import {DefaultNodeModel} from "./DefaultNodeModel"; +import {DefaultNodeWidget} from "./DefaultNodeWidget"; /** * @author Dylan Vorster */ diff --git a/src/defaults/models/DefaultNodeModel.ts b/lib-defaults/src/node/DefaultNodeModel.ts similarity index 80% rename from src/defaults/models/DefaultNodeModel.ts rename to lib-defaults/src/node/DefaultNodeModel.ts index a7d8f2b..2c0c300 100644 --- a/src/defaults/models/DefaultNodeModel.ts +++ b/lib-defaults/src/node/DefaultNodeModel.ts @@ -1,13 +1,8 @@ -import { DefaultPortModel } from "./DefaultPortModel"; import * as _ from "lodash"; +import {DiagramEngine, NodeModel, NodeModelListener, Toolkit} from "@projectstorm/react-diagrams-core"; +import {DefaultPortModel} from "../port/DefaultPortModel"; -import { NodeModel, NodeModelListener } from "../../models/NodeModel"; -import { Toolkit } from "../../Toolkit"; -import { DiagramEngine } from "../../DiagramEngine"; -/** - * @author Dylan Vorster - */ export class DefaultNodeModel extends NodeModel { name: string; color: string; diff --git a/src/defaults/widgets/DefaultNodeWidget.tsx b/lib-defaults/src/node/DefaultNodeWidget.tsx similarity index 81% rename from src/defaults/widgets/DefaultNodeWidget.tsx rename to lib-defaults/src/node/DefaultNodeWidget.tsx index d4e4725..7618b50 100644 --- a/src/defaults/widgets/DefaultNodeWidget.tsx +++ b/lib-defaults/src/node/DefaultNodeWidget.tsx @@ -1,9 +1,8 @@ import * as React from "react"; import * as _ from "lodash"; -import { DefaultNodeModel } from "../models/DefaultNodeModel"; -import { DefaultPortLabel } from "./DefaultPortLabelWidget"; -import { DiagramEngine } from "../../DiagramEngine"; -import { BaseWidget, BaseWidgetProps } from "../../widgets/BaseWidget"; +import {BaseWidget, BaseWidgetProps, DiagramEngine} from "@projectstorm/react-diagrams-core"; +import {DefaultNodeModel} from "./DefaultNodeModel"; +import {DefaultPortLabel} from "../port/DefaultPortLabelWidget"; export interface DefaultNodeProps extends BaseWidgetProps { node: DefaultNodeModel; diff --git a/src/defaults/factories/DefaultPortFactory.tsx b/lib-defaults/src/port/DefaultPortFactory.tsx similarity index 62% rename from src/defaults/factories/DefaultPortFactory.tsx rename to lib-defaults/src/port/DefaultPortFactory.tsx index aa03e52..79a1e2a 100644 --- a/src/defaults/factories/DefaultPortFactory.tsx +++ b/lib-defaults/src/port/DefaultPortFactory.tsx @@ -1,5 +1,5 @@ -import { DefaultPortModel } from "../models/DefaultPortModel"; -import { AbstractPortFactory } from "../../factories/AbstractPortFactory"; +import {AbstractPortFactory} from "@projectstorm/react-diagrams-core"; +import {DefaultPortModel} from "./DefaultPortModel"; export class DefaultPortFactory extends AbstractPortFactory { constructor() { diff --git a/src/defaults/widgets/DefaultPortLabelWidget.tsx b/lib-defaults/src/port/DefaultPortLabelWidget.tsx similarity index 77% rename from src/defaults/widgets/DefaultPortLabelWidget.tsx rename to lib-defaults/src/port/DefaultPortLabelWidget.tsx index 8b26e45..6af9348 100644 --- a/src/defaults/widgets/DefaultPortLabelWidget.tsx +++ b/lib-defaults/src/port/DefaultPortLabelWidget.tsx @@ -1,7 +1,6 @@ import * as React from "react"; -import { DefaultPortModel } from "../models/DefaultPortModel"; -import { PortWidget } from "../../widgets/PortWidget"; -import { BaseWidget, BaseWidgetProps } from "../../widgets/BaseWidget"; +import {BaseWidget, BaseWidgetProps, PortWidget} from "@projectstorm/react-diagrams-core"; +import {DefaultPortModel} from "./DefaultPortModel"; export interface DefaultPortLabelProps extends BaseWidgetProps { model: DefaultPortModel; @@ -9,9 +8,6 @@ export interface DefaultPortLabelProps extends BaseWidgetProps { export interface DefaultPortLabelState {} -/** - * @author Dylan Vorster - */ export class DefaultPortLabel extends BaseWidget { constructor(props) { super("srd-default-port", props); diff --git a/src/defaults/models/DefaultPortModel.ts b/lib-defaults/src/port/DefaultPortModel.ts similarity index 81% rename from src/defaults/models/DefaultPortModel.ts rename to lib-defaults/src/port/DefaultPortModel.ts index 274e1b8..4f3a8ed 100644 --- a/src/defaults/models/DefaultPortModel.ts +++ b/lib-defaults/src/port/DefaultPortModel.ts @@ -1,8 +1,6 @@ import * as _ from "lodash"; -import { PortModel } from "../../models/PortModel"; -import { DiagramEngine } from "../../DiagramEngine"; -import { DefaultLinkModel } from "./DefaultLinkModel"; -import { LinkModel } from "../../models/LinkModel"; +import {DiagramEngine, LinkModel, PortModel} from "@projectstorm/react-diagrams-core"; +import {DefaultLinkModel} from "../link/DefaultLinkModel"; export class DefaultPortModel extends PortModel { in: boolean; diff --git a/lib-defaults/tsconfig.json b/lib-defaults/tsconfig.json new file mode 100644 index 0000000..c46812c --- /dev/null +++ b/lib-defaults/tsconfig.json @@ -0,0 +1,13 @@ +{ + "extends": "../tsconfig", + "compilerOptions": { + "declaration": true, + "declarationDir": "dist/@types" + }, + "include": [ + "./src" + ], + "exclude": [ + "./dist" + ] +} diff --git a/lib-defaults/webpack.config.js b/lib-defaults/webpack.config.js new file mode 100644 index 0000000..cb1dc6f --- /dev/null +++ b/lib-defaults/webpack.config.js @@ -0,0 +1,8 @@ +const config = require("../webpack.shared")(__dirname); +module.exports = { + ...config, + output: { + ...config.output, + library: 'projectstorm/react-diagrams-defaults' + } +}; diff --git a/demos/index.tsx b/lib-demo-gallery/index.tsx similarity index 100% rename from demos/index.tsx rename to lib-demo-gallery/index.tsx diff --git a/demos/.helpers/DemoWorkspaceWidget.tsx b/lib-demo-gallery/src/.helpers/DemoWorkspaceWidget.tsx similarity index 100% rename from demos/.helpers/DemoWorkspaceWidget.tsx rename to lib-demo-gallery/src/.helpers/DemoWorkspaceWidget.tsx diff --git a/demos/.helpers/Helper.tsx b/lib-demo-gallery/src/.helpers/Helper.tsx similarity index 100% rename from demos/.helpers/Helper.tsx rename to lib-demo-gallery/src/.helpers/Helper.tsx diff --git a/demos/.helpers/demo.scss b/lib-demo-gallery/src/.helpers/demo.scss similarity index 100% rename from demos/.helpers/demo.scss rename to lib-demo-gallery/src/.helpers/demo.scss diff --git a/demos/demo-cloning/index.tsx b/lib-demo-gallery/src/demo-cloning/index.tsx similarity index 100% rename from demos/demo-cloning/index.tsx rename to lib-demo-gallery/src/demo-cloning/index.tsx diff --git a/demos/demo-custom-link1/index.tsx b/lib-demo-gallery/src/demo-custom-link1/index.tsx similarity index 100% rename from demos/demo-custom-link1/index.tsx rename to lib-demo-gallery/src/demo-custom-link1/index.tsx diff --git a/demos/demo-custom-node1/DiamondNodeFactory.tsx b/lib-demo-gallery/src/demo-custom-node1/DiamondNodeFactory.tsx similarity index 100% rename from demos/demo-custom-node1/DiamondNodeFactory.tsx rename to lib-demo-gallery/src/demo-custom-node1/DiamondNodeFactory.tsx diff --git a/demos/demo-custom-node1/DiamondNodeModel.ts b/lib-demo-gallery/src/demo-custom-node1/DiamondNodeModel.ts similarity index 100% rename from demos/demo-custom-node1/DiamondNodeModel.ts rename to lib-demo-gallery/src/demo-custom-node1/DiamondNodeModel.ts diff --git a/demos/demo-custom-node1/DiamondNodeWidget.tsx b/lib-demo-gallery/src/demo-custom-node1/DiamondNodeWidget.tsx similarity index 100% rename from demos/demo-custom-node1/DiamondNodeWidget.tsx rename to lib-demo-gallery/src/demo-custom-node1/DiamondNodeWidget.tsx diff --git a/demos/demo-custom-node1/DiamondPortModel.ts b/lib-demo-gallery/src/demo-custom-node1/DiamondPortModel.ts similarity index 100% rename from demos/demo-custom-node1/DiamondPortModel.ts rename to lib-demo-gallery/src/demo-custom-node1/DiamondPortModel.ts diff --git a/demos/demo-custom-node1/SimplePortFactory.ts b/lib-demo-gallery/src/demo-custom-node1/SimplePortFactory.ts similarity index 100% rename from demos/demo-custom-node1/SimplePortFactory.ts rename to lib-demo-gallery/src/demo-custom-node1/SimplePortFactory.ts diff --git a/demos/demo-custom-node1/index.tsx b/lib-demo-gallery/src/demo-custom-node1/index.tsx similarity index 100% rename from demos/demo-custom-node1/index.tsx rename to lib-demo-gallery/src/demo-custom-node1/index.tsx diff --git a/demos/demo-dagre/dagre-utils.ts b/lib-demo-gallery/src/demo-dagre/dagre-utils.ts similarity index 100% rename from demos/demo-dagre/dagre-utils.ts rename to lib-demo-gallery/src/demo-dagre/dagre-utils.ts diff --git a/demos/demo-dagre/index.tsx b/lib-demo-gallery/src/demo-dagre/index.tsx similarity index 100% rename from demos/demo-dagre/index.tsx rename to lib-demo-gallery/src/demo-dagre/index.tsx diff --git a/demos/demo-drag-and-drop/Application.ts b/lib-demo-gallery/src/demo-drag-and-drop/Application.ts similarity index 100% rename from demos/demo-drag-and-drop/Application.ts rename to lib-demo-gallery/src/demo-drag-and-drop/Application.ts diff --git a/demos/demo-drag-and-drop/components/BodyWidget.tsx b/lib-demo-gallery/src/demo-drag-and-drop/components/BodyWidget.tsx similarity index 100% rename from demos/demo-drag-and-drop/components/BodyWidget.tsx rename to lib-demo-gallery/src/demo-drag-and-drop/components/BodyWidget.tsx diff --git a/demos/demo-drag-and-drop/components/TrayItemWidget.tsx b/lib-demo-gallery/src/demo-drag-and-drop/components/TrayItemWidget.tsx similarity index 100% rename from demos/demo-drag-and-drop/components/TrayItemWidget.tsx rename to lib-demo-gallery/src/demo-drag-and-drop/components/TrayItemWidget.tsx diff --git a/demos/demo-drag-and-drop/components/TrayWidget.tsx b/lib-demo-gallery/src/demo-drag-and-drop/components/TrayWidget.tsx similarity index 100% rename from demos/demo-drag-and-drop/components/TrayWidget.tsx rename to lib-demo-gallery/src/demo-drag-and-drop/components/TrayWidget.tsx diff --git a/demos/demo-drag-and-drop/index.tsx b/lib-demo-gallery/src/demo-drag-and-drop/index.tsx similarity index 100% rename from demos/demo-drag-and-drop/index.tsx rename to lib-demo-gallery/src/demo-drag-and-drop/index.tsx diff --git a/demos/demo-drag-and-drop/sass/main.scss b/lib-demo-gallery/src/demo-drag-and-drop/sass/main.scss similarity index 100% rename from demos/demo-drag-and-drop/sass/main.scss rename to lib-demo-gallery/src/demo-drag-and-drop/sass/main.scss diff --git a/demos/demo-grid/index.tsx b/lib-demo-gallery/src/demo-grid/index.tsx similarity index 100% rename from demos/demo-grid/index.tsx rename to lib-demo-gallery/src/demo-grid/index.tsx diff --git a/demos/demo-labelled-links/index.tsx b/lib-demo-gallery/src/demo-labelled-links/index.tsx similarity index 100% rename from demos/demo-labelled-links/index.tsx rename to lib-demo-gallery/src/demo-labelled-links/index.tsx diff --git a/demos/demo-limit-points/index.tsx b/lib-demo-gallery/src/demo-limit-points/index.tsx similarity index 100% rename from demos/demo-limit-points/index.tsx rename to lib-demo-gallery/src/demo-limit-points/index.tsx diff --git a/demos/demo-listeners/index.tsx b/lib-demo-gallery/src/demo-listeners/index.tsx similarity index 100% rename from demos/demo-listeners/index.tsx rename to lib-demo-gallery/src/demo-listeners/index.tsx diff --git a/demos/demo-locks/index.tsx b/lib-demo-gallery/src/demo-locks/index.tsx similarity index 100% rename from demos/demo-locks/index.tsx rename to lib-demo-gallery/src/demo-locks/index.tsx diff --git a/demos/demo-mutate-graph/index.tsx b/lib-demo-gallery/src/demo-mutate-graph/index.tsx similarity index 100% rename from demos/demo-mutate-graph/index.tsx rename to lib-demo-gallery/src/demo-mutate-graph/index.tsx diff --git a/demos/demo-performance/index.tsx b/lib-demo-gallery/src/demo-performance/index.tsx similarity index 100% rename from demos/demo-performance/index.tsx rename to lib-demo-gallery/src/demo-performance/index.tsx diff --git a/demos/demo-serializing/index.tsx b/lib-demo-gallery/src/demo-serializing/index.tsx similarity index 100% rename from demos/demo-serializing/index.tsx rename to lib-demo-gallery/src/demo-serializing/index.tsx diff --git a/demos/demo-simple-flow/index.tsx b/lib-demo-gallery/src/demo-simple-flow/index.tsx similarity index 100% rename from demos/demo-simple-flow/index.tsx rename to lib-demo-gallery/src/demo-simple-flow/index.tsx diff --git a/demos/demo-simple/docs.md b/lib-demo-gallery/src/demo-simple/docs.md similarity index 100% rename from demos/demo-simple/docs.md rename to lib-demo-gallery/src/demo-simple/docs.md diff --git a/demos/demo-simple/index.tsx b/lib-demo-gallery/src/demo-simple/index.tsx similarity index 100% rename from demos/demo-simple/index.tsx rename to lib-demo-gallery/src/demo-simple/index.tsx diff --git a/demos/demo-smart-routing/index.tsx b/lib-demo-gallery/src/demo-smart-routing/index.tsx similarity index 100% rename from demos/demo-smart-routing/index.tsx rename to lib-demo-gallery/src/demo-smart-routing/index.tsx diff --git a/demos/demo-zoom-to-fit/index.tsx b/lib-demo-gallery/src/demo-zoom-to-fit/index.tsx similarity index 100% rename from demos/demo-zoom-to-fit/index.tsx rename to lib-demo-gallery/src/demo-zoom-to-fit/index.tsx diff --git a/tests/e2e/E2EHelper.ts b/lib-demo-gallery/tests-e2e/E2EHelper.ts similarity index 100% rename from tests/e2e/E2EHelper.ts rename to lib-demo-gallery/tests-e2e/E2EHelper.ts diff --git a/tests/e2e/entry.js b/lib-demo-gallery/tests-e2e/entry.js similarity index 100% rename from tests/e2e/entry.js rename to lib-demo-gallery/tests-e2e/entry.js diff --git a/tests/e2e/generate-e2e.js b/lib-demo-gallery/tests-e2e/generate-e2e.js similarity index 100% rename from tests/e2e/generate-e2e.js rename to lib-demo-gallery/tests-e2e/generate-e2e.js diff --git a/tests/e2e/index.html b/lib-demo-gallery/tests-e2e/index.html similarity index 100% rename from tests/e2e/index.html rename to lib-demo-gallery/tests-e2e/index.html diff --git a/tests/e2e/simple-flow.test.ts b/lib-demo-gallery/tests-e2e/simple-flow.test.ts similarity index 100% rename from tests/e2e/simple-flow.test.ts rename to lib-demo-gallery/tests-e2e/simple-flow.test.ts diff --git a/tests/e2e/simple.test.ts b/lib-demo-gallery/tests-e2e/simple.test.ts similarity index 100% rename from tests/e2e/simple.test.ts rename to lib-demo-gallery/tests-e2e/simple.test.ts diff --git a/tests/snapshots/__snapshots__/storybook.test.tsx.snap b/lib-demo-gallery/tests-snapshots/__snapshots__/storybook.test.tsx.snap similarity index 100% rename from tests/snapshots/__snapshots__/storybook.test.tsx.snap rename to lib-demo-gallery/tests-snapshots/__snapshots__/storybook.test.tsx.snap diff --git a/tests/snapshots/config.js b/lib-demo-gallery/tests-snapshots/config.js similarity index 100% rename from tests/snapshots/config.js rename to lib-demo-gallery/tests-snapshots/config.js diff --git a/tests/snapshots/storybook.test.tsx b/lib-demo-gallery/tests-snapshots/storybook.test.tsx similarity index 100% rename from tests/snapshots/storybook.test.tsx rename to lib-demo-gallery/tests-snapshots/storybook.test.tsx diff --git a/tests/snapshots/test_loader.tsx b/lib-demo-gallery/tests-snapshots/test_loader.tsx similarity index 100% rename from tests/snapshots/test_loader.tsx rename to lib-demo-gallery/tests-snapshots/test_loader.tsx diff --git a/demos/tslint.json b/lib-demo-gallery/tslint.json similarity index 100% rename from demos/tslint.json rename to lib-demo-gallery/tslint.json diff --git a/lib-demo-project/.babelrc b/lib-demo-project/.babelrc new file mode 100644 index 0000000..d54c547 --- /dev/null +++ b/lib-demo-project/.babelrc @@ -0,0 +1,10 @@ +{ + "presets": [ + ["@babel/preset-env",{ + "targets": { + "node": true + } + }], + "@babel/preset-react" + ] +} diff --git a/lib-demo-project/README.md b/lib-demo-project/README.md new file mode 100644 index 0000000..54ffbc6 --- /dev/null +++ b/lib-demo-project/README.md @@ -0,0 +1 @@ +# Demo project diff --git a/lib-demo-project/index.html b/lib-demo-project/index.html new file mode 100644 index 0000000..7600273 --- /dev/null +++ b/lib-demo-project/index.html @@ -0,0 +1,12 @@ + + + + + + Project STORM | React Diagrams demo + + + +
+ + diff --git a/lib-demo-project/package.json b/lib-demo-project/package.json new file mode 100644 index 0000000..0b8c357 --- /dev/null +++ b/lib-demo-project/package.json @@ -0,0 +1,28 @@ +{ + "name": "@projectstorm/react-diagrams-demo", + "version": "5.3.2", + "author": "dylanvorster", + "repository": { + "type": "git", + "url": "https://github.com/projectstorm/react-diagrams.git" + }, + "scripts": { + "start": "../node_modules/.bin/webpack-dev-server" + }, + "keywords": [ + "web", + "diagram", + "diagrams", + "react", + "typescript", + "flowchart", + "simple", + "links", + "nodes" + ], + "main": "./dist/index.js", + "typings": "./dist/@types/index", + "dependencies": { + "@projectstorm/react-diagrams": "5.3.2" + } +} diff --git a/lib-demo-project/src/BodyWidget.tsx b/lib-demo-project/src/BodyWidget.tsx new file mode 100644 index 0000000..7753ceb --- /dev/null +++ b/lib-demo-project/src/BodyWidget.tsx @@ -0,0 +1,15 @@ +import * as React from "react"; +import {DiagramEngine, DiagramWidget} from "@projectstorm/react-diagrams"; + +export interface BodyWidgetProps { + engine: DiagramEngine; +} + +export class BodyWidget extends React.Component { + + render() { + return ( + + ); + } +} diff --git a/lib-demo-project/src/custom-node-js/JSCustomNodeFactory.jsx b/lib-demo-project/src/custom-node-js/JSCustomNodeFactory.jsx new file mode 100644 index 0000000..9ae1c3e --- /dev/null +++ b/lib-demo-project/src/custom-node-js/JSCustomNodeFactory.jsx @@ -0,0 +1,24 @@ +import * as React from "react"; +import {AbstractNodeFactory} from "@projectstorm/react-diagrams"; +import {JSCustomNodeModel} from "./JSCustomNodeModel"; +import {JSCustomNodeWidget} from "./JSCustomNodeWidget"; + +console.log(AbstractNodeFactory) + +export class JSCustomNodeFactory extends AbstractNodeFactory{ + + constructor(){ + super("js-custom-node"); + } + + getNewInstance(initialConfig) { + return new JSCustomNodeModel() + } + + generateReactWidget(diagramEngine, node) { + return ( + + ); + } + +} diff --git a/lib-demo-project/src/custom-node-js/JSCustomNodeModel.js b/lib-demo-project/src/custom-node-js/JSCustomNodeModel.js new file mode 100644 index 0000000..43a13f1 --- /dev/null +++ b/lib-demo-project/src/custom-node-js/JSCustomNodeModel.js @@ -0,0 +1,29 @@ +import {DefaultPortModel, NodeModel} from "@projectstorm/react-diagrams"; + +/** + * Example of a custom model using pure javascript + */ +export class JSCustomNodeModel extends NodeModel { + + constructor(options = {}) { + super('js-custom-node'); + this.color = options.color || {options: 'red'}; + + // setup an in and out port + this.addPort(new DefaultPortModel(true,"in")); + this.addPort(new DefaultPortModel(false,"out")); + } + + + serialize() { + return { + ...super.serialize(), + color: this.options.color + } + } + + deSerialize(ob, engine) { + super.deSerialize(ob, engine); + this.color = ob.color; + } +} diff --git a/lib-demo-project/src/custom-node-js/JSCustomNodeWidget.jsx b/lib-demo-project/src/custom-node-js/JSCustomNodeWidget.jsx new file mode 100644 index 0000000..7c77c54 --- /dev/null +++ b/lib-demo-project/src/custom-node-js/JSCustomNodeWidget.jsx @@ -0,0 +1,14 @@ +import * as React from "react"; +import {PortWidget} from "@projectstorm/react-diagrams"; + +export class JSCustomNodeWidget extends React.Component { + + render() { + return ( +
+ + +
+ ); + } +} diff --git a/lib-demo-project/src/custom-node-ts/TSCustomNodeFactory.tsx b/lib-demo-project/src/custom-node-ts/TSCustomNodeFactory.tsx new file mode 100644 index 0000000..48e1a65 --- /dev/null +++ b/lib-demo-project/src/custom-node-ts/TSCustomNodeFactory.tsx @@ -0,0 +1,22 @@ +import * as React from "react"; +import {AbstractNodeFactory, DiagramEngine} from "@projectstorm/react-diagrams"; +import {TSCustomNodeModel} from "./TSCustomNodeModel"; +import {TSCustomNodeWidget} from "./TSCustomNodeWidget"; + +export class TSCustomNodeFactory extends AbstractNodeFactory{ + + constructor(){ + super("ts-custom-node"); + } + + getNewInstance(initialConfig) { + return new TSCustomNodeModel() + } + + generateReactWidget(diagramEngine: DiagramEngine, node: TSCustomNodeModel): JSX.Element { + return ( + + ); + } + +} diff --git a/lib-demo-project/src/custom-node-ts/TSCustomNodeModel.ts b/lib-demo-project/src/custom-node-ts/TSCustomNodeModel.ts new file mode 100644 index 0000000..58e99cf --- /dev/null +++ b/lib-demo-project/src/custom-node-ts/TSCustomNodeModel.ts @@ -0,0 +1,34 @@ +import {DiagramEngine, NodeModel, DefaultPortModel} from "@projectstorm/react-diagrams"; + +export interface TSCustomNodeModelOptions { + color?: string; +} + +export class TSCustomNodeModel extends NodeModel{ + + options: TSCustomNodeModelOptions; + + constructor(options: TSCustomNodeModelOptions = {}){ + super('ts-custom-node'); + this.options = options || { color: 'red' }; + + // setup an in and out port + this.addPort(new DefaultPortModel(true,"in")); + this.addPort(new DefaultPortModel(false,"out")); + } + + serialize() { + return { + ...super.serialize(), + color: this.options.color + } + } + + deSerialize(ob: any, engine: DiagramEngine): void { + super.deSerialize(ob, engine); + this.options = { + color: ob.color + } + } + +} diff --git a/lib-demo-project/src/custom-node-ts/TSCustomNodeWidget.tsx b/lib-demo-project/src/custom-node-ts/TSCustomNodeWidget.tsx new file mode 100644 index 0000000..56fb939 --- /dev/null +++ b/lib-demo-project/src/custom-node-ts/TSCustomNodeWidget.tsx @@ -0,0 +1,27 @@ +import * as React from "react"; +import {PortWidget} from "@projectstorm/react-diagrams-core"; +import {TSCustomNodeModel} from "./TSCustomNodeModel"; + +export interface TSCustomNodeWidgetProps { + node: TSCustomNodeModel; +} + +export interface TSCustomNodeWidgetState { +} + +export class TSCustomNodeWidget extends React.Component { + + constructor(props: TSCustomNodeWidgetProps) { + super(props); + this.state = {} + } + + render() { + return ( +
+ + +
+ ); + } +} diff --git a/lib-demo-project/src/main.css b/lib-demo-project/src/main.css new file mode 100644 index 0000000..85a1d01 --- /dev/null +++ b/lib-demo-project/src/main.css @@ -0,0 +1,21 @@ +*{ + margin: 0; + padding: 0; +} + +html, body, #application{ + height: 100%; +} + +.diagram-container{ + background: #333333; + width: 100%; + height: 100%; +} + +.custom-node{ + border: solid 2px gray; + border-radius: 5px; + width: 50px; + height: 50px; +} diff --git a/lib-demo-project/src/main.tsx b/lib-demo-project/src/main.tsx new file mode 100644 index 0000000..064368a --- /dev/null +++ b/lib-demo-project/src/main.tsx @@ -0,0 +1,43 @@ +import * as React from "react"; +import * as ReactDOM from "react-dom"; +import "./main.css"; +import createEngine, {DefaultLinkModel, DiagramModel} from "@projectstorm/react-diagrams"; +import {JSCustomNodeFactory} from "./custom-node-js/JSCustomNodeFactory"; +import {TSCustomNodeFactory} from "./custom-node-ts/TSCustomNodeFactory"; +import {JSCustomNodeModel} from "./custom-node-js/JSCustomNodeModel"; +import {TSCustomNodeModel} from "./custom-node-ts/TSCustomNodeModel"; +import {BodyWidget} from "./BodyWidget"; + +// create an instance of the engine +const engine = createEngine(); + +// register the two engines +engine.registerNodeFactory(new JSCustomNodeFactory()); +engine.registerNodeFactory(new TSCustomNodeFactory()); + +// create a diagram model +const model = new DiagramModel(); + +//#################################################### +// now create two nodes of each type, and connect them + +const node1 = new JSCustomNodeModel({color: "rgb(192,255,0)"}); +node1.setPosition(50, 50); + +const node2 = new TSCustomNodeModel({color: "rgb(0,192,255)"}); +node2.setPosition(200, 50); + +const link1 = new DefaultLinkModel(); +link1.setSourcePort(node1.getPort('out')); +link1.setTargetPort(node2.getPort('in')); + +model.addAll(node1, node2, link1); + +//#################################################### + +// install the model into the engine +engine.setDiagramModel(model); + +document.addEventListener('DOMContentLoaded', () => { + ReactDOM.render(, document.querySelector("#application")); +}); diff --git a/lib-demo-project/tsconfig.json b/lib-demo-project/tsconfig.json new file mode 100644 index 0000000..9028d02 --- /dev/null +++ b/lib-demo-project/tsconfig.json @@ -0,0 +1,13 @@ +{ + "compileOnSave": false, + "compilerOptions": { + "declaration": false, + "jsx": "react", + "allowJs": true, + "target": "es6", + "moduleResolution": "node" + }, + "include": [ + "./src" + ] +} diff --git a/lib-demo-project/webpack.config.js b/lib-demo-project/webpack.config.js new file mode 100644 index 0000000..7410d23 --- /dev/null +++ b/lib-demo-project/webpack.config.js @@ -0,0 +1,51 @@ +const path = require('path'); +const production = process.env.NODE_ENV === 'production'; +const TerserPlugin = require('terser-webpack-plugin'); + +module.exports = { + mode: production ? 'production' : 'development', + devtool: 'inline-source-map', + entry: './src/main.tsx', + output: { + path: path.join(__dirname, 'dist'), + filename: 'bundle.js' + }, + resolve: { + extensions: ['.ts', '.tsx', '.js', '.jsx'] + }, + optimization: { + minimizer: [ + new TerserPlugin({ + parallel: true, + terserOptions: { + ecma: 6 + } + }) + ] + }, + module: { + rules: [ + { + test: /\.css$/, + use: ['style-loader', 'css-loader'] + }, + { + test: /\.jsx?$/, + exclude: /node_modules/, + use: ['babel-loader'] + }, + { + test: /\.tsx?$/, + use: 'ts-loader' + } + ] + }, + + devServer: { + host: '0.0.0.0', + compress: true, + port: 9000, + disableHostCheck: true, + overlay: true, + } +}; diff --git a/lib-routing/README.md b/lib-routing/README.md new file mode 100644 index 0000000..9fcfbc8 --- /dev/null +++ b/lib-routing/README.md @@ -0,0 +1,3 @@ +# Project STORM > React Diagrams > Dagre + +This package adds dagre integration for laying out nodes and links diff --git a/lib-routing/package.json b/lib-routing/package.json new file mode 100644 index 0000000..9f56098 --- /dev/null +++ b/lib-routing/package.json @@ -0,0 +1,33 @@ +{ + "name": "@projectstorm/react-diagrams-routing", + "version": "5.3.2", + "author": "dylanvorster", + "repository": { + "type": "git", + "url": "https://github.com/projectstorm/react-diagrams.git" + }, + "keywords": [ + "web", + "diagram", + "diagrams", + "react", + "typescript", + "flowchart", + "simple", + "links", + "nodes" + ], + "main": "./dist/index.js", + "typings": "./dist/@types/index", + "dependencies": { + "@projectstorm/react-diagrams-core": "5.3.2", + "@projectstorm/react-diagrams-defaults": "5.3.2" + }, + "peerDependencies": { + "closest": "^0.0.1", + "lodash": "4.*", + "pathfinding": "^0.4.18", + "paths-js": "^0.4.9", + "react": "16.*" + } +} diff --git a/src/routing/PathFinding.ts b/lib-routing/src/engine/PathFinding.ts similarity index 83% rename from src/routing/PathFinding.ts rename to lib-routing/src/engine/PathFinding.ts index 00b418b..a0a77a6 100644 --- a/src/routing/PathFinding.ts +++ b/lib-routing/src/engine/PathFinding.ts @@ -1,12 +1,11 @@ import * as PF from "pathfinding"; -import { DiagramEngine } from "../main"; +import {PathFindingEngine} from "./PathFindingEngine"; /* it can be very expensive to calculate routes when every single pixel on the canvas is individually represented. Using the factor below, we combine values in order to achieve the best trade-off between accuracy and performance. */ -export const ROUTING_SCALING_FACTOR = 5; const pathFinderInstance = new PF.JumpPointFinder({ heuristic: PF.Heuristic.manhattan, @@ -15,9 +14,9 @@ const pathFinderInstance = new PF.JumpPointFinder({ export default class PathFinding { instance: any; - diagramEngine: DiagramEngine; + diagramEngine: PathFindingEngine; - constructor(diagramEngine: DiagramEngine) { + constructor(diagramEngine: PathFindingEngine) { this.instance = pathFinderInstance; this.diagramEngine = diagramEngine; } @@ -40,10 +39,10 @@ export default class PathFinding { const grid = new PF.Grid(matrix); return pathFinderInstance.findPath( - this.diagramEngine.translateRoutingX(Math.floor(from.x / ROUTING_SCALING_FACTOR)), - this.diagramEngine.translateRoutingY(Math.floor(from.y / ROUTING_SCALING_FACTOR)), - this.diagramEngine.translateRoutingX(Math.floor(to.x / ROUTING_SCALING_FACTOR)), - this.diagramEngine.translateRoutingY(Math.floor(to.y / ROUTING_SCALING_FACTOR)), + this.diagramEngine.translateRoutingX(Math.floor(from.x / this.diagramEngine.ROUTING_SCALING_FACTOR)), + this.diagramEngine.translateRoutingY(Math.floor(from.y / this.diagramEngine.ROUTING_SCALING_FACTOR)), + this.diagramEngine.translateRoutingX(Math.floor(to.x / this.diagramEngine.ROUTING_SCALING_FACTOR)), + this.diagramEngine.translateRoutingY(Math.floor(to.y / this.diagramEngine.ROUTING_SCALING_FACTOR)), grid ); } diff --git a/lib-routing/src/engine/PathFindingEngine.ts b/lib-routing/src/engine/PathFindingEngine.ts new file mode 100644 index 0000000..d271b92 --- /dev/null +++ b/lib-routing/src/engine/PathFindingEngine.ts @@ -0,0 +1,233 @@ +import * as _ from "lodash"; +import * as Path from "paths-js/path"; +import {DiagramEngine} from "@projectstorm/react-diagrams-core"; + +export class PathFindingEngine extends DiagramEngine{ + + ROUTING_SCALING_FACTOR: number; + smartRouting: boolean; + + // calculated only when smart routing is active + canvasMatrix: number[][] = []; + routingMatrix: number[][] = []; + + // used when at least one element has negative coordinates + hAdjustmentFactor: number = 0; + vAdjustmentFactor: number = 0; + + constructor(){ + super(); + this.ROUTING_SCALING_FACTOR = 5; + } + + isSmartRoutingEnabled() { + return !!this.smartRouting; + } + setSmartRoutingStatus(status: boolean) { + this.smartRouting = status; + } + + /** + * A representation of the canvas in the following format: + * + * +-----------------+ + * | 0 0 0 0 0 0 0 0 | + * | 0 0 0 0 0 0 0 0 | + * | 0 0 0 0 0 0 0 0 | + * | 0 0 0 0 0 0 0 0 | + * | 0 0 0 0 0 0 0 0 | + * +-----------------+ + * + * In which all walkable points are marked by zeros. + * It uses @link{#ROUTING_SCALING_FACTOR} to reduce the matrix dimensions and improve performance. + */ + getCanvasMatrix(): number[][] { + if (this.canvasMatrix.length === 0) { + this.calculateCanvasMatrix(); + } + + return this.canvasMatrix; + } + calculateCanvasMatrix() { + const { + width: canvasWidth, + hAdjustmentFactor, + height: canvasHeight, + vAdjustmentFactor + } = this.calculateMatrixDimensions(); + + this.hAdjustmentFactor = hAdjustmentFactor; + this.vAdjustmentFactor = vAdjustmentFactor; + + const matrixWidth = Math.ceil(canvasWidth / this.ROUTING_SCALING_FACTOR); + const matrixHeight = Math.ceil(canvasHeight / this.ROUTING_SCALING_FACTOR); + + this.canvasMatrix = _.range(0, matrixHeight).map(() => { + return new Array(matrixWidth).fill(0); + }); + } + + /** + * A representation of the canvas in the following format: + * + * +-----------------+ + * | 0 0 1 1 0 0 0 0 | + * | 0 0 1 1 0 0 1 1 | + * | 0 0 0 0 0 0 1 1 | + * | 1 1 0 0 0 0 0 0 | + * | 1 1 0 0 0 0 0 0 | + * +-----------------+ + * + * In which all points blocked by a node (and its ports) are + * marked as 1; points were there is nothing (ie, free) receive 0. + */ + getRoutingMatrix(): number[][] { + if (this.routingMatrix.length === 0) { + this.calculateRoutingMatrix(); + } + + return this.routingMatrix; + } + calculateRoutingMatrix(): void { + const matrix = _.cloneDeep(this.getCanvasMatrix()); + + // nodes need to be marked as blocked points + this.markNodes(matrix); + // same thing for ports + this.markPorts(matrix); + + this.routingMatrix = matrix; + } + + /** + * The routing matrix does not have negative indexes, but elements could be negatively positioned. + * We use the functions below to translate back and forth between these coordinates, relying on the + * calculated values of hAdjustmentFactor and vAdjustmentFactor. + */ + translateRoutingX(x: number, reverse: boolean = false) { + return x + this.hAdjustmentFactor * (reverse ? -1 : 1); + } + translateRoutingY(y: number, reverse: boolean = false) { + return y + this.vAdjustmentFactor * (reverse ? -1 : 1); + } + + /** + * Despite being a long method, we simply iterate over all three collections (nodes, ports and points) + * to find the highest X and Y dimensions, so we can build the matrix large enough to contain all elements. + */ + calculateMatrixDimensions = (): { + width: number; + hAdjustmentFactor: number; + height: number; + vAdjustmentFactor: number; + } => { + const allNodesCoords = _.values(this.diagramModel.nodes).map(item => ({ + x: item.x, + width: item.width, + y: item.y, + height: item.height + })); + + const allLinks = _.values(this.diagramModel.links); + const allPortsCoords = _.flatMap(allLinks.map(link => [link.sourcePort, link.targetPort])) + .filter(port => port !== null) + .map(item => ({ + x: item.x, + width: item.width, + y: item.y, + height: item.height + })); + const allPointsCoords = _.flatMap(allLinks.map(link => link.points)).map(item => ({ + // points don't have width/height, so let's just use 0 + x: item.x, + width: 0, + y: item.y, + height: 0 + })); + + const canvas = this.canvas as HTMLDivElement; + const minX = + Math.floor( + Math.min(_.minBy(_.concat(allNodesCoords, allPortsCoords, allPointsCoords), item => item.x).x, 0) / + this.ROUTING_SCALING_FACTOR + ) * this.ROUTING_SCALING_FACTOR; + const maxXElement = _.maxBy( + _.concat(allNodesCoords, allPortsCoords, allPointsCoords), + item => item.x + item.width + ); + const maxX = Math.max(maxXElement.x + maxXElement.width, canvas.offsetWidth); + + const minY = + Math.floor( + Math.min(_.minBy(_.concat(allNodesCoords, allPortsCoords, allPointsCoords), item => item.y).y, 0) / + this.ROUTING_SCALING_FACTOR + ) * this.ROUTING_SCALING_FACTOR; + const maxYElement = _.maxBy( + _.concat(allNodesCoords, allPortsCoords, allPointsCoords), + item => item.y + item.height + ); + const maxY = Math.max(maxYElement.y + maxYElement.height, canvas.offsetHeight); + + return { + width: Math.ceil(Math.abs(minX) + maxX), + hAdjustmentFactor: Math.abs(minX) / this.ROUTING_SCALING_FACTOR + 1, + height: Math.ceil(Math.abs(minY) + maxY), + vAdjustmentFactor: Math.abs(minY) / this.ROUTING_SCALING_FACTOR + 1 + }; + }; + + /** + * Updates (by reference) where nodes will be drawn on the matrix passed in. + */ + markNodes = (matrix: number[][]): void => { + _.values(this.diagramModel.nodes).forEach(node => { + const startX = Math.floor(node.x / this.ROUTING_SCALING_FACTOR); + const endX = Math.ceil((node.x + node.width) / this.ROUTING_SCALING_FACTOR); + const startY = Math.floor(node.y / this.ROUTING_SCALING_FACTOR); + const endY = Math.ceil((node.y + node.height) / this.ROUTING_SCALING_FACTOR); + + for (let x = startX - 1; x <= endX + 1; x++) { + for (let y = startY - 1; y < endY + 1; y++) { + this.markMatrixPoint(matrix, this.translateRoutingX(x), this.translateRoutingY(y)); + } + } + }); + }; + + /** + * Updates (by reference) where ports will be drawn on the matrix passed in. + */ + markPorts = (matrix: number[][]): void => { + const allElements = _.flatMap( + _.values(this.diagramModel.links).map(link => [].concat(link.sourcePort, link.targetPort)) + ); + allElements.filter(port => port !== null).forEach(port => { + const startX = Math.floor(port.x / this.ROUTING_SCALING_FACTOR); + const endX = Math.ceil((port.x + port.width) / this.ROUTING_SCALING_FACTOR); + const startY = Math.floor(port.y / this.ROUTING_SCALING_FACTOR); + const endY = Math.ceil((port.y + port.height) / this.ROUTING_SCALING_FACTOR); + + for (let x = startX - 1; x <= endX + 1; x++) { + for (let y = startY - 1; y < endY + 1; y++) { + this.markMatrixPoint(matrix, this.translateRoutingX(x), this.translateRoutingY(y)); + } + } + }); + }; + + markMatrixPoint = (matrix: number[][], x: number, y: number) => { + if (matrix[y] !== undefined && matrix[y][x] !== undefined) { + matrix[y][x] = 1; + } + }; + + generateDynamicPath(pathCoords: number[][]) { + let path = Path(); + path = path.moveto(pathCoords[0][0] * this.ROUTING_SCALING_FACTOR, pathCoords[0][1] * this.ROUTING_SCALING_FACTOR); + pathCoords.slice(1).forEach(coords => { + path = path.lineto(coords[0] * this.ROUTING_SCALING_FACTOR, coords[1] * this.ROUTING_SCALING_FACTOR); + }); + return path.print(); + } + +} diff --git a/lib-routing/src/link/PathFindingLinkWidget.tsx b/lib-routing/src/link/PathFindingLinkWidget.tsx new file mode 100644 index 0000000..22677bd --- /dev/null +++ b/lib-routing/src/link/PathFindingLinkWidget.tsx @@ -0,0 +1,291 @@ +import * as React from "react"; +import * as _ from "lodash"; +import { + BaseWidget, + BaseWidgetProps, + LabelModel, + PointModel, +} from "@projectstorm/react-diagrams-core"; +import PathFinding from "../engine/PathFinding"; +import {PathFindingEngine} from "../engine/PathFindingEngine"; +import {DefaultLinkFactory, DefaultLinkModel} from "@projectstorm/react-diagrams-defaults"; + +export interface PathFindingLinkWidgetProps extends BaseWidgetProps { + color?: string; + width?: number; + smooth?: boolean; + link: DefaultLinkModel; + diagramEngine: PathFindingEngine; + pointAdded?: (point: PointModel, event: MouseEvent) => any; +} + +export interface DefaultLinkState { + selected: boolean; +} + +export class PathFindingLinkWidget extends BaseWidget { + public static defaultProps: PathFindingLinkWidgetProps = { + color: "black", + width: 3, + link: null, + engine: null, + smooth: false, + diagramEngine: null + }; + + // DOM references to the label and paths (if label is given), used to calculate dynamic positioning + refLabels: { [id: string]: HTMLElement }; + refPaths: SVGPathElement[]; + + pathFinding: PathFinding; // only set when smart routing is active + + constructor(props: PathFindingLinkWidgetProps) { + super("srd-default-link", props); + + this.refLabels = {}; + this.refPaths = []; + this.state = { + selected: false + }; + + if (props.diagramEngine.isSmartRoutingEnabled()) { + this.pathFinding = new PathFinding(this.props.diagramEngine); + } + } + + calculateAllLabelPosition() { + _.forEach(this.props.link.labels, (label, index) => { + this.calculateLabelPosition(label, index + 1); + }); + } + + componentDidUpdate() { + if (this.props.link.labels.length > 0) { + window.requestAnimationFrame(this.calculateAllLabelPosition.bind(this)); + } + } + + componentDidMount() { + if (this.props.link.labels.length > 0) { + window.requestAnimationFrame(this.calculateAllLabelPosition.bind(this)); + } + } + + generatePoint(pointIndex: number): JSX.Element { + let x = this.props.link.points[pointIndex].x; + let y = this.props.link.points[pointIndex].y; + + return ( + + + { + this.setState({ selected: false }); + }} + onMouseEnter={() => { + this.setState({ selected: true }); + }} + data-id={this.props.link.points[pointIndex].id} + data-linkid={this.props.link.id} + cx={x} + cy={y} + r={15} + opacity={0} + className={"point " + this.bem("__point")} + /> + + ); + } + + addPointToLink = (event: MouseEvent, index: number): void => { + if ( + !event.shiftKey && + !this.props.diagramEngine.isModelLocked(this.props.link) && + this.props.link.points.length - 1 <= this.props.diagramEngine.getMaxNumberPointsPerLink() + ) { + const point = new PointModel(this.props.link, this.props.diagramEngine.getRelativeMousePoint(event)); + point.setSelected(true); + this.forceUpdate(); + this.props.link.addPoint(point, index); + this.props.pointAdded(point, event); + } + }; + + generateLabel(label: LabelModel) { + const canvas = this.props.diagramEngine.canvas as HTMLElement; + return ( + +
(this.refLabels[label.id] = ref)}> + {this.props.diagramEngine + .getFactoryForLabel(label) + .generateReactWidget(this.props.diagramEngine, label)} +
+
+ ); + } + + generateLink(path: string, extraProps: any, id: string | number): JSX.Element { + var props = this.props; + + var Bottom = React.cloneElement( + (props.diagramEngine.getFactoryForLink(this.props.link) as DefaultLinkFactory).generateLinkSegment( + this.props.link, + this, + this.state.selected || this.props.link.isSelected(), + path + ), + { + ref: ref => ref && this.refPaths.push(ref) + } + ); + + var Top = React.cloneElement(Bottom, { + ...extraProps, + strokeLinecap: "round", + onMouseLeave: () => { + this.setState({selected: false}); + }, + onMouseEnter: () => { + this.setState({selected: true}); + }, + ref: null, + "data-linkid": this.props.link.getID(), + strokeOpacity: this.state.selected ? 0.1 : 0, + strokeWidth: 20, + onContextMenu: () => { + if (!this.props.diagramEngine.isModelLocked(this.props.link)) { + event.preventDefault(); + this.props.link.remove(); + } + } + }); + + return ( + + {Bottom} + {Top} + + ); + } + + findPathAndRelativePositionToRenderLabel = (index: number): { path: any; position: number } => { + // an array to hold all path lengths, making sure we hit the DOM only once to fetch this information + const lengths = this.refPaths.map(path => path.getTotalLength()); + + // calculate the point where we want to display the label + let labelPosition = + lengths.reduce((previousValue, currentValue) => previousValue + currentValue, 0) * + (index / (this.props.link.labels.length + 1)); + + // find the path where the label will be rendered and calculate the relative position + let pathIndex = 0; + while (pathIndex < this.refPaths.length) { + if (labelPosition - lengths[pathIndex] < 0) { + return { + path: this.refPaths[pathIndex], + position: labelPosition + }; + } + + // keep searching + labelPosition -= lengths[pathIndex]; + pathIndex++; + } + }; + + calculateLabelPosition = (label, index: number) => { + if (!this.refLabels[label.id]) { + // no label? nothing to do here + return; + } + + const {path, position} = this.findPathAndRelativePositionToRenderLabel(index); + + const labelDimensions = { + width: this.refLabels[label.id].offsetWidth, + height: this.refLabels[label.id].offsetHeight + }; + + const pathCentre = path.getPointAtLength(position); + + const labelCoordinates = { + x: pathCentre.x - labelDimensions.width / 2 + label.offsetX, + y: pathCentre.y - labelDimensions.height / 2 + label.offsetY + }; + this.refLabels[label.id].setAttribute( + "style", + `transform: translate(${labelCoordinates.x}px, ${labelCoordinates.y}px);` + ); + }; + + + render() { + const {diagramEngine} = this.props; + if (!diagramEngine.nodesRendered) { + return null; + } + + //ensure id is present for all points on the path + var points = this.props.link.points; + var paths = []; + + + // first step: calculate a direct path between the points being linked + const directPathCoords = this.pathFinding.calculateDirectPath(_.first(points), _.last(points)); + + const routingMatrix = diagramEngine.getRoutingMatrix(); + // now we need to extract, from the routing matrix, the very first walkable points + // so they can be used as origin and destination of the link to be created + const smartLink = this.pathFinding.calculateLinkStartEndCoords(routingMatrix, directPathCoords); + + if (smartLink) { + const {start, end, pathToStart, pathToEnd} = smartLink; + + // second step: calculate a path avoiding hitting other elements + const simplifiedPath = this.pathFinding.calculateDynamicPath( + routingMatrix, + start, + end, + pathToStart, + pathToEnd + ); + + paths.push( + //smooth: boolean, extraProps: any, id: string | number, firstPoint: PointModel, lastPoint: PointModel + this.generateLink( + this.props.diagramEngine.generateDynamicPath(simplifiedPath), + { + onMouseDown: event => { + this.addPointToLink(event, 1); + } + }, + "0" + ) + ); + } + + this.refPaths = []; + return ( + + {paths} + {_.map(this.props.link.labels, labelModel => { + return this.generateLabel(labelModel); + })} + + ); + } +} diff --git a/tests/routing/PathFinding.test.tsx b/lib-routing/tests/PathFinding.test.tsx similarity index 100% rename from tests/routing/PathFinding.test.tsx rename to lib-routing/tests/PathFinding.test.tsx diff --git a/package.json b/package.json index d5417ce..b77ae31 100644 --- a/package.json +++ b/package.json @@ -1,10 +1,17 @@ { "name": "@projectstorm/react-diagrams", "version": "5.3.2", + "author": "dylanvorster", + "private": true, "repository": { "type": "git", "url": "https://github.com/projectstorm/react-diagrams.git" }, + "workspaces": [ + "lib-all", + "lib-core", + "lib-defaults" + ], "keywords": [ "web", "diagram", @@ -16,21 +23,9 @@ "links", "nodes" ], - "main": "./dist/main.js", - "typings": "./dist/@types/main", - "author": "dylanvorster", "scripts": { - "build:ts": "webpack", - "build:ts:prod": "cross-env NODE_ENV=production webpack", - "build:sass:prod": "node-sass --output-style compressed ./src/sass/main.scss > ./dist/style.min.css", - "storybook": "start-storybook -p 9001 -c .storybook", - "storybook:build": "build-storybook -c .storybook -o .out", - "storybook:github": "storybook-to-ghpages", - "pretty": "prettier --use-tabs --write \"{src,demos,tests}/**/*.{ts,tsx}\" --print-width 120", - "lint": "tslint -p .", - "test:ci": "rm -rf ./dist && node ./tests/e2e/generate-e2e.js && jest --runInBand --no-cache", - "test": "jest --no-cache", - "prepublishOnly": "rm -rf ./dist && yarn run build:ts:prod && yarn run build:sass:prod" + "build": "yarn build:clean && lerna exec -- yarn build", + "build:clean": "lerna run clean --stream" }, "peerDependencies": { "closest": "^0.0.1", @@ -41,6 +36,7 @@ }, "devDependencies": { "@babel/core": "^7.5.5", + "@babel/preset-react": "^7.0.0", "@storybook/addon-actions": "^5.1.9", "@storybook/addon-options": "^5.1.9", "@storybook/addon-storyshots": "^5.1.9", @@ -69,6 +65,7 @@ "jest-cli": "^24.8.0", "jest-puppeteer": "^4.3.0", "json-beautify": "^1.1.0", + "lerna": "^3.16.3", "lodash": "4.*", "node-sass": "^4.12.0", "pathfinding": "^0.4.18", @@ -93,6 +90,7 @@ "val-loader": "^1.1.1", "webpack": "^4.36.1", "webpack-cli": "^3.3.6", + "webpack-dev-server": "^3.7.2", "webpack-node-externals": "^1.7.2" } } diff --git a/src/main.ts b/src/main.ts deleted file mode 100644 index 68e8504..0000000 --- a/src/main.ts +++ /dev/null @@ -1,53 +0,0 @@ -/** - * @author Dylan Vorster - */ - -export * from "./Toolkit"; -export * from "./BaseEntity"; -export * from "./DiagramEngine"; - -export * from "./defaults/models/DefaultNodeModel"; -export * from "./defaults/models/DefaultPortModel"; -export * from "./defaults/models/DefaultLinkModel"; -export * from "./defaults/models/DefaultLabelModel"; - -export * from "./defaults/factories/DefaultLinkFactory"; -export * from "./defaults/factories/DefaultNodeFactory"; -export * from "./defaults/factories/DefaultPortFactory"; -export * from "./defaults/factories/DefaultLabelFactory"; - -export * from "./defaults/widgets/DefaultLinkWidget"; -export * from "./defaults/widgets/DefaultLabelWidget"; -export * from "./defaults/widgets/DefaultNodeWidget"; -export * from "./defaults/widgets/DefaultPortLabelWidget"; - -export * from "./factories/AbstractFactory"; -export * from "./factories/AbstractLabelFactory"; -export * from "./factories/AbstractLinkFactory"; -export * from "./factories/AbstractNodeFactory"; -export * from "./factories/AbstractPortFactory"; - -export * from "./routing/PathFinding"; - -export * from "./actions/BaseAction"; -export * from "./actions/MoveCanvasAction"; -export * from "./actions/MoveItemsAction"; -export * from "./actions/SelectingAction"; - -export * from "./models/SelectionModel"; -export * from "./models/BaseModel"; -export * from "./models/DiagramModel"; -export * from "./models/LinkModel"; -export * from "./models/NodeModel"; -export * from "./models/PointModel"; -export * from "./models/PortModel"; -export * from "./models/LabelModel"; - -export * from "./widgets/DiagramWidget"; -export * from "./widgets/LinkWidget"; -export * from "./widgets/NodeWidget"; -export * from "./widgets/PortWidget"; -export * from "./widgets/BaseWidget"; - -export * from "./widgets/layers/LinkLayerWidget"; -export * from "./widgets/layers/NodeLayerWidget"; diff --git a/src/sass/main.scss b/src/sass/main.scss deleted file mode 100644 index 9deab43..0000000 --- a/src/sass/main.scss +++ /dev/null @@ -1,11 +0,0 @@ -@import "DiagramWidget"; -@import "LinkLayerWidget"; -@import "NodeLayerWidget"; -@import "NodeWidget"; -@import "PortWidget"; - -//defaults -@import "defaults/DefaultNodeWidget"; -@import "defaults/DefaultPortWidget"; -@import "defaults/DefaultLabelWidget"; -@import "defaults/DefaultLinkWidget"; \ No newline at end of file diff --git a/tests/helpers/css-mock.js b/tests/helpers/css-mock.js deleted file mode 100644 index a099545..0000000 --- a/tests/helpers/css-mock.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = {}; \ No newline at end of file diff --git a/tests/helpers/storybook-loader.js b/tests/helpers/storybook-loader.js deleted file mode 100644 index e1f7b8c..0000000 --- a/tests/helpers/storybook-loader.js +++ /dev/null @@ -1,27 +0,0 @@ -var glob = require("glob"); -const tsc = require('typescript'); -const tsConfig = require('../../tsconfig.json'); -const path = require("path"); - -let root = path.normalize(__dirname+"/../../"); - -module.exports = { - process(src, p) { - - src += ` - storiesOf("Tests", module) - `; - let files = glob.sync(__dirname + '/../../demos/demo-*/index.tsx'); - - - src += files.map((file) => { - return ` - .add("`+ path.relative(root,file)+`",() => { - return require("` + file + `").default(); - }) - ` - }).join('\n'); - - return tsc.transpile(src, tsConfig.compilerOptions, p, []); - }, -}; \ No newline at end of file diff --git a/tests/tslint.json b/tests/tslint.json deleted file mode 100644 index a23574f..0000000 --- a/tests/tslint.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "extends": [ - "../tslint.json" - ], - "rules": { - "no-console": false, - "max-classes-per-file": false - } -} \ No newline at end of file diff --git a/tsconfig.json b/tsconfig.json index 69165b8..328fedf 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,18 +1,13 @@ { "compileOnSave": false, - "name": "storm-react-diagrams", "compilerOptions": { "suppressExcessPropertyErrors": true, - "declaration": true, + "declaration": false, "outDir": "dist/@types", "strictNullChecks": false, "sourceMap": true, "skipLibCheck": true, "jsx": "react", - "baseUrl": ".", - "paths": { - "storm-react-diagrams": ["src/main.ts"] - }, "target": "es6", "module": "commonjs", "lib": [ diff --git a/webpack.config.js b/webpack.shared.js similarity index 57% rename from webpack.config.js rename to webpack.shared.js index 29b4f7b..41ad3d8 100644 --- a/webpack.config.js +++ b/webpack.shared.js @@ -1,20 +1,26 @@ const production = process.env.NODE_ENV === "production"; const TerserPlugin = require('terser-webpack-plugin'); const nodeExternals = require('webpack-node-externals'); +const path = require('path'); -module.exports = - //for building the umd distribution - { - entry: "./src/main.ts", +module.exports = (directory) => { + return { + entry: path.join(directory, 'index.ts'), output: { - filename: "main.js", - path: __dirname + "/dist", + filename: "index.js", + path: path.join(directory, 'dist'), libraryTarget: "umd", - library: "storm-react-diagrams" }, - externals: [nodeExternals()], + externals: [ + nodeExternals({modulesDir: path.join(directory, 'node_modules')}), + nodeExternals({modulesDir: path.join(path.join(directory, '..'), 'node_modules')}) + ], module: { rules: [ + { + test: /\.scss$/, + use: ['style-loader', 'css-loader', 'sass-loader'] + }, { enforce: "pre", test: /\.js$/, @@ -34,4 +40,5 @@ module.exports = optimization: { minimizer: [new TerserPlugin()], } - }; + } +} diff --git a/yarn.lock b/yarn.lock index ef4d1ae..86b8455 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1062,6 +1062,78 @@ resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.2.3.tgz#dfa0c92efe44a1d1a7974fb49ffeb40ef2da5a27" integrity sha512-zVgvPwGK7c1aVdUVc9Qv7SqepOGRDrqCw7KZPSZziWGxSlbII3gmvGLPzLX4d0n0BMbamBacUrN22zOMyFFEkQ== +"@evocateur/libnpmaccess@^3.1.2": + version "3.1.2" + resolved "https://registry.yarnpkg.com/@evocateur/libnpmaccess/-/libnpmaccess-3.1.2.tgz#ecf7f6ce6b004e9f942b098d92200be4a4b1c845" + integrity sha512-KSCAHwNWro0CF2ukxufCitT9K5LjL/KuMmNzSu8wuwN2rjyKHD8+cmOsiybK+W5hdnwc5M1SmRlVCaMHQo+3rg== + dependencies: + "@evocateur/npm-registry-fetch" "^4.0.0" + aproba "^2.0.0" + figgy-pudding "^3.5.1" + get-stream "^4.0.0" + npm-package-arg "^6.1.0" + +"@evocateur/libnpmpublish@^1.2.2": + version "1.2.2" + resolved "https://registry.yarnpkg.com/@evocateur/libnpmpublish/-/libnpmpublish-1.2.2.tgz#55df09d2dca136afba9c88c759ca272198db9f1a" + integrity sha512-MJrrk9ct1FeY9zRlyeoyMieBjGDG9ihyyD9/Ft6MMrTxql9NyoEx2hw9casTIP4CdqEVu+3nQ2nXxoJ8RCXyFg== + dependencies: + "@evocateur/npm-registry-fetch" "^4.0.0" + aproba "^2.0.0" + figgy-pudding "^3.5.1" + get-stream "^4.0.0" + lodash.clonedeep "^4.5.0" + normalize-package-data "^2.4.0" + npm-package-arg "^6.1.0" + semver "^5.5.1" + ssri "^6.0.1" + +"@evocateur/npm-registry-fetch@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@evocateur/npm-registry-fetch/-/npm-registry-fetch-4.0.0.tgz#8c4c38766d8d32d3200fcb0a83f064b57365ed66" + integrity sha512-k1WGfKRQyhJpIr+P17O5vLIo2ko1PFLKwoetatdduUSt/aQ4J2sJrJwwatdI5Z3SiYk/mRH9S3JpdmMFd/IK4g== + dependencies: + JSONStream "^1.3.4" + bluebird "^3.5.1" + figgy-pudding "^3.4.1" + lru-cache "^5.1.1" + make-fetch-happen "^5.0.0" + npm-package-arg "^6.1.0" + safe-buffer "^5.1.2" + +"@evocateur/pacote@^9.6.3": + version "9.6.3" + resolved "https://registry.yarnpkg.com/@evocateur/pacote/-/pacote-9.6.3.tgz#bcd7adbd3c2ef303aa89bd24166f06dd9c080d89" + integrity sha512-ExqNqcbdHQprEgKnY/uQz7WRtyHRbQxRl4JnVkSkmtF8qffRrF9K+piZKNLNSkRMOT/3H0e3IP44QVCHaXMWOQ== + dependencies: + "@evocateur/npm-registry-fetch" "^4.0.0" + bluebird "^3.5.3" + cacache "^12.0.0" + figgy-pudding "^3.5.1" + get-stream "^4.1.0" + glob "^7.1.4" + lru-cache "^5.1.1" + make-fetch-happen "^5.0.0" + minimatch "^3.0.4" + minipass "^2.3.5" + mississippi "^3.0.0" + mkdirp "^0.5.1" + normalize-package-data "^2.5.0" + npm-package-arg "^6.1.0" + npm-packlist "^1.4.4" + npm-pick-manifest "^2.2.3" + osenv "^0.1.5" + promise-inflight "^1.0.1" + promise-retry "^1.1.1" + protoduck "^5.0.1" + rimraf "^2.6.3" + safe-buffer "^5.2.0" + semver "^5.7.0" + ssri "^6.0.1" + tar "^4.4.10" + unique-filename "^1.1.1" + which "^1.3.1" + "@hapi/address@2.x.x": version "2.0.0" resolved "https://registry.yarnpkg.com/@hapi/address/-/address-2.0.0.tgz#9f05469c88cb2fd3dcd624776b54ee95c312126a" @@ -1245,6 +1317,684 @@ "@types/istanbul-reports" "^1.1.1" "@types/yargs" "^12.0.9" +"@lerna/add@3.16.2": + version "3.16.2" + resolved "https://registry.yarnpkg.com/@lerna/add/-/add-3.16.2.tgz#90ecc1be7051cfcec75496ce122f656295bd6e94" + integrity sha512-RAAaF8aODPogj2Ge9Wj3uxPFIBGpog9M+HwSuq03ZnkkO831AmasCTJDqV+GEpl1U2DvnhZQEwHpWmTT0uUeEw== + dependencies: + "@evocateur/pacote" "^9.6.3" + "@lerna/bootstrap" "3.16.2" + "@lerna/command" "3.16.0" + "@lerna/filter-options" "3.16.0" + "@lerna/npm-conf" "3.16.0" + "@lerna/validation-error" "3.13.0" + dedent "^0.7.0" + npm-package-arg "^6.1.0" + p-map "^2.1.0" + semver "^6.2.0" + +"@lerna/batch-packages@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/batch-packages/-/batch-packages-3.16.0.tgz#1c16cb697e7d718177db744cbcbdac4e30253c8c" + integrity sha512-7AdMkANpubY/FKFI01im01tlx6ygOBJ/0JcixMUWoWP/7Ds3SWQF22ID6fbBr38jUWptYLDs2fagtTDL7YUPuA== + dependencies: + "@lerna/package-graph" "3.16.0" + npmlog "^4.1.2" + +"@lerna/bootstrap@3.16.2": + version "3.16.2" + resolved "https://registry.yarnpkg.com/@lerna/bootstrap/-/bootstrap-3.16.2.tgz#be268d940221d3c3270656b9b791b492559ad9d8" + integrity sha512-I+gs7eh6rv9Vyd+CwqL7sftRfOOsSzCle8cv/CGlMN7/p7EAVhxEdAw8SYoHIKHzipXszuqqy1Y3opyleD0qdA== + dependencies: + "@lerna/batch-packages" "3.16.0" + "@lerna/command" "3.16.0" + "@lerna/filter-options" "3.16.0" + "@lerna/has-npm-version" "3.16.0" + "@lerna/npm-install" "3.16.0" + "@lerna/package-graph" "3.16.0" + "@lerna/pulse-till-done" "3.13.0" + "@lerna/rimraf-dir" "3.14.2" + "@lerna/run-lifecycle" "3.16.2" + "@lerna/run-parallel-batches" "3.16.0" + "@lerna/symlink-binary" "3.16.2" + "@lerna/symlink-dependencies" "3.16.2" + "@lerna/validation-error" "3.13.0" + dedent "^0.7.0" + get-port "^4.2.0" + multimatch "^3.0.0" + npm-package-arg "^6.1.0" + npmlog "^4.1.2" + p-finally "^1.0.0" + p-map "^2.1.0" + p-map-series "^1.0.0" + p-waterfall "^1.0.0" + read-package-tree "^5.1.6" + semver "^6.2.0" + +"@lerna/changed@3.16.2": + version "3.16.2" + resolved "https://registry.yarnpkg.com/@lerna/changed/-/changed-3.16.2.tgz#14e5250781201a430769d868c67933e4b96d30e7" + integrity sha512-CXr4R1s/IGsLy0xjVfgFtv4Hx8gUvIgmGteRuH2Ma9bl1yMcyy8zQd/e0M+dzL6tEhjo56ZTSs9hHiU2w/uwIg== + dependencies: + "@lerna/collect-updates" "3.16.0" + "@lerna/command" "3.16.0" + "@lerna/listable" "3.16.0" + "@lerna/output" "3.13.0" + "@lerna/version" "3.16.2" + +"@lerna/check-working-tree@3.14.2": + version "3.14.2" + resolved "https://registry.yarnpkg.com/@lerna/check-working-tree/-/check-working-tree-3.14.2.tgz#5ce007722180a69643a8456766ed8a91fc7e9ae1" + integrity sha512-7safqxM/MYoAoxZxulUDtIJIbnBIgo0PB/FHytueG+9VaX7GMnDte2Bt1EKa0dz2sAyQdmQ3Q8ZXpf/6JDjaeg== + dependencies: + "@lerna/collect-uncommitted" "3.14.2" + "@lerna/describe-ref" "3.14.2" + "@lerna/validation-error" "3.13.0" + +"@lerna/child-process@3.14.2": + version "3.14.2" + resolved "https://registry.yarnpkg.com/@lerna/child-process/-/child-process-3.14.2.tgz#950240cba83f7dfe25247cfa6c9cebf30b7d94f6" + integrity sha512-xnq+W5yQb6RkwI0p16ZQnrn6HkloH/MWTw4lGE1nKsBLAUbmSU5oTE93W1nrG0X3IMF/xWc9UYvNdUGMWvZZ4w== + dependencies: + chalk "^2.3.1" + execa "^1.0.0" + strong-log-transformer "^2.0.0" + +"@lerna/clean@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/clean/-/clean-3.16.0.tgz#1c134334cacea1b1dbeacdc580e8b9240db8efa1" + integrity sha512-5P9U5Y19WmYZr7UAMGXBpY7xCRdlR7zhHy8MAPDKVx70rFIBS6nWXn5n7Kntv74g7Lm1gJ2rsiH5tj1OPcRJgg== + dependencies: + "@lerna/command" "3.16.0" + "@lerna/filter-options" "3.16.0" + "@lerna/prompt" "3.13.0" + "@lerna/pulse-till-done" "3.13.0" + "@lerna/rimraf-dir" "3.14.2" + p-map "^2.1.0" + p-map-series "^1.0.0" + p-waterfall "^1.0.0" + +"@lerna/cli@3.13.0": + version "3.13.0" + resolved "https://registry.yarnpkg.com/@lerna/cli/-/cli-3.13.0.tgz#3d7b357fdd7818423e9681a7b7f2abd106c8a266" + integrity sha512-HgFGlyCZbYaYrjOr3w/EsY18PdvtsTmDfpUQe8HwDjXlPeCCUgliZjXLOVBxSjiOvPeOSwvopwIHKWQmYbwywg== + dependencies: + "@lerna/global-options" "3.13.0" + dedent "^0.7.0" + npmlog "^4.1.2" + yargs "^12.0.1" + +"@lerna/collect-uncommitted@3.14.2": + version "3.14.2" + resolved "https://registry.yarnpkg.com/@lerna/collect-uncommitted/-/collect-uncommitted-3.14.2.tgz#b5ed00d800bea26bb0d18404432b051eee8d030e" + integrity sha512-4EkQu4jIOdNL2BMzy/N0ydHB8+Z6syu6xiiKXOoFl0WoWU9H1jEJCX4TH7CmVxXL1+jcs8FIS2pfQz4oew99Eg== + dependencies: + "@lerna/child-process" "3.14.2" + chalk "^2.3.1" + figgy-pudding "^3.5.1" + npmlog "^4.1.2" + +"@lerna/collect-updates@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/collect-updates/-/collect-updates-3.16.0.tgz#6db3ce8a740a4e2b972c033a63bdfb77f2553d8c" + integrity sha512-HwAIl815X2TNlmcp28zCrSdXfoZWNP7GJPEqNWYk7xDJTYLqQ+SrmKUePjb3AMGBwYAraZSEJLbHdBpJ5+cHmQ== + dependencies: + "@lerna/child-process" "3.14.2" + "@lerna/describe-ref" "3.14.2" + minimatch "^3.0.4" + npmlog "^4.1.2" + slash "^2.0.0" + +"@lerna/command@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/command/-/command-3.16.0.tgz#ba3dba49cb5ce4d11b48269cf95becd86e30773f" + integrity sha512-u7tE4GC4/gfbPA9eQg+0ulnoJ+PMoMqomx033r/IxqZrHtmJR9+pF/37S0fsxJ2hX/RMFPC7c9Q/i8NEufSpdQ== + dependencies: + "@lerna/child-process" "3.14.2" + "@lerna/package-graph" "3.16.0" + "@lerna/project" "3.16.0" + "@lerna/validation-error" "3.13.0" + "@lerna/write-log-file" "3.13.0" + dedent "^0.7.0" + execa "^1.0.0" + is-ci "^2.0.0" + lodash "^4.17.14" + npmlog "^4.1.2" + +"@lerna/conventional-commits@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/conventional-commits/-/conventional-commits-3.16.0.tgz#141a4e584d8765542e77fafe9a7448c6e48db196" + integrity sha512-zdvhU+aI7galRyLBFDhvC8T7NbGORJiZbIw/Qgp/TzkSaJfOAE3R7J8J1OZKDgxvhOoVhzMphNycaV3DiUlERQ== + dependencies: + "@lerna/validation-error" "3.13.0" + conventional-changelog-angular "^5.0.3" + conventional-changelog-core "^3.1.6" + conventional-recommended-bump "^5.0.0" + fs-extra "^8.1.0" + get-stream "^4.0.0" + lodash.template "^4.5.0" + npm-package-arg "^6.1.0" + npmlog "^4.1.2" + pify "^4.0.1" + semver "^6.2.0" + +"@lerna/create-symlink@3.16.2": + version "3.16.2" + resolved "https://registry.yarnpkg.com/@lerna/create-symlink/-/create-symlink-3.16.2.tgz#412cb8e59a72f5a7d9463e4e4721ad2070149967" + integrity sha512-pzXIJp6av15P325sgiIRpsPXLFmkisLhMBCy4764d+7yjf2bzrJ4gkWVMhsv4AdF0NN3OyZ5jjzzTtLNqfR+Jw== + dependencies: + "@zkochan/cmd-shim" "^3.1.0" + fs-extra "^8.1.0" + npmlog "^4.1.2" + +"@lerna/create@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/create/-/create-3.16.0.tgz#4de841ec7d98b29bb19fb7d6ad982e65f7a150e8" + integrity sha512-OZApR1Iz7awutbmj4sAArwhqCyKgcrnw9rH0aWAUrkYWrD1w4TwkvAcYAsfx5GpQGbLQwoXhoyyPwPfZRRWz3Q== + dependencies: + "@evocateur/pacote" "^9.6.3" + "@lerna/child-process" "3.14.2" + "@lerna/command" "3.16.0" + "@lerna/npm-conf" "3.16.0" + "@lerna/validation-error" "3.13.0" + camelcase "^5.0.0" + dedent "^0.7.0" + fs-extra "^8.1.0" + globby "^9.2.0" + init-package-json "^1.10.3" + npm-package-arg "^6.1.0" + p-reduce "^1.0.0" + pify "^4.0.1" + semver "^6.2.0" + slash "^2.0.0" + validate-npm-package-license "^3.0.3" + validate-npm-package-name "^3.0.0" + whatwg-url "^7.0.0" + +"@lerna/describe-ref@3.14.2": + version "3.14.2" + resolved "https://registry.yarnpkg.com/@lerna/describe-ref/-/describe-ref-3.14.2.tgz#edc3c973f5ca9728d23358c4f4d3b55a21f65be5" + integrity sha512-qa5pzDRK2oBQXNjyRmRnN7E8a78NMYfQjjlRFB0KNHMsT6mCiL9+8kIS39sSE2NqT8p7xVNo2r2KAS8R/m3CoQ== + dependencies: + "@lerna/child-process" "3.14.2" + npmlog "^4.1.2" + +"@lerna/diff@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/diff/-/diff-3.16.0.tgz#6d09a786f9f5b343a2fdc460eb0be08a05b420aa" + integrity sha512-QUpVs5TPl8vBIne10/vyjUxanQBQQp7Lk3iaB8MnCysKr0O+oy7trWeFVDPEkBTCD177By7yPGyW5Yey1nCBbA== + dependencies: + "@lerna/child-process" "3.14.2" + "@lerna/command" "3.16.0" + "@lerna/validation-error" "3.13.0" + npmlog "^4.1.2" + +"@lerna/exec@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/exec/-/exec-3.16.0.tgz#2b6c033cee46181b6eede0eb12aad5c2c0181e89" + integrity sha512-mH3O5NXf/O88jBaBBTUf+d56CUkxpg782s3Jxy7HWbVuSUULt3iMRPTh+zEXO5/555etsIVVDDyUR76meklrJA== + dependencies: + "@lerna/child-process" "3.14.2" + "@lerna/command" "3.16.0" + "@lerna/filter-options" "3.16.0" + "@lerna/run-topologically" "3.16.0" + "@lerna/validation-error" "3.13.0" + p-map "^2.1.0" + +"@lerna/filter-options@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/filter-options/-/filter-options-3.16.0.tgz#b1660b4480c02a5c6efa4d0cd98b9afde4ed0bba" + integrity sha512-InIi1fF8+PxpCwir9bIy+pGxrdE6hvN0enIs1eNGCVS1TTE8osNgiZXa838bMQ1yaEccdcnVX6Z03BNKd56kNg== + dependencies: + "@lerna/collect-updates" "3.16.0" + "@lerna/filter-packages" "3.16.0" + dedent "^0.7.0" + +"@lerna/filter-packages@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/filter-packages/-/filter-packages-3.16.0.tgz#7d34dc8530c71016263d6f67dc65308ecf11c9fc" + integrity sha512-eGFzQTx0ogkGDCnbTuXqssryR6ilp8+dcXt6B+aq1MaqL/vOJRZyqMm4TY3CUOUnzZCi9S2WWyMw3PnAJOF+kg== + dependencies: + "@lerna/validation-error" "3.13.0" + multimatch "^3.0.0" + npmlog "^4.1.2" + +"@lerna/get-npm-exec-opts@3.13.0": + version "3.13.0" + resolved "https://registry.yarnpkg.com/@lerna/get-npm-exec-opts/-/get-npm-exec-opts-3.13.0.tgz#d1b552cb0088199fc3e7e126f914e39a08df9ea5" + integrity sha512-Y0xWL0rg3boVyJk6An/vurKzubyJKtrxYv2sj4bB8Mc5zZ3tqtv0ccbOkmkXKqbzvNNF7VeUt1OJ3DRgtC/QZw== + dependencies: + npmlog "^4.1.2" + +"@lerna/get-packed@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/get-packed/-/get-packed-3.16.0.tgz#1b316b706dcee86c7baa55e50b087959447852ff" + integrity sha512-AjsFiaJzo1GCPnJUJZiTW6J1EihrPkc2y3nMu6m3uWFxoleklsSCyImumzVZJssxMi3CPpztj8LmADLedl9kXw== + dependencies: + fs-extra "^8.1.0" + ssri "^6.0.1" + tar "^4.4.8" + +"@lerna/github-client@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/github-client/-/github-client-3.16.0.tgz#619874e461641d4f59ab1b3f1a7ba22dba88125d" + integrity sha512-IVJjcKjkYaUEPJsDyAblHGEFFNKCRyMagbIDm14L7Ab94ccN6i4TKOqAFEJn2SJHYvKKBdp3Zj2zNlASOMe3DA== + dependencies: + "@lerna/child-process" "3.14.2" + "@octokit/plugin-enterprise-rest" "^3.6.1" + "@octokit/rest" "^16.28.4" + git-url-parse "^11.1.2" + npmlog "^4.1.2" + +"@lerna/gitlab-client@3.15.0": + version "3.15.0" + resolved "https://registry.yarnpkg.com/@lerna/gitlab-client/-/gitlab-client-3.15.0.tgz#91f4ec8c697b5ac57f7f25bd50fe659d24aa96a6" + integrity sha512-OsBvRSejHXUBMgwWQqNoioB8sgzL/Pf1pOUhHKtkiMl6aAWjklaaq5HPMvTIsZPfS6DJ9L5OK2GGZuooP/5c8Q== + dependencies: + node-fetch "^2.5.0" + npmlog "^4.1.2" + whatwg-url "^7.0.0" + +"@lerna/global-options@3.13.0": + version "3.13.0" + resolved "https://registry.yarnpkg.com/@lerna/global-options/-/global-options-3.13.0.tgz#217662290db06ad9cf2c49d8e3100ee28eaebae1" + integrity sha512-SlZvh1gVRRzYLVluz9fryY1nJpZ0FHDGB66U9tFfvnnxmueckRQxLopn3tXj3NU1kc3QANT2I5BsQkOqZ4TEFQ== + +"@lerna/has-npm-version@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/has-npm-version/-/has-npm-version-3.16.0.tgz#55764a4ce792f0c8553cf996a17f554b9e843288" + integrity sha512-TIY036dA9J8OyTrZq9J+it2DVKifL65k7hK8HhkUPpitJkw6jwbMObA/8D40LOGgWNPweJWqmlrTbRSwsR7DrQ== + dependencies: + "@lerna/child-process" "3.14.2" + semver "^6.2.0" + +"@lerna/import@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/import/-/import-3.16.0.tgz#b57cb453f4acfc60f6541fcbba10674055cb179d" + integrity sha512-trsOmGHzw0rL/f8BLNvd+9PjoTkXq2Dt4/V2UCha254hMQaYutbxcYu8iKPxz9x86jSPlH7FpbTkkHXDsoY7Yg== + dependencies: + "@lerna/child-process" "3.14.2" + "@lerna/command" "3.16.0" + "@lerna/prompt" "3.13.0" + "@lerna/pulse-till-done" "3.13.0" + "@lerna/validation-error" "3.13.0" + dedent "^0.7.0" + fs-extra "^8.1.0" + p-map-series "^1.0.0" + +"@lerna/init@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/init/-/init-3.16.0.tgz#31e0d66bbededee603338b487a42674a072b7a7d" + integrity sha512-Ybol/x5xMtBgokx4j7/Y3u0ZmNh0NiSWzBFVaOs2NOJKvuqrWimF67DKVz7yYtTYEjtaMdug64ohFF4jcT/iag== + dependencies: + "@lerna/child-process" "3.14.2" + "@lerna/command" "3.16.0" + fs-extra "^8.1.0" + p-map "^2.1.0" + write-json-file "^3.2.0" + +"@lerna/link@3.16.2": + version "3.16.2" + resolved "https://registry.yarnpkg.com/@lerna/link/-/link-3.16.2.tgz#6c3a5658f6448a64dddca93d9348ac756776f6f6" + integrity sha512-eCPg5Lo8HT525fIivNoYF3vWghO3UgEVFdbsiPmhzwI7IQyZro5HWYzLtywSAdEog5XZpd2Bbn0CsoHWBB3gww== + dependencies: + "@lerna/command" "3.16.0" + "@lerna/package-graph" "3.16.0" + "@lerna/symlink-dependencies" "3.16.2" + p-map "^2.1.0" + slash "^2.0.0" + +"@lerna/list@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/list/-/list-3.16.0.tgz#883c00b2baf1e03c93e54391372f67a01b773c2f" + integrity sha512-TkvstoPsgKqqQ0KfRumpsdMXfRSEhdXqOLq519XyI5IRWYxhoqXqfi8gG37UoBPhBNoe64japn5OjphF3rOmQA== + dependencies: + "@lerna/command" "3.16.0" + "@lerna/filter-options" "3.16.0" + "@lerna/listable" "3.16.0" + "@lerna/output" "3.13.0" + +"@lerna/listable@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/listable/-/listable-3.16.0.tgz#e6dc47a2d5a6295222663486f50e5cffc580f043" + integrity sha512-mtdAT2EEECqrJSDm/aXlOUFr1MRE4p6hppzY//Klp05CogQy6uGaKk+iKG5yyCLaOXFFZvG4HfO11CmoGSDWzw== + dependencies: + "@lerna/query-graph" "3.16.0" + chalk "^2.3.1" + columnify "^1.5.4" + +"@lerna/log-packed@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/log-packed/-/log-packed-3.16.0.tgz#f83991041ee77b2495634e14470b42259fd2bc16" + integrity sha512-Fp+McSNBV/P2mnLUYTaSlG8GSmpXM7krKWcllqElGxvAqv6chk2K3c2k80MeVB4WvJ9tRjUUf+i7HUTiQ9/ckQ== + dependencies: + byte-size "^5.0.1" + columnify "^1.5.4" + has-unicode "^2.0.1" + npmlog "^4.1.2" + +"@lerna/npm-conf@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/npm-conf/-/npm-conf-3.16.0.tgz#1c10a89ae2f6c2ee96962557738685300d376827" + integrity sha512-HbO3DUrTkCAn2iQ9+FF/eisDpWY5POQAOF1m7q//CZjdC2HSW3UYbKEGsSisFxSfaF9Z4jtrV+F/wX6qWs3CuA== + dependencies: + config-chain "^1.1.11" + pify "^4.0.1" + +"@lerna/npm-dist-tag@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/npm-dist-tag/-/npm-dist-tag-3.16.0.tgz#b2184cee5e1f291277396854820e1117a544b7ee" + integrity sha512-MQrBkqJJB9+eNphuj9w90QPMOs4NQXMuSRk9NqzeFunOmdDopPCV0Q7IThSxEuWnhJ2n3B7G0vWUP7tNMPdqIQ== + dependencies: + "@evocateur/npm-registry-fetch" "^4.0.0" + "@lerna/otplease" "3.16.0" + figgy-pudding "^3.5.1" + npm-package-arg "^6.1.0" + npmlog "^4.1.2" + +"@lerna/npm-install@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/npm-install/-/npm-install-3.16.0.tgz#8ec76a7a13b183bde438fd46296bf7a0d6f86017" + integrity sha512-APUOIilZCzDzce92uLEwzt1r7AEMKT/hWA1ThGJL+PO9Rn8A95Km3o2XZAYG4W0hR+P4O2nSVuKbsjQtz8CjFQ== + dependencies: + "@lerna/child-process" "3.14.2" + "@lerna/get-npm-exec-opts" "3.13.0" + fs-extra "^8.1.0" + npm-package-arg "^6.1.0" + npmlog "^4.1.2" + signal-exit "^3.0.2" + write-pkg "^3.1.0" + +"@lerna/npm-publish@3.16.2": + version "3.16.2" + resolved "https://registry.yarnpkg.com/@lerna/npm-publish/-/npm-publish-3.16.2.tgz#a850b54739446c4aa766a0ceabfa9283bb0be676" + integrity sha512-tGMb9vfTxP57vUV5svkBQxd5Tzc+imZbu9ZYf8Mtwe0+HYfDjNiiHLIQw7G95w4YRdc5KsCE8sQ0uSj+f2soIg== + dependencies: + "@evocateur/libnpmpublish" "^1.2.2" + "@lerna/otplease" "3.16.0" + "@lerna/run-lifecycle" "3.16.2" + figgy-pudding "^3.5.1" + fs-extra "^8.1.0" + npm-package-arg "^6.1.0" + npmlog "^4.1.2" + pify "^4.0.1" + read-package-json "^2.0.13" + +"@lerna/npm-run-script@3.14.2": + version "3.14.2" + resolved "https://registry.yarnpkg.com/@lerna/npm-run-script/-/npm-run-script-3.14.2.tgz#8c518ea9d241a641273e77aad6f6fddc16779c3f" + integrity sha512-LbVFv+nvAoRTYLMrJlJ8RiakHXrLslL7Jp/m1R18vYrB8LYWA3ey+nz5Tel2OELzmjUiemAKZsD9h6i+Re5egg== + dependencies: + "@lerna/child-process" "3.14.2" + "@lerna/get-npm-exec-opts" "3.13.0" + npmlog "^4.1.2" + +"@lerna/otplease@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/otplease/-/otplease-3.16.0.tgz#de66aec4f3e835a465d7bea84b58a4ab6590a0fa" + integrity sha512-uqZ15wYOHC+/V0WnD2iTLXARjvx3vNrpiIeyIvVlDB7rWse9mL4egex/QSgZ+lDx1OID7l2kgvcUD9cFpbqB7Q== + dependencies: + "@lerna/prompt" "3.13.0" + figgy-pudding "^3.5.1" + +"@lerna/output@3.13.0": + version "3.13.0" + resolved "https://registry.yarnpkg.com/@lerna/output/-/output-3.13.0.tgz#3ded7cc908b27a9872228a630d950aedae7a4989" + integrity sha512-7ZnQ9nvUDu/WD+bNsypmPG5MwZBwu86iRoiW6C1WBuXXDxM5cnIAC1m2WxHeFnjyMrYlRXM9PzOQ9VDD+C15Rg== + dependencies: + npmlog "^4.1.2" + +"@lerna/pack-directory@3.16.2": + version "3.16.2" + resolved "https://registry.yarnpkg.com/@lerna/pack-directory/-/pack-directory-3.16.2.tgz#de41b544c29d67f189a5902a2965dd8c8c3e64d9" + integrity sha512-aM8MQnkhRUW81s/UBEUKA+qRfSdf9TcJzTY9Wjrd94UxzULn1BQ+Y3F8cysTR0TS/ILLyiteIllxlVSByWHD2w== + dependencies: + "@lerna/get-packed" "3.16.0" + "@lerna/package" "3.16.0" + "@lerna/run-lifecycle" "3.16.2" + figgy-pudding "^3.5.1" + npm-packlist "^1.4.4" + npmlog "^4.1.2" + tar "^4.4.10" + temp-write "^3.4.0" + +"@lerna/package-graph@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/package-graph/-/package-graph-3.16.0.tgz#909c90fb41e02f2c19387342d2a5eefc36d56836" + integrity sha512-A2mum/gNbv7zCtAwJqoxzqv89As73OQNK2MgSX1SHWya46qoxO9a9Z2c5lOFQ8UFN5ZxqWMfFYXRCz7qzwmFXw== + dependencies: + "@lerna/prerelease-id-from-version" "3.16.0" + "@lerna/validation-error" "3.13.0" + npm-package-arg "^6.1.0" + npmlog "^4.1.2" + semver "^6.2.0" + +"@lerna/package@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/package/-/package-3.16.0.tgz#7e0a46e4697ed8b8a9c14d59c7f890e0d38ba13c" + integrity sha512-2lHBWpaxcBoiNVbtyLtPUuTYEaB/Z+eEqRS9duxpZs6D+mTTZMNy6/5vpEVSCBmzvdYpyqhqaYjjSLvjjr5Riw== + dependencies: + load-json-file "^5.3.0" + npm-package-arg "^6.1.0" + write-pkg "^3.1.0" + +"@lerna/prerelease-id-from-version@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/prerelease-id-from-version/-/prerelease-id-from-version-3.16.0.tgz#b24bfa789f5e1baab914d7b08baae9b7bd7d83a1" + integrity sha512-qZyeUyrE59uOK8rKdGn7jQz+9uOpAaF/3hbslJVFL1NqF9ELDTqjCPXivuejMX/lN4OgD6BugTO4cR7UTq/sZA== + dependencies: + semver "^6.2.0" + +"@lerna/project@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/project/-/project-3.16.0.tgz#2469a4e346e623fd922f38f5a12931dfb8f2a946" + integrity sha512-NrKcKK1EqXqhrGvslz6Q36+ZHuK3zlDhGdghRqnxDcHxMPT01NgLcmsnymmQ+gjMljuLRmvKYYCuHrknzX8VrA== + dependencies: + "@lerna/package" "3.16.0" + "@lerna/validation-error" "3.13.0" + cosmiconfig "^5.1.0" + dedent "^0.7.0" + dot-prop "^4.2.0" + glob-parent "^5.0.0" + globby "^9.2.0" + load-json-file "^5.3.0" + npmlog "^4.1.2" + p-map "^2.1.0" + resolve-from "^4.0.0" + write-json-file "^3.2.0" + +"@lerna/prompt@3.13.0": + version "3.13.0" + resolved "https://registry.yarnpkg.com/@lerna/prompt/-/prompt-3.13.0.tgz#53571462bb3f5399cc1ca6d335a411fe093426a5" + integrity sha512-P+lWSFokdyvYpkwC3it9cE0IF2U5yy2mOUbGvvE4iDb9K7TyXGE+7lwtx2thtPvBAfIb7O13POMkv7df03HJeA== + dependencies: + inquirer "^6.2.0" + npmlog "^4.1.2" + +"@lerna/publish@3.16.3": + version "3.16.3" + resolved "https://registry.yarnpkg.com/@lerna/publish/-/publish-3.16.3.tgz#35f199e82cc08931f352ead6b3269d72389e0e48" + integrity sha512-FflnKuWG2usrnhfTY4pBg1e99ITCw4RgWCGtySvRT+BlSI6tzhImqfa4TpQsVpIXn88xyYzo9dvND1G73aRI9w== + dependencies: + "@evocateur/libnpmaccess" "^3.1.2" + "@evocateur/npm-registry-fetch" "^4.0.0" + "@evocateur/pacote" "^9.6.3" + "@lerna/check-working-tree" "3.14.2" + "@lerna/child-process" "3.14.2" + "@lerna/collect-updates" "3.16.0" + "@lerna/command" "3.16.0" + "@lerna/describe-ref" "3.14.2" + "@lerna/log-packed" "3.16.0" + "@lerna/npm-conf" "3.16.0" + "@lerna/npm-dist-tag" "3.16.0" + "@lerna/npm-publish" "3.16.2" + "@lerna/otplease" "3.16.0" + "@lerna/output" "3.13.0" + "@lerna/pack-directory" "3.16.2" + "@lerna/prerelease-id-from-version" "3.16.0" + "@lerna/prompt" "3.13.0" + "@lerna/pulse-till-done" "3.13.0" + "@lerna/run-lifecycle" "3.16.2" + "@lerna/run-topologically" "3.16.0" + "@lerna/validation-error" "3.13.0" + "@lerna/version" "3.16.2" + figgy-pudding "^3.5.1" + fs-extra "^8.1.0" + npm-package-arg "^6.1.0" + npmlog "^4.1.2" + p-finally "^1.0.0" + p-map "^2.1.0" + p-pipe "^1.2.0" + semver "^6.2.0" + +"@lerna/pulse-till-done@3.13.0": + version "3.13.0" + resolved "https://registry.yarnpkg.com/@lerna/pulse-till-done/-/pulse-till-done-3.13.0.tgz#c8e9ce5bafaf10d930a67d7ed0ccb5d958fe0110" + integrity sha512-1SOHpy7ZNTPulzIbargrgaJX387csN7cF1cLOGZiJQA6VqnS5eWs2CIrG8i8wmaUavj2QlQ5oEbRMVVXSsGrzA== + dependencies: + npmlog "^4.1.2" + +"@lerna/query-graph@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/query-graph/-/query-graph-3.16.0.tgz#e6a46ebcd9d5b03f018a06eca2b471735353953c" + integrity sha512-p0RO+xmHDO95ChJdWkcy9TNLysLkoDARXeRHzY5U54VCwl3Ot/2q8fMCVlA5UeGXDutEyyByl3URqEpcQCWI7Q== + dependencies: + "@lerna/package-graph" "3.16.0" + figgy-pudding "^3.5.1" + +"@lerna/resolve-symlink@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/resolve-symlink/-/resolve-symlink-3.16.0.tgz#37fc7095fabdbcf317c26eb74e0d0bde8efd2386" + integrity sha512-Ibj5e7njVHNJ/NOqT4HlEgPFPtPLWsO7iu59AM5bJDcAJcR96mLZ7KGVIsS2tvaO7akMEJvt2P+ErwCdloG3jQ== + dependencies: + fs-extra "^8.1.0" + npmlog "^4.1.2" + read-cmd-shim "^1.0.1" + +"@lerna/rimraf-dir@3.14.2": + version "3.14.2" + resolved "https://registry.yarnpkg.com/@lerna/rimraf-dir/-/rimraf-dir-3.14.2.tgz#103a49882abd85d42285d05cc76869b89f21ffd2" + integrity sha512-eFNkZsy44Bu9v1Hrj5Zk6omzg8O9h/7W6QYK1TTUHeyrjTEwytaNQlqF0lrTLmEvq55sviV42NC/8P3M2cvq8Q== + dependencies: + "@lerna/child-process" "3.14.2" + npmlog "^4.1.2" + path-exists "^3.0.0" + rimraf "^2.6.2" + +"@lerna/run-lifecycle@3.16.2": + version "3.16.2" + resolved "https://registry.yarnpkg.com/@lerna/run-lifecycle/-/run-lifecycle-3.16.2.tgz#67b288f8ea964db9ea4fb1fbc7715d5bbb0bce00" + integrity sha512-RqFoznE8rDpyyF0rOJy3+KjZCeTkO8y/OB9orPauR7G2xQ7PTdCpgo7EO6ZNdz3Al+k1BydClZz/j78gNCmL2A== + dependencies: + "@lerna/npm-conf" "3.16.0" + figgy-pudding "^3.5.1" + npm-lifecycle "^3.1.2" + npmlog "^4.1.2" + +"@lerna/run-parallel-batches@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/run-parallel-batches/-/run-parallel-batches-3.16.0.tgz#5ace7911a2dd31dfd1e53c61356034e27df0e1fb" + integrity sha512-2J/Nyv+MvogmQEfC7VcS21ifk7w0HVvzo2yOZRPvkCzGRu/rducxtB4RTcr58XCZ8h/Bt1aqQYKExu3c/3GXwg== + dependencies: + p-map "^2.1.0" + p-map-series "^1.0.0" + +"@lerna/run-topologically@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/run-topologically/-/run-topologically-3.16.0.tgz#39e29cfc628bbc8e736d8e0d0e984997ac01bbf5" + integrity sha512-4Hlpv4zDtKWa5Z0tPkeu0sK+bxZEKgkNESMGmWrUCNfj7xwvAJurcraK8+a2Y0TFYwf0qjSLY/MzX+ZbJA3Cgw== + dependencies: + "@lerna/query-graph" "3.16.0" + figgy-pudding "^3.5.1" + p-queue "^4.0.0" + +"@lerna/run@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/run/-/run-3.16.0.tgz#1ea568c6f303e47fa00b3403a457836d40738fd2" + integrity sha512-woTeLlB1OAAz4zzjdI6RyIxSGuxiUPHJZm89E1pDEPoWwtQV6HMdMgrsQd9ATsJ5Ez280HH4bF/LStAlqW8Ufg== + dependencies: + "@lerna/command" "3.16.0" + "@lerna/filter-options" "3.16.0" + "@lerna/npm-run-script" "3.14.2" + "@lerna/output" "3.13.0" + "@lerna/run-topologically" "3.16.0" + "@lerna/timer" "3.13.0" + "@lerna/validation-error" "3.13.0" + p-map "^2.1.0" + +"@lerna/symlink-binary@3.16.2": + version "3.16.2" + resolved "https://registry.yarnpkg.com/@lerna/symlink-binary/-/symlink-binary-3.16.2.tgz#f98a3d9da9e56f1d302dc0d5c2efeb951483ee66" + integrity sha512-kz9XVoFOGSF83gg4gBqH+mG6uxfJfTp8Uy+Cam40CvMiuzfODrGkjuBEFoM/uO2QOAwZvbQDYOBpKUa9ZxHS1Q== + dependencies: + "@lerna/create-symlink" "3.16.2" + "@lerna/package" "3.16.0" + fs-extra "^8.1.0" + p-map "^2.1.0" + +"@lerna/symlink-dependencies@3.16.2": + version "3.16.2" + resolved "https://registry.yarnpkg.com/@lerna/symlink-dependencies/-/symlink-dependencies-3.16.2.tgz#91d9909d35897aebd76a03644a00cd03c4128240" + integrity sha512-wnZqGJQ+Jvr1I3inxrkffrFZfmQI7Ta8gySw/UWCy95QtZWF/f5yk8zVIocCAsjzD0wgb3jJE3CFJ9W5iwWk1A== + dependencies: + "@lerna/create-symlink" "3.16.2" + "@lerna/resolve-symlink" "3.16.0" + "@lerna/symlink-binary" "3.16.2" + fs-extra "^8.1.0" + p-finally "^1.0.0" + p-map "^2.1.0" + p-map-series "^1.0.0" + +"@lerna/timer@3.13.0": + version "3.13.0" + resolved "https://registry.yarnpkg.com/@lerna/timer/-/timer-3.13.0.tgz#bcd0904551db16e08364d6c18e5e2160fc870781" + integrity sha512-RHWrDl8U4XNPqY5MQHkToWS9jHPnkLZEt5VD+uunCKTfzlxGnRCr3/zVr8VGy/uENMYpVP3wJa4RKGY6M0vkRw== + +"@lerna/validation-error@3.13.0": + version "3.13.0" + resolved "https://registry.yarnpkg.com/@lerna/validation-error/-/validation-error-3.13.0.tgz#c86b8f07c5ab9539f775bd8a54976e926f3759c3" + integrity sha512-SiJP75nwB8GhgwLKQfdkSnDufAaCbkZWJqEDlKOUPUvVOplRGnfL+BPQZH5nvq2BYSRXsksXWZ4UHVnQZI/HYA== + dependencies: + npmlog "^4.1.2" + +"@lerna/version@3.16.2": + version "3.16.2" + resolved "https://registry.yarnpkg.com/@lerna/version/-/version-3.16.2.tgz#1ce6232109cdd3070b9196a6cacf9ef02b807898" + integrity sha512-Gd4ajnhYkpIpHfuzRbcqfdiMLgOTnZfKsJDIdWsMJDoerhHFtNkhVSyaw4rQd2AIO4dCi63QxuGM9fUTFk0VKw== + dependencies: + "@lerna/check-working-tree" "3.14.2" + "@lerna/child-process" "3.14.2" + "@lerna/collect-updates" "3.16.0" + "@lerna/command" "3.16.0" + "@lerna/conventional-commits" "3.16.0" + "@lerna/github-client" "3.16.0" + "@lerna/gitlab-client" "3.15.0" + "@lerna/output" "3.13.0" + "@lerna/prerelease-id-from-version" "3.16.0" + "@lerna/prompt" "3.13.0" + "@lerna/run-lifecycle" "3.16.2" + "@lerna/run-topologically" "3.16.0" + "@lerna/validation-error" "3.13.0" + chalk "^2.3.1" + dedent "^0.7.0" + minimatch "^3.0.4" + npmlog "^4.1.2" + p-map "^2.1.0" + p-pipe "^1.2.0" + p-reduce "^1.0.0" + p-waterfall "^1.0.0" + semver "^6.2.0" + slash "^2.0.0" + temp-write "^3.4.0" + +"@lerna/write-log-file@3.13.0": + version "3.13.0" + resolved "https://registry.yarnpkg.com/@lerna/write-log-file/-/write-log-file-3.13.0.tgz#b78d9e4cfc1349a8be64d91324c4c8199e822a26" + integrity sha512-RibeMnDPvlL8bFYW5C8cs4mbI3AHfQef73tnJCQ/SgrXZHehmHnsyWUiE7qDQCAo+B1RfTapvSyFF69iPj326A== + dependencies: + npmlog "^4.1.2" + write-file-atomic "^2.3.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" @@ -1252,6 +2002,66 @@ call-me-maybe "^1.0.1" glob-to-regexp "^0.3.0" +"@nodelib/fs.stat@^1.1.2": + version "1.1.3" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz#2b5a3ab3f918cca48a8c754c08168e3f03eba61b" + integrity sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw== + +"@octokit/endpoint@^5.1.0": + version "5.3.2" + resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-5.3.2.tgz#2deda2d869cac9ba7f370287d55667be2a808d4b" + integrity sha512-gRjteEM9I6f4D8vtwU2iGUTn9RX/AJ0SVXiqBUEuYEWVGGAVjSXdT0oNmghH5lvQNWs8mwt6ZaultuG6yXivNw== + dependencies: + deepmerge "4.0.0" + is-plain-object "^3.0.0" + universal-user-agent "^3.0.0" + url-template "^2.0.8" + +"@octokit/plugin-enterprise-rest@^3.6.1": + version "3.6.2" + resolved "https://registry.yarnpkg.com/@octokit/plugin-enterprise-rest/-/plugin-enterprise-rest-3.6.2.tgz#74de25bef21e0182b4fa03a8678cd00a4e67e561" + integrity sha512-3wF5eueS5OHQYuAEudkpN+xVeUsg8vYEMMenEzLphUZ7PRZ8OJtDcsreL3ad9zxXmBbaFWzLmFcdob5CLyZftA== + +"@octokit/request-error@^1.0.1", "@octokit/request-error@^1.0.2": + version "1.0.4" + resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-1.0.4.tgz#15e1dc22123ba4a9a4391914d80ec1e5303a23be" + integrity sha512-L4JaJDXn8SGT+5G0uX79rZLv0MNJmfGa4vb4vy1NnpjSnWDLJRy6m90udGwvMmavwsStgbv2QNkPzzTCMmL+ig== + dependencies: + deprecation "^2.0.0" + once "^1.4.0" + +"@octokit/request@^5.0.0": + version "5.0.1" + resolved "https://registry.yarnpkg.com/@octokit/request/-/request-5.0.1.tgz#6705c9a883db0ac0f58cee717e806b6575d4a199" + integrity sha512-SHOk/APYpfrzV1RNf7Ux8SZi+vZXhMIB2dBr4TQR6ExMX8R4jcy/0gHw26HLe1dWV7Wxe9WzYyDSEC0XwnoCSQ== + dependencies: + "@octokit/endpoint" "^5.1.0" + "@octokit/request-error" "^1.0.1" + deprecation "^2.0.0" + is-plain-object "^3.0.0" + node-fetch "^2.3.0" + once "^1.4.0" + universal-user-agent "^3.0.0" + +"@octokit/rest@^16.28.4": + version "16.28.6" + resolved "https://registry.yarnpkg.com/@octokit/rest/-/rest-16.28.6.tgz#9e73104077c9c06cf3b1628603b4b0c55a117809" + integrity sha512-ERfzS6g6ZNPJkEUclxLenr+UEncbymCe//IBrWWdp59nslYDeJboq07Ue9brX05Uv0+SY3kwA33cdiVBVPAOMQ== + dependencies: + "@octokit/request" "^5.0.0" + "@octokit/request-error" "^1.0.2" + atob-lite "^2.0.0" + before-after-hook "^2.0.0" + btoa-lite "^1.0.0" + deprecation "^2.0.0" + lodash.get "^4.4.2" + lodash.set "^4.3.2" + lodash.uniq "^4.5.0" + octokit-pagination-methods "^1.1.0" + once "^1.4.0" + universal-user-agent "^3.0.0" + url-template "^2.0.8" + "@reach/router@^1.2.1": version "1.2.1" resolved "https://registry.yarnpkg.com/@reach/router/-/router-1.2.1.tgz#34ae3541a5ac44fa7796e5506a5d7274a162be4e" @@ -1739,6 +2549,20 @@ dependencies: "@babel/types" "^7.3.0" +"@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/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0": version "2.0.1" resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz#42995b446db9a48a11a07ec083499a860e9138ff" @@ -1783,6 +2607,11 @@ resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.136.tgz#413e85089046b865d960c9ff1d400e04c31ab60f" integrity sha512-0GJhzBdvsW2RUccNHOBkabI8HZVdOXmXbXhuKlDEd5Vv12P7oAVGfomGp3Ne21o5D/qu1WmthlNKFaoZJJeErA== +"@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 "8.5.2" resolved "https://registry.yarnpkg.com/@types/node/-/node-8.5.2.tgz#83b8103fa9a2c2e83d78f701a9aa7c9539739aa5" @@ -1997,6 +2826,23 @@ resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ== +"@zkochan/cmd-shim@^3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@zkochan/cmd-shim/-/cmd-shim-3.1.0.tgz#2ab8ed81f5bb5452a85f25758eb9b8681982fd2e" + integrity sha512-o8l0+x7C7sMZU3v9GuJIAU10qQLtwR1dtRQIOmlNMtyaqhmpXOzx1HWiYoWfmmf9HHZoAkXpc9TM9PQYF9d4Jg== + dependencies: + is-windows "^1.0.0" + mkdirp-promise "^5.0.1" + mz "^2.5.0" + +JSONStream@^1.0.4, JSONStream@^1.3.4: + version "1.3.5" + resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.5.tgz#3208c1f08d3a4d99261ab64f92302bc15e111ca0" + integrity sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ== + dependencies: + jsonparse "^1.2.0" + through ">=2.2.7 <3" + abab@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/abab/-/abab-1.0.4.tgz#5faad9c2c07f60dd76770f71cf025b62a63cfd4e" @@ -2005,7 +2851,7 @@ abbrev@1: version "1.1.1" resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" -accepts@~1.3.7: +accepts@~1.3.4, accepts@~1.3.5, accepts@~1.3.7: version "1.3.7" resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.7.tgz#531bc726517a3b2b41f850021c6cc15eaab507cd" integrity sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA== @@ -2032,13 +2878,27 @@ address@1.0.3, address@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/address/-/address-1.0.3.tgz#b5f50631f8d6cec8bd20c963963afb55e06cbce9" -agent-base@^4.3.0: +agent-base@4, agent-base@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-4.3.0.tgz#8165f01c436009bccad0b1d122f05ed770efc6ee" integrity sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg== dependencies: es6-promisify "^5.0.0" +agent-base@~4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-4.2.1.tgz#d89e5999f797875674c07d87f260fc41e83e8ca9" + integrity sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg== + dependencies: + es6-promisify "^5.0.0" + +agentkeepalive@^3.4.1: + version "3.5.2" + resolved "https://registry.yarnpkg.com/agentkeepalive/-/agentkeepalive-3.5.2.tgz#a113924dd3fa24a0bc3b78108c450c2abee00f67" + integrity sha512-e0L/HNe6qkQ7H19kTlRRqUibEAwDK5AFk6y3PtMsuut2VAH6+Q4xZml1tNDJD7kSAyqmbG/K08K5WEJYtUrSlQ== + dependencies: + humanize-ms "^1.2.1" + "airbnb-js-shims@^1 || ^2": version "2.2.0" resolved "https://registry.yarnpkg.com/airbnb-js-shims/-/airbnb-js-shims-2.2.0.tgz#46e1d9d9516f704ef736de76a3b6d484df9a96d8" @@ -2163,6 +3023,11 @@ ansi-styles@^3.2.1: dependencies: color-convert "^1.9.0" +any-promise@^1.0.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f" + integrity sha1-q8av7tzqUugJzcA3au0845Y10X8= + anymatch@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" @@ -2179,6 +3044,11 @@ aproba@^1.0.3, aproba@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" +aproba@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/aproba/-/aproba-2.0.0.tgz#52520b8ae5b569215b354efc0caa3fe1e45a8adc" + integrity sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ== + are-we-there-yet@~1.1.2: version "1.1.4" resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz#bb5dca382bb94f05e15194373d16fd3ba1ca110d" @@ -2204,6 +3074,11 @@ arr-union@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" +array-differ@^2.0.3: + version "2.1.0" + resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-2.1.0.tgz#4b9c1c3f14b906757082925769e8ab904f4801b1" + integrity sha512-KbUpJgx909ZscOc/7CLATBFam7P1Z1QRQInvgT0UztM9Q72aGKCunKASAl7WNW0tnPmPyEMeMhdsfWhfmW037w== + array-equal@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" @@ -2225,6 +3100,16 @@ array-flatten@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" +array-flatten@^2.1.0: + version "2.1.2" + resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-2.1.2.tgz#24ef80a28c1a893617e2149b0c6d0d788293b099" + integrity sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ== + +array-ify@^1.0.0: + version "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" @@ -2240,7 +3125,7 @@ array-reduce@~0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/array-reduce/-/array-reduce-0.0.0.tgz#173899d3ffd1c7d9383e4479525dbe278cab5f2b" -array-union@^1.0.1: +array-union@^1.0.1, array-union@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" dependencies: @@ -2276,7 +3161,7 @@ arrify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" -asap@~2.0.3: +asap@^2.0.0, asap@~2.0.3: version "2.0.6" resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" @@ -2344,6 +3229,11 @@ async-limiter@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.0.tgz#78faed8c3d074ab81f22b4e985d79e8738f720f8" +async@^1.5.2: + version "1.5.2" + resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" + integrity sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo= + async@^2.1.4, async@^2.5.0: version "2.6.0" resolved "https://registry.yarnpkg.com/async/-/async-2.6.0.tgz#61a29abb6fcc026fea77e56d1c6ec53a795951f4" @@ -2354,6 +3244,11 @@ asynckit@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" +atob-lite@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/atob-lite/-/atob-lite-2.0.0.tgz#0fef5ad46f1bd7a8502c65727f0367d5ee43d696" + integrity sha1-D+9a1G8b16hQLGVyfwNn1e5D1pY= + atob@^2.0.0: version "2.0.3" resolved "https://registry.yarnpkg.com/atob/-/atob-2.0.3.tgz#19c7a760473774468f20b2d2d03372ad7d4cbf5d" @@ -2768,12 +3663,22 @@ base@^0.11.1: mixin-deep "^1.2.0" pascalcase "^0.1.1" +batch@0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16" + integrity sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY= + bcrypt-pbkdf@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d" dependencies: tweetnacl "^0.14.3" +before-after-hook@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/before-after-hook/-/before-after-hook-2.1.0.tgz#b6c03487f44e24200dd30ca5e6a1979c5d2fb635" + integrity sha512-IWIbu7pMqyw3EAJHzzHbWa85b6oud/yfKYg5rqB5hNE8CeMi3nX+2C2sj0HswfblST86hpVEOAb9x34NZd6P7A== + big.js@^3.1.3: version "3.2.0" resolved "https://registry.yarnpkg.com/big.js/-/big.js-3.2.0.tgz#a5fc298b81b9e0dca2e458824784b65c52ba588e" @@ -2793,7 +3698,7 @@ block-stream@*: dependencies: inherits "~2.0.0" -bluebird@^3.3.5, bluebird@^3.5.5: +bluebird@^3.3.5, bluebird@^3.5.1, bluebird@^3.5.3, bluebird@^3.5.5: version "3.5.5" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.5.tgz#a8d0afd73251effbbd5fe384a77d73003c17a71f" integrity sha512-5am6HnnfN+urzt4yfg7IgTbotDjIT/u8AJpEt0sIU9FtXfVeezXAPKswrG+xKUCOYAINpSdgZVDU6QFh+cuH3w== @@ -2818,6 +3723,18 @@ body-parser@1.19.0: raw-body "2.4.0" type-is "~1.6.17" +bonjour@^3.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/bonjour/-/bonjour-3.5.0.tgz#8e890a183d8ee9a2393b3844c691a42bcf7bc9f5" + integrity sha1-jokKGD2O6aI5OzhExpGkK897yfU= + dependencies: + array-flatten "^2.1.0" + deep-equal "^1.0.1" + dns-equal "^1.0.0" + dns-txt "^2.0.2" + multicast-dns "^6.0.1" + multicast-dns-service-types "^1.1.0" + boolbase@^1.0.0, boolbase@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" @@ -3003,11 +3920,21 @@ bser@^2.0.0: dependencies: node-int64 "^0.4.0" +btoa-lite@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/btoa-lite/-/btoa-lite-1.0.0.tgz#337766da15801210fdd956c22e9c6891ab9d0337" + integrity sha1-M3dm2hWAEhD92VbCLpxokaudAzc= + buffer-from@1.x, buffer-from@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== +buffer-indexof@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/buffer-indexof/-/buffer-indexof-1.1.1.tgz#52fabcc6a606d1a00302802648ef68f639da268c" + integrity sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g== + buffer-xor@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" @@ -3028,6 +3955,26 @@ builtin-status-codes@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" +builtins@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/builtins/-/builtins-1.0.3.tgz#cb94faeb61c8696451db36534e1422f94f0aee88" + integrity sha1-y5T662HIaWRR2zZTThQi+U8K7og= + +byline@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/byline/-/byline-5.0.0.tgz#741c5216468eadc457b03410118ad77de8c1ddb1" + integrity sha1-dBxSFkaOrcRXsDQQEYrXfejB3bE= + +byte-size@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/byte-size/-/byte-size-5.0.1.tgz#4b651039a5ecd96767e71a3d7ed380e48bed4191" + integrity sha512-/XuKeqWocKsYa/cBY1YbSJSWWqTi4cFgr9S6OyM7PBaPbr9zvNGwWP33vt0uqGhwDdN+y3yhbXVILEUpnwEWGw== + +bytes@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" + integrity sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg= + bytes@3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6" @@ -3053,6 +4000,27 @@ cacache@^11.3.2: unique-filename "^1.1.1" y18n "^4.0.0" +cacache@^12.0.0: + version "12.0.2" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-12.0.2.tgz#8db03205e36089a3df6954c66ce92541441ac46c" + integrity sha512-ifKgxH2CKhJEg6tNdAwziu6Q33EvuG26tYcda6PT3WKisZcYDXsnEdnRv67Po3yCzFfaSoMjGZzJyD2c3DT1dg== + dependencies: + bluebird "^3.5.5" + chownr "^1.1.1" + figgy-pudding "^3.5.1" + glob "^7.1.4" + graceful-fs "^4.1.15" + infer-owner "^1.0.3" + lru-cache "^5.1.1" + mississippi "^3.0.0" + mkdirp "^0.5.1" + move-concurrently "^1.0.1" + promise-inflight "^1.0.1" + rimraf "^2.6.3" + ssri "^6.0.1" + unique-filename "^1.1.1" + y18n "^4.0.0" + cache-base@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" @@ -3109,6 +4077,15 @@ camelcase-keys@^2.0.0: camelcase "^2.0.0" map-obj "^1.0.0" +camelcase-keys@^4.0.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-4.2.0.tgz#a2aa5fb1af688758259c32c141426d78923b9b77" + integrity sha1-oqpfsa9oh1glnDLBQUJteJI7m3c= + dependencies: + camelcase "^4.1.0" + map-obj "^2.0.0" + quick-lru "^1.0.0" + camelcase@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" @@ -3152,7 +4129,7 @@ caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" -chalk@2.4.2, chalk@^2.4.2: +chalk@2.4.2, chalk@^2.3.1, chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -3226,7 +4203,7 @@ chokidar@^2.0.2: optionalDependencies: fsevents "^1.0.0" -chokidar@^2.0.4: +chokidar@^2.0.4, chokidar@^2.1.6: version "2.1.6" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.6.tgz#b6cad653a929e244ce8a834244164d241fa954c5" integrity sha512-V2jUo67OKkc6ySiRpJrjlpJKl9kDuG+Xb8VgsGzb+aEouhgS1D0weyPU4lEzdAcsCAvrih2J2BqyXqHWvVLw5g== @@ -3382,6 +4359,11 @@ clone-deep@^2.0.1: kind-of "^6.0.0" shallow-clone "^1.0.0" +clone@^1.0.2: + version "1.0.4" + resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" + integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= + closest@^0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/closest/-/closest-0.0.1.tgz#26da6f80b3e0e17e71f80f12782819e9f653495c" @@ -3430,6 +4412,14 @@ colors@^1.1.2: version "1.2.0" resolved "https://registry.yarnpkg.com/colors/-/colors-1.2.0.tgz#24ec7283fcc91557801b22521e4619fedc7ca306" +columnify@^1.5.4: + version "1.5.4" + resolved "https://registry.yarnpkg.com/columnify/-/columnify-1.5.4.tgz#4737ddf1c7b69a8a7c340570782e947eec8e78bb" + integrity sha1-Rzfd8ce2mop8NAVweC6UfuyOeLs= + dependencies: + strip-ansi "^3.0.0" + wcwidth "^1.0.0" + combined-stream@^1.0.5, combined-stream@~1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.5.tgz#938370a57b4a51dea2c77c15d5c5fdf895164009" @@ -3467,10 +4457,38 @@ commondir@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" +compare-func@^1.3.1: + version "1.3.2" + resolved "https://registry.yarnpkg.com/compare-func/-/compare-func-1.3.2.tgz#99dd0ba457e1f9bc722b12c08ec33eeab31fa648" + integrity sha1-md0LpFfh+bxyKxLAjsM+6rMfpkg= + dependencies: + array-ify "^1.0.0" + dot-prop "^3.0.0" + component-emitter@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" +compressible@~2.0.16: + version "2.0.17" + resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.17.tgz#6e8c108a16ad58384a977f3a482ca20bff2f38c1" + integrity sha512-BGHeLCK1GV7j1bSmQQAi26X+GgWcTjLr/0tzSvMCl3LH1w1IJ4PFSPoV5316b30cneTziC+B1a+3OjoSUcQYmw== + dependencies: + mime-db ">= 1.40.0 < 2" + +compression@^1.7.4: + version "1.7.4" + resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.4.tgz#95523eff170ca57c29a0ca41e6fe131f41e5bb8f" + integrity sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ== + dependencies: + accepts "~1.3.5" + bytes "3.0.0" + compressible "~2.0.16" + debug "2.6.9" + on-headers "~1.0.2" + safe-buffer "5.1.2" + vary "~1.1.2" + concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" @@ -3493,6 +4511,29 @@ concat-stream@^1.5.0: readable-stream "^2.2.2" typedarray "^0.0.6" +concat-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-2.0.0.tgz#414cf5af790a48c60ab9be4527d56d5e41133cb1" + integrity sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A== + dependencies: + buffer-from "^1.0.0" + inherits "^2.0.3" + readable-stream "^3.0.2" + typedarray "^0.0.6" + +config-chain@^1.1.11: + version "1.1.12" + resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.12.tgz#0fde8d091200eb5e808caf25fe618c02f48e4efa" + integrity sha512-a1eOIcu8+7lUInge4Rpf/n4Krkf3Dd9lqhljRzII1/Zno/kRtUWnznPO3jOKBmTEktkt3fkxisUcivoj0ebzoA== + dependencies: + ini "^1.3.4" + proto-list "~1.2.1" + +connect-history-api-fallback@^1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz#8b32089359308d111115d81cad3fceab888f97bc" + integrity sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg== + console-browserify@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10" @@ -3522,6 +4563,89 @@ content-type@~1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" +conventional-changelog-angular@^5.0.3: + version "5.0.3" + resolved "https://registry.yarnpkg.com/conventional-changelog-angular/-/conventional-changelog-angular-5.0.3.tgz#299fdd43df5a1f095283ac16aeedfb0a682ecab0" + integrity sha512-YD1xzH7r9yXQte/HF9JBuEDfvjxxwDGGwZU1+ndanbY0oFgA+Po1T9JDSpPLdP0pZT6MhCAsdvFKC4TJ4MTJTA== + dependencies: + compare-func "^1.3.1" + q "^1.5.1" + +conventional-changelog-core@^3.1.6: + version "3.2.2" + resolved "https://registry.yarnpkg.com/conventional-changelog-core/-/conventional-changelog-core-3.2.2.tgz#de41e6b4a71011a18bcee58e744f6f8f0e7c29c0" + integrity sha512-cssjAKajxaOX5LNAJLB+UOcoWjAIBvXtDMedv/58G+YEmAXMNfC16mmPl0JDOuVJVfIqM0nqQiZ8UCm8IXbE0g== + dependencies: + conventional-changelog-writer "^4.0.5" + conventional-commits-parser "^3.0.2" + dateformat "^3.0.0" + get-pkg-repo "^1.0.0" + git-raw-commits "2.0.0" + git-remote-origin-url "^2.0.0" + git-semver-tags "^2.0.2" + lodash "^4.2.1" + normalize-package-data "^2.3.5" + q "^1.5.1" + read-pkg "^3.0.0" + read-pkg-up "^3.0.0" + through2 "^3.0.0" + +conventional-changelog-preset-loader@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.1.1.tgz#65bb600547c56d5627d23135154bcd9a907668c4" + integrity sha512-K4avzGMLm5Xw0Ek/6eE3vdOXkqnpf9ydb68XYmCc16cJ99XMMbc2oaNMuPwAsxVK6CC1yA4/I90EhmWNj0Q6HA== + +conventional-changelog-writer@^4.0.5: + version "4.0.6" + resolved "https://registry.yarnpkg.com/conventional-changelog-writer/-/conventional-changelog-writer-4.0.6.tgz#24db578ac8e7c89a409ef9bba12cf3c095990148" + integrity sha512-ou/sbrplJMM6KQpR5rKFYNVQYesFjN7WpNGdudQSWNi6X+RgyFUcSv871YBYkrUYV9EX8ijMohYVzn9RUb+4ag== + dependencies: + compare-func "^1.3.1" + conventional-commits-filter "^2.0.2" + dateformat "^3.0.0" + handlebars "^4.1.0" + json-stringify-safe "^5.0.1" + lodash "^4.2.1" + meow "^4.0.0" + semver "^6.0.0" + split "^1.0.0" + through2 "^3.0.0" + +conventional-commits-filter@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/conventional-commits-filter/-/conventional-commits-filter-2.0.2.tgz#f122f89fbcd5bb81e2af2fcac0254d062d1039c1" + integrity sha512-WpGKsMeXfs21m1zIw4s9H5sys2+9JccTzpN6toXtxhpw2VNF2JUXwIakthKBy+LN4DvJm+TzWhxOMWOs1OFCFQ== + dependencies: + lodash.ismatch "^4.4.0" + modify-values "^1.0.0" + +conventional-commits-parser@^3.0.2: + version "3.0.3" + resolved "https://registry.yarnpkg.com/conventional-commits-parser/-/conventional-commits-parser-3.0.3.tgz#c3f972fd4e056aa8b9b4f5f3d0e540da18bf396d" + integrity sha512-KaA/2EeUkO4bKjinNfGUyqPTX/6w9JGshuQRik4r/wJz7rUw3+D3fDG6sZSEqJvKILzKXFQuFkpPLclcsAuZcg== + dependencies: + JSONStream "^1.0.4" + is-text-path "^2.0.0" + lodash "^4.2.1" + meow "^4.0.0" + split2 "^2.0.0" + through2 "^3.0.0" + trim-off-newlines "^1.0.0" + +conventional-recommended-bump@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/conventional-recommended-bump/-/conventional-recommended-bump-5.0.0.tgz#019d45a1f3d2cc14a26e9bad1992406ded5baa23" + integrity sha512-CsfdICpbUe0pmM4MTG90GPUqnFgB1SWIR2HAh+vS+JhhJdPWvc0brs8oadWoYGhFOQpQwe57JnvzWEWU0m2OSg== + dependencies: + concat-stream "^2.0.0" + conventional-changelog-preset-loader "^2.1.1" + conventional-commits-filter "^2.0.2" + conventional-commits-parser "^3.0.2" + git-raw-commits "2.0.0" + git-semver-tags "^2.0.2" + meow "^4.0.0" + q "^1.5.1" + convert-source-map@^1.1.0: version "1.6.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.6.0.tgz#51b537a8c43e0f04dec1993bffcdd504e758ac20" @@ -3626,7 +4750,7 @@ corejs-upgrade-webpack-plugin@^2.0.0: resolve-from "^5.0.0" webpack "^4.33.0" -cosmiconfig@^5.0.0, cosmiconfig@^5.2.0, cosmiconfig@^5.2.1: +cosmiconfig@^5.0.0, cosmiconfig@^5.1.0, cosmiconfig@^5.2.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== @@ -3888,6 +5012,13 @@ dagre@^0.8.4: graphlib "^2.1.7" lodash "^4.17.4" +dargs@^4.0.1: + version "4.1.0" + resolved "https://registry.yarnpkg.com/dargs/-/dargs-4.1.0.tgz#03a9dbb4b5c2f139bf14ae53f0b8a2a6a86f4e17" + integrity sha1-A6nbtLXC8Tm/FK5T8LiipqhvThc= + dependencies: + number-is-nan "^1.0.0" + dashdash@^1.12.0: version "1.14.1" resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" @@ -3898,13 +5029,18 @@ date-now@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b" +dateformat@^3.0.0: + version "3.0.3" + resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" + integrity sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q== + debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.6, debug@^2.6.8: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" 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" dependencies: @@ -3924,7 +5060,20 @@ debug@^4.1.0, debug@^4.1.1: dependencies: ms "^2.1.1" -decamelize@^1.1.1, decamelize@^1.1.2, decamelize@^1.2.0: +debuglog@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/debuglog/-/debuglog-1.0.1.tgz#aa24ffb9ac3df9a2351837cfb2d279360cd78492" + integrity sha1-qiT/uaw9+aI1GDfPstJ5NgzXhJI= + +decamelize-keys@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9" + integrity sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk= + dependencies: + decamelize "^1.1.0" + map-obj "^1.0.0" + +decamelize@^1.1.0, decamelize@^1.1.1, decamelize@^1.1.2, decamelize@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" @@ -3932,6 +5081,16 @@ decode-uri-component@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" +dedent@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" + integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw= + +deep-equal@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" + integrity sha1-9dJgKStmDghO/0zbyfCK0yR0SLU= + deep-extend@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" @@ -3950,6 +5109,26 @@ deep-object-diff@^1.1.0: resolved "https://registry.yarnpkg.com/deep-object-diff/-/deep-object-diff-1.1.0.tgz#d6fabf476c2ed1751fc94d5ca693d2ed8c18bc5a" integrity sha512-b+QLs5vHgS+IoSNcUE4n9HP2NwcHj7aqnJWsjPtuG75Rh5TOaGt0OjAYInh77d5T16V5cRDC+Pw/6ZZZiETBGw== +deepmerge@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.0.0.tgz#3e3110ca29205f120d7cb064960a39c3d2087c09" + integrity sha512-YZ1rOP5+kHor4hMAH+HRQnBQHg+wvS1un1hAOuIcxcBy0hzcUf6Jg2a1w65kpoOUnurOfZbERwjI1TfZxNjcww== + +default-gateway@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/default-gateway/-/default-gateway-4.2.0.tgz#167104c7500c2115f6dd69b0a536bb8ed720552b" + integrity sha512-h6sMrVB1VMWVrW13mSc6ia/DwYYw5MN6+exNu1OaJeFac5aSAvwM7lZ0NVfTABuSkQelr4h5oebg3KB1XPdjgA== + dependencies: + execa "^1.0.0" + ip-regex "^2.1.0" + +defaults@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" + integrity sha1-xlYFHpgX2f8I7YgUd/P+QBnz730= + dependencies: + clone "^1.0.2" + define-properties@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94" @@ -3983,6 +5162,19 @@ define-property@^2.0.2: is-descriptor "^1.0.2" isobject "^3.0.1" +del@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/del/-/del-4.1.1.tgz#9e8f117222ea44a31ff3a156c049b99052a9f0b4" + integrity sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ== + dependencies: + "@types/glob" "^7.1.1" + globby "^6.1.0" + is-path-cwd "^2.0.0" + is-path-in-cwd "^2.0.0" + p-map "^2.0.0" + pify "^4.0.1" + rimraf "^2.6.3" + delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" @@ -3999,6 +5191,11 @@ depd@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" +deprecation@^2.0.0: + version "2.3.1" + resolved "https://registry.yarnpkg.com/deprecation/-/deprecation-2.3.1.tgz#6368cbdb40abf3373b525ac87e4a260c3a700919" + integrity sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ== + des.js@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.0.tgz#c074d2e2aa6a8a9a07dbd61f9a15c2cd83ec8ecc" @@ -4015,6 +5212,11 @@ detect-file@^1.0.0: resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz#f0d66d03672a825cb1b73bdb3fe62310c8e552b7" integrity sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc= +detect-indent@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-5.0.0.tgz#3871cc0a6a002e8c3e5b3cf7f336264675f06b9d" + integrity sha1-OHHMCmoALow+Wzz38zYmRnXwa50= + detect-libc@^1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" @@ -4023,6 +5225,11 @@ detect-newline@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2" +detect-node@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.4.tgz#014ee8f8f669c5c58023da64b8179c083a28c46c" + integrity sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw== + detect-port-alt@1.1.6: version "1.1.6" resolved "https://registry.yarnpkg.com/detect-port-alt/-/detect-port-alt-1.1.6.tgz#24707deabe932d4a3cf621302027c2b266568275" @@ -4038,6 +5245,14 @@ detect-port@^1.3.0: address "^1.0.1" debug "^2.6.0" +dezalgo@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/dezalgo/-/dezalgo-1.0.3.tgz#7f742de066fc748bc8db820569dddce49bf0d456" + integrity sha1-f3Qt4Gb8dIvI24IFad3c5Jvw1FY= + dependencies: + asap "^2.0.0" + wrappy "1" + diff-sequences@^24.3.0: version "24.3.0" resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-24.3.0.tgz#0f20e8a1df1abddaf4d9c226680952e64118b975" @@ -4059,10 +5274,37 @@ dir-glob@2.0.0, dir-glob@^2.0.0: arrify "^1.0.1" path-type "^3.0.0" +dir-glob@^2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.2.2.tgz#fa09f0694153c8918b18ba0deafae94769fc50c4" + integrity sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw== + dependencies: + path-type "^3.0.0" + discontinuous-range@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/discontinuous-range/-/discontinuous-range-1.0.0.tgz#e38331f0844bba49b9a9cb71c771585aab1bc65a" +dns-equal@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/dns-equal/-/dns-equal-1.0.0.tgz#b39e7f1da6eb0a75ba9c17324b34753c47e0654d" + integrity sha1-s55/HabrCnW6nBcySzR1PEfgZU0= + +dns-packet@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/dns-packet/-/dns-packet-1.3.1.tgz#12aa426981075be500b910eedcd0b47dd7deda5a" + integrity sha512-0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg== + dependencies: + ip "^1.1.0" + safe-buffer "^5.0.1" + +dns-txt@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/dns-txt/-/dns-txt-2.0.2.tgz#b91d806f5d27188e4ab3e7d107d881a1cc4642b6" + integrity sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY= + dependencies: + buffer-indexof "^1.0.0" + doctrine@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" @@ -4136,6 +5378,20 @@ domutils@^1.5.1, domutils@^1.7.0: dom-serializer "0" domelementtype "1" +dot-prop@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-3.0.0.tgz#1b708af094a49c9a0e7dbcad790aba539dac1177" + integrity sha1-G3CK8JSknJoOfbyteQq6U52sEXc= + dependencies: + is-obj "^1.0.0" + +dot-prop@^4.2.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" + dotenv-defaults@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/dotenv-defaults/-/dotenv-defaults-1.0.2.tgz#441cf5f067653fca4bbdce9dd3b803f6f84c585d" @@ -4265,6 +5521,11 @@ entities@^1.1.1, entities@~1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.1.tgz#6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0" +env-paths@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-1.0.0.tgz#4168133b42bb05c38a35b1ae4397c8298ab369e0" + integrity sha1-QWgTO0K7BcOKNbGuQ5fIKYqzaeA= + enzyme@^3.10.0: version "3.10.0" resolved "https://registry.yarnpkg.com/enzyme/-/enzyme-3.10.0.tgz#7218e347c4a7746e133f8e964aada4a3523452f6" @@ -4292,6 +5553,11 @@ enzyme@^3.10.0: rst-selector-parser "^2.2.3" string.prototype.trim "^1.1.2" +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= + errno@^0.1.3: version "0.1.6" resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.6.tgz#c386ce8a6283f14fc09563b71560908c9bf53026" @@ -4431,7 +5697,7 @@ etag@~1.8.1: version "1.8.1" resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" -eventemitter3@^3.1.0: +eventemitter3@^3.0.0, eventemitter3@^3.1.0: version "3.1.2" resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.2.tgz#2d3d48f9c346698fce83a85d7d664e98535df6e7" integrity sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q== @@ -4530,7 +5796,7 @@ expect@^24.8.0: jest-message-util "^24.8.0" jest-regex-util "^24.3.0" -express@^4.17.0: +express@^4.17.0, express@^4.17.1: version "4.17.1" resolved "https://registry.yarnpkg.com/express/-/express-4.17.1.tgz#4491fc38605cf51f8629d39c2b5d026f98a4c134" integrity sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g== @@ -4647,6 +5913,18 @@ fast-glob@^2.0.2: merge2 "^1.2.1" micromatch "^3.1.10" +fast-glob@^2.2.6: + version "2.2.7" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-2.2.7.tgz#6953857c3afa475fff92ee6015d52da70a4cd39d" + integrity sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw== + dependencies: + "@mrmlnc/readdir-enhanced" "^2.2.1" + "@nodelib/fs.stat" "^1.1.2" + glob-parent "^3.1.0" + is-glob "^4.0.0" + merge2 "^1.2.3" + micromatch "^3.1.10" + fast-json-stable-stringify@2.x, 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" @@ -4666,6 +5944,13 @@ fault@^1.0.2: dependencies: format "^0.2.2" +faye-websocket@^0.10.0: + version "0.10.0" + resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" + integrity sha1-TkkvjQTftviQA1B/btvy1QHnxvQ= + dependencies: + websocket-driver ">=0.5.1" + faye-websocket@~0.11.1: version "0.11.3" resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.3.tgz#5c0e9a8968e8912c286639fde977a8b209f2508e" @@ -4710,7 +5995,7 @@ fd-slicer@~1.0.1: dependencies: pend "~1.2.0" -figgy-pudding@^3.5.1: +figgy-pudding@^3.4.1, figgy-pudding@^3.5.1: version "3.5.1" resolved "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.1.tgz#862470112901c727a0e495a80744bd5baa1d6790" integrity sha512-vNKxJHTEKNThjfrdJwHc7brvM6eVevuO5nTj6ez8ZQ1qbXTvGthucRF7S4vf2cr71QVnT70V34v0S1DyQsti0w== @@ -4841,7 +6126,7 @@ find-up@^1.0.0: path-exists "^2.0.0" pinkie-promise "^2.0.0" -find-up@^2.1.0: +find-up@^2.0.0, find-up@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" dependencies: @@ -4877,6 +6162,13 @@ focus-lock@^0.6.3: resolved "https://registry.yarnpkg.com/focus-lock/-/focus-lock-0.6.5.tgz#f6eb37832a9b1b205406175f5277396a28c0fce1" integrity sha512-i/mVBOoa9o+tl+u9owOJUF8k8L85odZNIsctB+JAK2HFT8jckiBwmk+3uydlm6FN8czgnkIwQtBv6yyAbrzXjw== +follow-redirects@^1.0.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.7.0.tgz#489ebc198dc0e7f64167bd23b03c4c19b5784c76" + integrity sha512-m/pZQy4Gj287eNy94nivy5wchN3Kp+Q5WgUPNy5lJSZ3sgkVKSYV/ZChMAQVIgx1SqfZ2zBZtPA2YlXIWxxJOQ== + dependencies: + debug "^3.2.6" + for-in@^0.1.3: version "0.1.8" resolved "https://registry.yarnpkg.com/for-in/-/for-in-0.1.8.tgz#d8773908e31256109952b1fdb9b3fa867d2775e1" @@ -4987,7 +6279,7 @@ fs-extra@^0.30.0: path-is-absolute "^1.0.0" rimraf "^2.2.8" -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== @@ -5084,6 +6376,11 @@ gaze@^1.0.0: dependencies: globule "^1.0.0" +genfun@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/genfun/-/genfun-5.0.0.tgz#9dd9710a06900a5c4a5bf57aca5da4e52fe76537" + integrity sha512-KGDOARWVga7+rnB3z9Sd2Letx515owfk0hSxHGuqjANb1M+x2bGZGqHLiozPsYMdM2OubeMni/Hpwmjq6qIUhA== + get-caller-file@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.2.tgz#f702e63127e7e231c160a80c1554acb70d5047e5" @@ -5093,6 +6390,22 @@ get-caller-file@^2.0.1: resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== +get-pkg-repo@^1.0.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/get-pkg-repo/-/get-pkg-repo-1.4.0.tgz#c73b489c06d80cc5536c2c853f9e05232056972d" + integrity sha1-xztInAbYDMVTbCyFP54FIyBWly0= + dependencies: + hosted-git-info "^2.1.4" + meow "^3.3.0" + normalize-package-data "^2.3.0" + parse-github-repo-url "^1.3.0" + through2 "^2.0.0" + +get-port@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/get-port/-/get-port-4.2.0.tgz#e37368b1e863b7629c43c5a323625f95cf24b119" + integrity sha512-/b3jarXkH8KJoOMQc3uVGHASwGLPq3gSFJ7tgJm2diza+bydJPTGOibin2steecKeOylE8oY2JERlVWkAJO6yw== + get-stdin@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" @@ -5101,7 +6414,7 @@ get-stream@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" -get-stream@^4.0.0: +get-stream@^4.0.0, get-stream@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== @@ -5118,6 +6431,33 @@ getpass@^0.1.1: dependencies: assert-plus "^1.0.0" +git-raw-commits@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/git-raw-commits/-/git-raw-commits-2.0.0.tgz#d92addf74440c14bcc5c83ecce3fb7f8a79118b5" + integrity sha512-w4jFEJFgKXMQJ0H0ikBk2S+4KP2VEjhCvLCNqbNRQC8BgGWgLKNCO7a9K9LI+TVT7Gfoloje502sEnctibffgg== + dependencies: + dargs "^4.0.1" + lodash.template "^4.0.2" + meow "^4.0.0" + split2 "^2.0.0" + through2 "^2.0.0" + +git-remote-origin-url@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz#5282659dae2107145a11126112ad3216ec5fa65f" + integrity sha1-UoJlna4hBxRaERJhEq0yFuxfpl8= + dependencies: + gitconfiglocal "^1.0.0" + pify "^2.3.0" + +git-semver-tags@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/git-semver-tags/-/git-semver-tags-2.0.2.tgz#f506ec07caade191ac0c8d5a21bdb8131b4934e3" + integrity sha512-34lMF7Yo1xEmsK2EkbArdoU79umpvm0MfzaDkSNYSJqtM5QLAVTPWgpiXSVI5o/O9EvZPSrP4Zvnec/CqhSd5w== + dependencies: + meow "^4.0.0" + semver "^5.5.0" + git-up@^2.0.0: version "2.0.10" resolved "https://registry.yarnpkg.com/git-up/-/git-up-2.0.10.tgz#20fe6bafbef4384cae253dc4f463c49a0c3bd2ec" @@ -5125,12 +6465,34 @@ git-up@^2.0.0: is-ssh "^1.3.0" parse-url "^1.3.0" +git-up@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/git-up/-/git-up-4.0.1.tgz#cb2ef086653640e721d2042fe3104857d89007c0" + integrity sha512-LFTZZrBlrCrGCG07/dm1aCjjpL1z9L3+5aEeI9SBhAqSc+kiA9Or1bgZhQFNppJX6h/f5McrvJt1mQXTFm6Qrw== + dependencies: + is-ssh "^1.3.0" + parse-url "^5.0.0" + +git-url-parse@^11.1.2: + version "11.1.2" + resolved "https://registry.yarnpkg.com/git-url-parse/-/git-url-parse-11.1.2.tgz#aff1a897c36cc93699270587bea3dbcbbb95de67" + integrity sha512-gZeLVGY8QVKMIkckncX+iCq2/L8PlwncvDFKiWkBn9EtCfYDbliRTTp6qzyQ1VMdITUfq7293zDzfpjdiGASSQ== + dependencies: + git-up "^4.0.0" + git-url-parse@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/git-url-parse/-/git-url-parse-8.1.0.tgz#d1ee09213efce5d8dc7a21bb03f17cfe0c111122" dependencies: git-up "^2.0.0" +gitconfiglocal@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz#41d045f3851a5ea88f03f24ca1c6178114464b9b" + integrity sha1-QdBF84UaXqiPA/JMocYXgRRGS5s= + dependencies: + ini "^1.3.2" + glamor@^2.20.40: version "2.20.40" resolved "https://registry.yarnpkg.com/glamor/-/glamor-2.20.40.tgz#f606660357b7cf18dface731ad1a2cfa93817f05" @@ -5148,6 +6510,13 @@ glob-parent@^3.1.0: is-glob "^3.1.0" path-dirname "^1.0.0" +glob-parent@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.0.0.tgz#1dc99f0f39b006d3e92c2c284068382f0c20e954" + integrity sha512-Z2RwiujPRGluePM6j699ktJYxmPpJKCfpGA13jz2hmFZC7gKetzrWvg5KN3+OsIFmydGyZ1AVwERCq1w/ZZwRg== + dependencies: + is-glob "^4.0.1" + glob-to-regexp@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" @@ -5271,6 +6640,17 @@ globby@8.0.2: pify "^3.0.0" slash "^1.0.0" +globby@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" + integrity sha1-9abXDoOV4hyFj7BInWTfAkJNUGw= + dependencies: + array-union "^1.0.1" + glob "^7.0.3" + object-assign "^4.0.1" + pify "^2.0.0" + pinkie-promise "^2.0.0" + globby@^7.1.1: version "7.1.1" resolved "https://registry.yarnpkg.com/globby/-/globby-7.1.1.tgz#fb2ccff9401f8600945dfada97440cca972b8680" @@ -5282,6 +6662,20 @@ globby@^7.1.1: pify "^3.0.0" slash "^1.0.0" +globby@^9.2.0: + version "9.2.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-9.2.0.tgz#fd029a706c703d29bdd170f4b6db3a3f7a7cb63d" + integrity sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg== + dependencies: + "@types/glob" "^7.1.1" + array-union "^1.0.2" + dir-glob "^2.2.2" + fast-glob "^2.2.6" + glob "^7.1.3" + ignore "^4.0.3" + pify "^4.0.1" + slash "^2.0.0" + globule@^1.0.0: version "1.2.0" resolved "https://registry.yarnpkg.com/globule/-/globule-1.2.0.tgz#1dc49c6822dd9e8a2fa00ba2a295006e8664bd09" @@ -5329,7 +6723,12 @@ gzip-size@5.0.0: duplexer "^0.1.1" pify "^3.0.0" -handlebars@^4.1.2: +handle-thing@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-2.0.0.tgz#0e039695ff50c93fc288557d696f3c1dc6776754" + integrity sha512-d4sze1JNC454Wdo2fkuyzCr6aHcbL6PGGuFAz0Li/NcOm1tCHGnWDRmJP85dh9IhQErTc2svWFEX5xHIOo//kQ== + +handlebars@^4.1.0, handlebars@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.1.2.tgz#b6b37c1ced0306b221e094fc7aca3ec23b131b67" integrity sha512-nvfrjqvt9xQ8Z/w0ijewdD/vvWDTOweBUm96NTr66Wfvo1mJenBLwcYmPs3TIBP5ruzYGD7Hx/DaM9RmhroGPw== @@ -5388,7 +6787,7 @@ has-symbols@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44" -has-unicode@^2.0.0: +has-unicode@^2.0.0, has-unicode@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" @@ -5551,6 +6950,21 @@ hosted-git-info@^2.1.4: version "2.5.0" resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.5.0.tgz#6d60e34b3abbc8313062c3b798ef8d901a07af3c" +hosted-git-info@^2.6.0: + version "2.7.1" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.7.1.tgz#97f236977bd6e125408930ff6de3eec6281ec047" + integrity sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w== + +hpack.js@^2.1.6: + version "2.1.6" + resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" + integrity sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI= + dependencies: + inherits "^2.0.1" + obuf "^1.0.0" + readable-stream "^2.0.1" + wbuf "^1.1.0" + 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" @@ -5564,7 +6978,7 @@ html-encoding-sniffer@^1.0.1: dependencies: whatwg-encoding "^1.0.1" -html-entities@^1.2.0: +html-entities@^1.2.0, html-entities@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.2.1.tgz#0df29351f0721163515dfb9e5543e5f6eed5162f" @@ -5636,6 +7050,16 @@ htmlparser2@~3.3.0: domutils "1.1" readable-stream "1.0" +http-cache-semantics@^3.8.1: + version "3.8.1" + resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz#39b0e16add9b605bf0a9ef3d9daaf4843b4cacd2" + integrity sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w== + +http-deceiver@^1.2.7: + version "1.2.7" + resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" + integrity sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc= + http-errors@1.7.2: version "1.7.2" resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.2.tgz#4f5029cf13239f31036e5b2e55292bcfbcc85c8f" @@ -5647,6 +7071,16 @@ http-errors@1.7.2: statuses ">= 1.5.0 < 2" toidentifier "1.0.0" +http-errors@~1.6.2: + version "1.6.3" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" + integrity sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0= + dependencies: + depd "~1.1.2" + inherits "2.0.3" + setprototypeof "1.1.0" + statuses ">= 1.4.0 < 2" + http-errors@~1.7.2: version "1.7.3" resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.3.tgz#6c619e4f9c60308c38519498c14fbb10aacebb06" @@ -5662,6 +7096,33 @@ http-parser-js@>=0.4.0: version "0.4.12" resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.4.12.tgz#b9cfbf4a2cf26f0fc34b10ca1489a27771e3474f" +http-proxy-agent@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz#e4821beef5b2142a2026bd73926fe537631c5405" + integrity sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg== + dependencies: + agent-base "4" + debug "3.1.0" + +http-proxy-middleware@^0.19.1: + version "0.19.1" + resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz#183c7dc4aa1479150306498c210cdaf96080a43a" + integrity sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q== + dependencies: + http-proxy "^1.17.0" + is-glob "^4.0.0" + lodash "^4.17.11" + micromatch "^3.1.10" + +http-proxy@^1.17.0: + version "1.17.0" + resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.17.0.tgz#7ad38494658f84605e2f6db4436df410f4e5be9a" + integrity sha512-Taqn+3nNvYRfJ3bGvKfBSRwy1v6eePlm3oc/aWVxZp57DQr5Eq3xhKJi7Z4hZpS8PC3H4qI+Yly5EmFacGuA/g== + dependencies: + eventemitter3 "^3.0.0" + follow-redirects "^1.0.0" + requires-port "^1.0.0" + http-signature@~1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf" @@ -5690,6 +7151,13 @@ https-proxy-agent@^2.2.1: agent-base "^4.3.0" debug "^3.1.0" +humanize-ms@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/humanize-ms/-/humanize-ms-1.2.1.tgz#c46e3159a293f6b896da29316d8b6fe8bb79bbed" + integrity sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0= + dependencies: + ms "^2.0.0" + hyphenate-style-name@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/hyphenate-style-name/-/hyphenate-style-name-1.0.2.tgz#31160a36930adaf1fc04c6074f7eb41465d4ec4b" @@ -5735,6 +7203,11 @@ ignore@^3.3.5: version "3.3.7" resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.7.tgz#612289bfb3c220e186a58118618d5be8c1bab021" +ignore@^4.0.3: + version "4.0.6" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" + integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== + immer@1.10.0: version "1.10.0" resolved "https://registry.yarnpkg.com/immer/-/immer-1.10.0.tgz#bad67605ba9c810275d91e1c2a47d4582e98286d" @@ -5784,6 +7257,11 @@ indent-string@^2.1.0: dependencies: repeating "^2.0.0" +indent-string@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289" + integrity sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok= + indexes-of@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" @@ -5792,6 +7270,11 @@ indexof@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" +infer-owner@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" + integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== + inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" @@ -5812,10 +7295,24 @@ inherits@2.0.4: resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== -ini@^1.3.4, ini@^1.3.5, ini@~1.3.0: +ini@^1.3.2, ini@^1.3.4, ini@^1.3.5, ini@~1.3.0: version "1.3.5" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" +init-package-json@^1.10.3: + version "1.10.3" + resolved "https://registry.yarnpkg.com/init-package-json/-/init-package-json-1.10.3.tgz#45ffe2f610a8ca134f2bd1db5637b235070f6cbe" + integrity sha512-zKSiXKhQveNteyhcj1CoOP8tqp1QuxPIPBl8Bid99DGLFqA1p87M6lNgfjJHSBoWJJlidGOv5rWjyYKEB3g2Jw== + dependencies: + glob "^7.1.1" + npm-package-arg "^4.0.0 || ^5.0.0 || ^6.0.0" + promzard "^0.3.0" + read "~1.0.1" + read-package-json "1 || 2" + semver "2.x || 3.x || 4 || 5" + validate-npm-package-license "^3.0.1" + validate-npm-package-name "^3.0.0" + inline-style-prefixer@^3.0.6: version "3.0.8" resolved "https://registry.yarnpkg.com/inline-style-prefixer/-/inline-style-prefixer-3.0.8.tgz#8551b8e5b4d573244e66a34b04f7d32076a2b534" @@ -5861,6 +7358,14 @@ inquirer@^6.2.0: strip-ansi "^5.1.0" through "^2.3.6" +internal-ip@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/internal-ip/-/internal-ip-4.3.0.tgz#845452baad9d2ca3b69c635a137acb9a0dad0907" + integrity sha512-S1zBo1D6zcsyuC6PMmY5+55YMILQ9av8lotMx447Bq6SAgo/sDK6y6uUKmuYhW7eacnIhFfsPmCNYdDzsnnDCg== + dependencies: + default-gateway "^4.2.0" + ipaddr.js "^1.9.0" + interpret@1.2.0, interpret@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.2.0.tgz#d5061a6224be58e8083985f5014d844359576296" @@ -5892,7 +7397,12 @@ invert-kv@^2.0.0: resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-2.0.0.tgz#7393f5afa59ec9ff5f67a27620d11c226e3eec02" integrity sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA== -ip@^1.1.5: +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.0, ip@^1.1.5: version "1.1.5" resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo= @@ -5902,6 +7412,11 @@ ipaddr.js@1.9.0: resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.0.tgz#37df74e430a0e47550fe54a2defe30d8acd95f65" integrity sha512-M4Sjn6N/+O6/IXSJseKqHoFc+5FdGJ22sXqnjTpdZweHK64MzEPAyQZyEU3R/KRv2GLoa7nNtg/C2Ev6m7z+eA== +ipaddr.js@^1.9.0: + version "1.9.1" + resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" + integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== + is-accessor-descriptor@^0.1.6: version "0.1.6" resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" @@ -6071,13 +7586,37 @@ is-number@^7.0.0: resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== +is-obj@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" + integrity sha1-PkcprB9f3gJc19g6iW2rn09n2w8= + is-odd@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-odd/-/is-odd-2.0.0.tgz#7646624671fd7ea558ccd9a2795182f2958f1b24" dependencies: is-number "^4.0.0" -is-plain-obj@^1.0.0: +is-path-cwd@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-2.2.0.tgz#67d43b82664a7b5191fd9119127eb300048a9fdb" + integrity sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ== + +is-path-in-cwd@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz#bfe2dca26c69f397265a4009963602935a053acb" + integrity sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ== + dependencies: + is-path-inside "^2.1.0" + +is-path-inside@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-2.1.0.tgz#7c9810587d659a40d27bcdb4d5616eab059494b2" + integrity sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg== + dependencies: + path-is-inside "^1.0.2" + +is-plain-obj@^1.0.0, is-plain-obj@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" @@ -6138,6 +7677,13 @@ is-symbol@^1.0.2: dependencies: has-symbols "^1.0.0" +is-text-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-text-path/-/is-text-path-2.0.0.tgz#b2484e2b720a633feb2e85b67dc193ff72c75636" + integrity sha512-+oDTluR6WEjdXEJMnC2z6A4FRwFoYuvShVVEGsS7ewc0UTi2QtAKMDJuL4BDEVt+5T7MjFo12RP8ghOM75oKJw== + dependencies: + text-extensions "^2.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" @@ -6705,15 +8251,15 @@ json-beautify@^1.1.0: resolved "https://registry.yarnpkg.com/json-beautify/-/json-beautify-1.1.0.tgz#5da1a4cccd0cd680d12bc6e2ff475d73ddef00c4" integrity sha512-Y8lEcqhyJKRq2IhYBGtRIQO7EgOlyeSCYXnQCzAnGO5DhCBzMBEZ90PTw620NwpfQccJ/sj4+bU+r4GBI0b2Lw== -json-parse-better-errors@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.1.tgz#50183cd1b2d25275de069e9e71b467ac9eab973a" - -json-parse-better-errors@^1.0.2: +json-parse-better-errors@^1.0.0, json-parse-better-errors@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== +json-parse-better-errors@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.1.tgz#50183cd1b2d25275de069e9e71b467ac9eab973a" + json-schema-traverse@^0.3.0: version "0.3.1" resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340" @@ -6733,7 +8279,7 @@ json-stable-stringify@^1.0.1: dependencies: jsonify "~0.0.0" -json-stringify-safe@~5.0.1: +json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" @@ -6776,6 +8322,11 @@ jsonify@~0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" +jsonparse@^1.2.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" + integrity sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA= + jsprim@^1.2.2: version "1.4.1" resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" @@ -6785,6 +8336,11 @@ jsprim@^1.2.2: json-schema "0.2.3" verror "1.10.0" +killable@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/killable/-/killable-1.0.1.tgz#4c8ce441187a061c7474fb87ca08e2a638194892" + integrity sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg== + kind-of@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-2.0.1.tgz#018ec7a4ce7e3a86cb9141be519d24c8faa981b5" @@ -6867,6 +8423,29 @@ left-pad@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/left-pad/-/left-pad-1.2.0.tgz#d30a73c6b8201d8f7d8e7956ba9616087a68e0ee" +lerna@^3.16.3: + version "3.16.3" + resolved "https://registry.yarnpkg.com/lerna/-/lerna-3.16.3.tgz#c786951ea1e0567fa6b89988ff6283b6f8bf359f" + integrity sha512-ThrDjDsLAdEzn5tpD+eLdRL+zGU+A/j6IyIJXLtFA1TOnprm1+3bs2eTrNDFRQ46sFrOF0bWgOHbGN0OtTzxcA== + dependencies: + "@lerna/add" "3.16.2" + "@lerna/bootstrap" "3.16.2" + "@lerna/changed" "3.16.2" + "@lerna/clean" "3.16.0" + "@lerna/cli" "3.13.0" + "@lerna/create" "3.16.0" + "@lerna/diff" "3.16.0" + "@lerna/exec" "3.16.0" + "@lerna/import" "3.16.0" + "@lerna/init" "3.16.0" + "@lerna/link" "3.16.2" + "@lerna/list" "3.16.0" + "@lerna/publish" "3.16.3" + "@lerna/run" "3.16.0" + "@lerna/version" "3.16.2" + import-local "^2.0.0" + npmlog "^4.1.2" + leven@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/leven/-/leven-2.1.0.tgz#c2e7a9f772094dee9d34202ae8acce4687875580" @@ -6902,6 +8481,17 @@ load-json-file@^4.0.0: pify "^3.0.0" strip-bom "^3.0.0" +load-json-file@^5.3.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-5.3.0.tgz#4d3c1e01fa1c03ea78a60ac7af932c9ce53403f3" + integrity sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw== + dependencies: + graceful-fs "^4.1.15" + parse-json "^4.0.0" + pify "^4.0.1" + strip-bom "^3.0.0" + type-fest "^0.3.0" + loader-runner@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.3.0.tgz#f482aea82d543e07921700d5a46ef26fdac6b8a2" @@ -6950,6 +8540,16 @@ lodash-es@^4.17.11: resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.15.tgz#21bd96839354412f23d7a10340e5eac6ee455d78" integrity sha512-rlrc3yU3+JNOpZ9zj5pQtxnx2THmvRykwL4Xlxoa8I9lHBlVbbyPhgyPMioxVZ4NqyxaVVtaJnzsyOidQIhyyQ== +lodash._reinterpolate@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" + integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0= + +lodash.clonedeep@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" + integrity sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8= + lodash.debounce@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" @@ -6973,6 +8573,11 @@ lodash.isequal@^4.5.0: resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" integrity sha1-QVxEePK8wwEgwizhDtMib30+GOA= +lodash.ismatch@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz#756cb5150ca3ba6f11085a78849645f188f85f37" + integrity sha1-dWy1FQyjum8RCFp4hJZF8Yj4Xzc= + lodash.isplainobject@^4.0.6: version "4.0.6" resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" @@ -6981,6 +8586,11 @@ lodash.memoize@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" +lodash.set@^4.3.2: + version "4.3.2" + resolved "https://registry.yarnpkg.com/lodash.set/-/lodash.set-4.3.2.tgz#d8757b1da807dde24816b0d6a84bea1a76230b23" + integrity sha1-2HV7HagH3eJIFrDWqEvqGnYjCyM= + lodash.some@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/lodash.some/-/lodash.some-4.6.0.tgz#1bb9f314ef6b8baded13b549169b2a945eb68e4d" @@ -6993,6 +8603,21 @@ lodash.tail@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/lodash.tail/-/lodash.tail-4.1.1.tgz#d2333a36d9e7717c8ad2f7cacafec7c32b444664" +lodash.template@^4.0.2, lodash.template@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.5.0.tgz#f976195cf3f347d0d5f52483569fe8031ccce8ab" + integrity sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A== + dependencies: + lodash._reinterpolate "^3.0.0" + lodash.templatesettings "^4.0.0" + +lodash.templatesettings@^4.0.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz#e481310f049d3cf6d47e912ad09313b154f0fb33" + integrity sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ== + dependencies: + lodash._reinterpolate "^3.0.0" + lodash.throttle@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/lodash.throttle/-/lodash.throttle-4.1.1.tgz#c23e91b710242ac70c37f1e1cda9274cc39bf2f4" @@ -7002,7 +8627,12 @@ lodash.toarray@^4.4.0: resolved "https://registry.yarnpkg.com/lodash.toarray/-/lodash.toarray-4.4.0.tgz#24c4bfcd6b2fba38bfd0594db1179d8e9b656561" integrity sha1-JMS/zWsvuji/0FlNsRedjptlZWE= -lodash@4.*, lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.13: +lodash.uniq@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" + integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= + +lodash@4.*, lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.13, lodash@^4.17.14, lodash@^4.2.1: version "4.17.15" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== @@ -7015,6 +8645,11 @@ lodash@^4.15.0, lodash@^4.17.5: version "4.17.5" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.5.tgz#99a92d65c0272debe8c96b6057bc8fbfa3bed511" +loglevel@^1.6.3: + version "1.6.3" + resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.3.tgz#77f2eb64be55a404c9fd04ad16d57c1d6d6b1280" + integrity sha512-LoEDv5pgpvWgPF4kNYuIp0qqSJVWak/dML0RY74xlzMZiT9w77teNAwKYKWBTYjlokMirg+o3jBwp+vlLrcfAA== + loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848" @@ -7067,6 +8702,18 @@ lru-cache@^5.1.1: dependencies: yallist "^3.0.2" +macos-release@^2.2.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/macos-release/-/macos-release-2.3.0.tgz#eb1930b036c0800adebccd5f17bc4c12de8bb71f" + integrity sha512-OHhSbtcviqMPt7yfw5ef5aghS2jzFVKEFyCJndQt2YpSQ9qRVSEv2axSJI1paVThEu+FFGs584h/1YhxjVqajA== + +make-dir@^1.0.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c" + integrity sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ== + dependencies: + pify "^3.0.0" + make-dir@^2.0.0, make-dir@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" @@ -7087,6 +8734,23 @@ make-error@1.x: resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.5.tgz#efe4e81f6db28cadd605c70f29c831b58ef776c8" integrity sha512-c3sIjNUow0+8swNwVpqoH4YCShKNFkMaw6oH1mNS2haDZQqkeZFlHS3dhoeEbKKmJB4vXpJucU6oH75aDYeE9g== +make-fetch-happen@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/make-fetch-happen/-/make-fetch-happen-5.0.0.tgz#a8e3fe41d3415dd656fe7b8e8172e1fb4458b38d" + integrity sha512-nFr/vpL1Jc60etMVKeaLOqfGjMMb3tAHFVJWxHOFCFS04Zmd7kGlMxo0l1tzfhoQje0/UPnd0X8OeGUiXXnfPA== + dependencies: + agentkeepalive "^3.4.1" + cacache "^12.0.0" + http-cache-semantics "^3.8.1" + http-proxy-agent "^2.1.0" + https-proxy-agent "^2.2.1" + lru-cache "^5.1.1" + mississippi "^3.0.0" + node-fetch-npm "^2.0.2" + promise-retry "^1.1.1" + socks-proxy-agent "^4.0.0" + ssri "^6.0.0" + makeerror@1.0.x: version "1.0.11" resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" @@ -7113,6 +8777,11 @@ map-obj@^1.0.0, map-obj@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" +map-obj@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-2.0.0.tgz#a65cd29087a92598b8791257a523e021222ac1f9" + integrity sha1-plzSkIepJZi4eRJXpSPgISIqwfk= + map-or-similar@^1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/map-or-similar/-/map-or-similar-1.5.0.tgz#6de2653174adfb5d9edc33c69d3e92a1b76faf08" @@ -7199,7 +8868,7 @@ memory-fs@^0.4.0, memory-fs@^0.4.1, memory-fs@~0.4.1: errno "^0.1.3" readable-stream "^2.0.1" -meow@^3.7.0: +meow@^3.3.0, meow@^3.7.0: version "3.7.0" resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" dependencies: @@ -7214,6 +8883,21 @@ meow@^3.7.0: redent "^1.0.0" trim-newlines "^1.0.0" +meow@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/meow/-/meow-4.0.1.tgz#d48598f6f4b1472f35bf6317a95945ace347f975" + integrity sha512-xcSBHD5Z86zaOc+781KrupuHAzeGXSLtiAOmBsiLDiPSaYSB6hdew2ng9EBAnZ62jagG9MHAOdxpDi/lWBFJ/A== + dependencies: + camelcase-keys "^4.0.0" + decamelize-keys "^1.0.0" + loud-rejection "^1.0.0" + minimist "^1.1.3" + minimist-options "^3.0.1" + normalize-package-data "^2.3.4" + read-pkg-up "^3.0.0" + redent "^2.0.0" + trim-newlines "^2.0.0" + merge-deep@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/merge-deep/-/merge-deep-3.0.2.tgz#f39fa100a4f1bd34ff29f7d2bf4508fbb8d83ad2" @@ -7237,6 +8921,11 @@ merge2@^1.2.1: version "1.2.2" resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.2.2.tgz#03212e3da8d86c4d8523cebd6318193414f94e34" +merge2@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.2.3.tgz#7ee99dbd69bb6481689253f018488a1b902b0ed5" + integrity sha512-gdUU1Fwj5ep4kplwcmftruWofEFt6lfpkkr3h860CXbAB9c3hGb55EOL2ali0Td5oebvW0E1+3Sr+Ur7XfKpRA== + methods@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" @@ -7297,7 +8986,7 @@ miller-rabin@^4.0.0: bn.js "^4.0.0" brorand "^1.0.1" -mime-db@1.40.0: +mime-db@1.40.0, "mime-db@>= 1.40.0 < 2": version "1.40.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.40.0.tgz#a65057e998db090f732a68f6c276d387d4126c32" integrity sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA== @@ -7368,6 +9057,14 @@ minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: dependencies: brace-expansion "^1.1.7" +minimist-options@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-3.0.2.tgz#fba4c8191339e13ecf4d61beb03f070103f3d954" + integrity sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ== + dependencies: + arrify "^1.0.1" + is-plain-obj "^1.1.0" + minimist@0.0.8: version "0.0.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" @@ -7425,12 +9122,24 @@ mixin-object@^2.0.1: for-in "^0.1.3" is-extendable "^0.1.1" -mkdirp@0.5.1, mkdirp@0.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1: +mkdirp-promise@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/mkdirp-promise/-/mkdirp-promise-5.0.1.tgz#e9b8f68e552c68a9c1713b84883f7a1dd039b8a1" + integrity sha1-6bj2jlUsaKnBcTuEiD96HdA5uKE= + dependencies: + mkdirp "*" + +mkdirp@*, mkdirp@0.5.1, mkdirp@0.5.x, mkdirp@0.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" dependencies: minimist "0.0.8" +modify-values@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022" + integrity sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw== + move-concurrently@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" @@ -7451,15 +9160,52 @@ ms@2.1.1: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== -ms@^2.1.1: +ms@^2.0.0, ms@^2.1.1: version "2.1.2" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== +multicast-dns-service-types@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz#899f11d9686e5e05cb91b35d5f0e63b773cfc901" + integrity sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE= + +multicast-dns@^6.0.1: + version "6.2.3" + resolved "https://registry.yarnpkg.com/multicast-dns/-/multicast-dns-6.2.3.tgz#a0ec7bd9055c4282f790c3c82f4e28db3b31b229" + integrity sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g== + dependencies: + dns-packet "^1.3.1" + thunky "^1.0.2" + +multimatch@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/multimatch/-/multimatch-3.0.0.tgz#0e2534cc6bc238d9ab67e1b9cd5fcd85a6dbf70b" + integrity sha512-22foS/gqQfANZ3o+W7ST2x25ueHDVNWl/b9OlGcLpy/iKxjCpvcNCM51YCenUi7Mt/jAjjqv8JwZRs8YP5sRjA== + dependencies: + array-differ "^2.0.3" + array-union "^1.0.2" + arrify "^1.0.1" + minimatch "^3.0.4" + mute-stream@0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" +mute-stream@~0.0.4: + version "0.0.8" + resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" + integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== + +mz@^2.5.0: + version "2.7.0" + resolved "https://registry.yarnpkg.com/mz/-/mz-2.7.0.tgz#95008057a56cafadc2bc63dde7f9ff6955948e32" + integrity sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q== + dependencies: + any-promise "^1.0.0" + object-assign "^4.0.1" + thenify-all "^1.0.0" + nan@^2.12.1, nan@^2.13.2: version "2.14.0" resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.0.tgz#7818f722027b2459a86f0295d434d1fc2336c52c" @@ -7551,6 +9297,15 @@ node-emoji@1.10.0: dependencies: lodash.toarray "^4.4.0" +node-fetch-npm@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/node-fetch-npm/-/node-fetch-npm-2.0.2.tgz#7258c9046182dca345b4208eda918daf33697ff7" + integrity sha512-nJIxm1QmAj4v3nfCvEeCrYSoVwXyxLnaPBK5W1W5DGEJwjlKuC2VEUycGw5oxk+4zZahRrB84PUJJgEmhFTDFw== + dependencies: + encoding "^0.1.11" + json-parse-better-errors "^1.0.0" + safe-buffer "^5.1.1" + node-fetch@^1.0.1: version "1.7.3" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef" @@ -7558,11 +9313,16 @@ node-fetch@^1.0.1: encoding "^0.1.11" is-stream "^1.0.1" -node-fetch@^2.6.0: +node-fetch@^2.3.0, node-fetch@^2.5.0, node-fetch@^2.6.0: version "2.6.0" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.0.tgz#e633456386d4aa55863f676a7ab0daa8fdecb0fd" integrity sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA== +node-forge@0.7.5: + version "0.7.5" + resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.7.5.tgz#6c152c345ce11c52f465c2abd957e8639cd674df" + integrity sha512-MmbQJ2MTESTjt3Gi/3yG1wGpIMhUfcIypUCGtTizFR9IiccFwxSpfp0vtIZlkFclEqERemxfnSdZEMR9VqqEFQ== + node-gyp@^3.8.0: version "3.8.0" resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-3.8.0.tgz#540304261c330e80d0d5edce253a68cb3964218c" @@ -7581,6 +9341,23 @@ node-gyp@^3.8.0: tar "^2.0.0" which "1" +node-gyp@^5.0.2: + version "5.0.3" + resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-5.0.3.tgz#80d64c23790244991b6d44532f0a351bedd3dd45" + integrity sha512-z/JdtkFGUm0QaQUusvloyYuGDub3nUbOo5de1Fz57cM++osBTvQatBUSTlF1k/w8vFHPxxXW6zxGvkxXSpaBkQ== + dependencies: + env-paths "^1.0.0" + glob "^7.0.3" + graceful-fs "^4.1.2" + mkdirp "^0.5.0" + nopt "2 || 3" + npmlog "0 || 1 || 2 || 3 || 4" + request "^2.87.0" + rimraf "2" + semver "~5.3.0" + tar "^4.4.8" + which "1" + node-int64@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" @@ -7709,16 +9486,7 @@ nopt@^4.0.1: abbrev "1" osenv "^0.1.4" -normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: - version "2.4.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" - dependencies: - hosted-git-info "^2.1.4" - is-builtin-module "^1.0.0" - semver "2 || 3 || 4 || 5" - validate-npm-package-license "^3.0.1" - -normalize-package-data@^2.5.0: +normalize-package-data@^2.0.0, normalize-package-data@^2.3.0, normalize-package-data@^2.3.5, normalize-package-data@^2.4.0, normalize-package-data@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== @@ -7728,6 +9496,15 @@ normalize-package-data@^2.5.0: semver "2 || 3 || 4 || 5" validate-npm-package-license "^3.0.1" +normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: + version "2.4.0" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" + dependencies: + hosted-git-info "^2.1.4" + is-builtin-module "^1.0.0" + semver "2 || 3 || 4 || 5" + validate-npm-package-license "^3.0.1" + normalize-path@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" @@ -7753,12 +9530,41 @@ normalize-url@1.9.1: query-string "^4.1.0" sort-keys "^1.0.0" +normalize-url@^3.3.0: + version "3.3.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-packlist@^1.1.6: +npm-lifecycle@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/npm-lifecycle/-/npm-lifecycle-3.1.2.tgz#06f2253ea3b9e122ce3e55e3496670a810afcc84" + integrity sha512-nhfOcoTHrW1lJJlM2o77vTE2RWR4YOVyj7YzmY0y5itsMjEuoJHteio/ez0BliENEPsNxIUQgwhyEW9dShj3Ww== + dependencies: + byline "^5.0.0" + graceful-fs "^4.1.15" + node-gyp "^5.0.2" + resolve-from "^4.0.0" + slide "^1.1.6" + uid-number "0.0.6" + umask "^1.1.0" + which "^1.3.1" + +"npm-package-arg@^4.0.0 || ^5.0.0 || ^6.0.0", npm-package-arg@^6.0.0, npm-package-arg@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/npm-package-arg/-/npm-package-arg-6.1.0.tgz#15ae1e2758a5027efb4c250554b85a737db7fcc1" + integrity sha512-zYbhP2k9DbJhA0Z3HKUePUgdB1x7MfIfKssC+WLPFMKTBZKpZh5m13PgexJjCq6KW7j17r0jHWcCpxEqnnncSA== + dependencies: + hosted-git-info "^2.6.0" + osenv "^0.1.5" + semver "^5.5.0" + validate-npm-package-name "^3.0.0" + +npm-packlist@^1.1.6, npm-packlist@^1.4.4: version "1.4.4" resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.4.tgz#866224233850ac534b63d1a6e76050092b5d2f44" integrity sha512-zTLo8UcVYtDU3gdeaFu2Xu0n0EvelfHDGuqtNIn5RO7yQj4H1TqNdBc/yZjxnWA0PVB8D3Woyp0i5B43JwQ6Vw== @@ -7766,6 +9572,15 @@ npm-packlist@^1.1.6: ignore-walk "^3.0.1" npm-bundled "^1.0.1" +npm-pick-manifest@^2.2.3: + version "2.2.3" + resolved "https://registry.yarnpkg.com/npm-pick-manifest/-/npm-pick-manifest-2.2.3.tgz#32111d2a9562638bb2c8f2bf27f7f3092c8fae40" + integrity sha512-+IluBC5K201+gRU85vFlUwX3PFShZAbAgDNp2ewJdWMVSppdo/Zih0ul2Ecky/X7b51J7LrrUAP+XOmOCvYZqA== + dependencies: + figgy-pudding "^3.5.1" + npm-package-arg "^6.0.0" + semver "^5.4.1" + npm-run-path@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" @@ -7921,12 +9736,27 @@ object.values@^1.1.0: function-bind "^1.1.1" has "^1.0.3" +obuf@^1.0.0, obuf@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e" + integrity sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg== + +octokit-pagination-methods@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/octokit-pagination-methods/-/octokit-pagination-methods-1.1.0.tgz#cf472edc9d551055f9ef73f6e42b4dbb4c80bea4" + integrity sha512-fZ4qZdQ2nxJvtcasX7Ghl+WlWS/d9IgnBIwFZXVNNZUmzpno91SX5bc5vuxiuKoCtK78XxGGNuSCrDC7xYB3OQ== + on-finished@~2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" dependencies: ee-first "1.1.1" +on-headers@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.2.tgz#772b0ae6aaa525c399e489adfad90c403eb3c28f" + integrity sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA== + once@^1.3.0, once@^1.3.1, once@^1.3.3, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" @@ -7953,6 +9783,13 @@ opn@5.4.0: dependencies: is-wsl "^1.1.0" +opn@^5.5.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/opn/-/opn-5.5.0.tgz#fc7164fab56d235904c51c3b27da6758ca3b9bfc" + integrity sha512-PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA== + dependencies: + is-wsl "^1.1.0" + optimist@^0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686" @@ -8009,6 +9846,14 @@ os-locale@^3.0.0, os-locale@^3.1.0: lcid "^2.0.0" mem "^4.0.0" +os-name@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/os-name/-/os-name-3.1.0.tgz#dec19d966296e1cd62d701a5a66ee1ddeae70801" + integrity sha512-h8L+8aNjNcMpo/mAIBPn5PXCM16iyPGjHNWo6U1YO8sJTMHtEtyczI6QJnLoplswm6goopQkqc7OAnjhWcugVg== + dependencies: + macos-release "^2.2.0" + windows-release "^3.1.0" + os-tmpdir@^1.0.0, os-tmpdir@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" @@ -8020,6 +9865,14 @@ osenv@0, osenv@^0.1.4: os-homedir "^1.0.0" os-tmpdir "^1.0.0" +osenv@^0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" + integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== + dependencies: + os-homedir "^1.0.0" + os-tmpdir "^1.0.0" + p-defer@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" @@ -8071,15 +9924,53 @@ p-locate@^4.1.0: dependencies: p-limit "^2.2.0" +p-map-series@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-map-series/-/p-map-series-1.0.0.tgz#bf98fe575705658a9e1351befb85ae4c1f07bdca" + integrity sha1-v5j+V1cFZYqeE1G++4WuTB8Hvco= + dependencies: + p-reduce "^1.0.0" + +p-map@^2.0.0, p-map@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175" + integrity sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw== + +p-pipe@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/p-pipe/-/p-pipe-1.2.0.tgz#4b1a11399a11520a67790ee5a0c1d5881d6befe9" + integrity sha1-SxoROZoRUgpneQ7loMHViB1r7+k= + +p-queue@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/p-queue/-/p-queue-4.0.0.tgz#ed0eee8798927ed6f2c2f5f5b77fdb2061a5d346" + integrity sha512-3cRXXn3/O0o3+eVmUroJPSj/esxoEFIm0ZOno/T+NzG/VZgPOqQ8WKmlNqubSEpZmCIngEy34unkHGg83ZIBmg== + dependencies: + eventemitter3 "^3.1.0" + p-reduce@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-reduce/-/p-reduce-1.0.0.tgz#18c2b0dd936a4690a529f8231f58a0fdb6a47dfa" +p-retry@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/p-retry/-/p-retry-3.0.1.tgz#316b4c8893e2c8dc1cfa891f406c4b422bebf328" + integrity sha512-XE6G4+YTTkT2a0UWb2kjZe8xNwf8bIbnqpc/IS/idOBVhyves0mK5OJgeocjx7q5pvX/6m23xuzVPYT1uGM73w== + dependencies: + retry "^0.12.0" + p-try@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== +p-waterfall@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-waterfall/-/p-waterfall-1.0.0.tgz#7ed94b3ceb3332782353af6aae11aa9fc235bb00" + integrity sha1-ftlLPOszMngjU69qrhGqn8I1uwA= + dependencies: + p-reduce "^1.0.0" + pako@~1.0.5: version "1.0.6" resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.6.tgz#0101211baa70c4bca4a0f63f2206e97b7dfaf258" @@ -8109,6 +10000,11 @@ parse-asn1@^5.0.0: evp_bytestokey "^1.0.0" pbkdf2 "^3.0.3" +parse-github-repo-url@^1.3.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/parse-github-repo-url/-/parse-github-repo-url-1.4.1.tgz#9e7d8bb252a6cb6ba42595060b7bf6df3dbc1f50" + integrity sha1-nn2LslKmy2ukJZUGC3v23z28H1A= + parse-json@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" @@ -8136,6 +10032,14 @@ parse-passwd@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" +parse-path@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/parse-path/-/parse-path-4.0.1.tgz#0ec769704949778cb3b8eda5e994c32073a1adff" + integrity sha512-d7yhga0Oc+PwNXDvQ0Jv1BuWkLVPXcAoQ/WREgd6vNNoKYaW52KI+RdOFjI63wjkmps9yUE8VS4veP+AgpQ/hA== + dependencies: + is-ssh "^1.3.0" + protocols "^1.4.0" + parse-repo@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/parse-repo/-/parse-repo-1.0.4.tgz#74b91d2cb8675d11b99976a0065f6ce17fa1bcc8" @@ -8147,6 +10051,16 @@ parse-url@^1.3.0: is-ssh "^1.3.0" protocols "^1.4.0" +parse-url@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/parse-url/-/parse-url-5.0.1.tgz#99c4084fc11be14141efa41b3d117a96fcb9527f" + integrity sha512-flNUPP27r3vJpROi0/R3/2efgKkyXqnXwyP1KQ2U0SfFRgdizOdWfvrrvJg1LuOoxs7GQhmxJlq23IpQ/BkByg== + dependencies: + is-ssh "^1.3.0" + normalize-url "^3.3.0" + parse-path "^4.0.0" + protocols "^1.4.0" + parse5@^3.0.1, parse5@^3.0.2: version "3.0.3" resolved "https://registry.yarnpkg.com/parse5/-/parse5-3.0.3.tgz#042f792ffdd36851551cf4e9e066b3874ab45b5c" @@ -8193,6 +10107,11 @@ path-is-absolute@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" +path-is-inside@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" + integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM= + path-key@^2.0.0, path-key@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" @@ -8262,7 +10181,7 @@ picomatch@^2.0.5: resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.0.7.tgz#514169d8c7cd0bdbeecc8a2609e34a7163de69f6" integrity sha512-oLHIdio3tZ0qH76NybpeneBhYVj0QFTfXEFTc/B3zKQspYfYYkWYgFsmzo+4kvId/bQRcNkVeguI3y+CD22BtA== -pify@^2.0.0: +pify@^2.0.0, pify@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" @@ -8336,6 +10255,15 @@ popper.js@^1.14.4, popper.js@^1.14.7: resolved "https://registry.yarnpkg.com/popper.js/-/popper.js-1.15.0.tgz#5560b99bbad7647e9faa475c6b8056621f5a4ff2" integrity sha512-w010cY1oCUmI+9KwwlWki+r5jxKfTFDVoadl7MSrIujHU5MJ5OR6HTDj6Xo8aoR/QsA56x8jKjA59qGH4ELtrA== +portfinder@^1.0.20: + version "1.0.21" + resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.21.tgz#60e1397b95ac170749db70034ece306b9a27e324" + integrity sha512-ESabpDCzmBS3ekHbmpAIiESq3udRsCBGiBZLsC+HgBKv2ezb0R4oG+7RnYEVZ/ZCfhel5Tx3UzdNWA0Lox2QCA== + dependencies: + async "^1.5.2" + debug "^2.2.0" + mkdirp "0.5.x" + posix-character-classes@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" @@ -8515,6 +10443,11 @@ process-nextick-args@~1.0.6: version "1.0.7" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" +process-nextick-args@~2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" + integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== + process@^0.11.10: version "0.11.10" resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" @@ -8532,6 +10465,14 @@ promise-inflight@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" +promise-retry@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/promise-retry/-/promise-retry-1.1.1.tgz#6739e968e3051da20ce6497fb2b50f6911df3d6d" + integrity sha1-ZznpaOMFHaIM5kl/srUPaRHfPW0= + dependencies: + err-code "^1.0.0" + 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" @@ -8563,6 +10504,13 @@ prompts@^2.0.1, prompts@^2.1.0: kleur "^3.0.2" sisteransi "^1.0.0" +promzard@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/promzard/-/promzard-0.3.0.tgz#26a5d6ee8c7dee4cb12208305acfb93ba382a9ee" + integrity sha1-JqXW7ox97kyxIggwWs+5O6OCqe4= + dependencies: + read "1" + prop-types@15.7.2, prop-types@^15.6.2, prop-types@^15.7.2: version "15.7.2" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5" @@ -8592,10 +10540,22 @@ property-information@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/property-information/-/property-information-3.2.0.tgz#fd1483c8fbac61808f5fe359e7693a1f48a58331" +proto-list@~1.2.1: + version "1.2.4" + resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" + integrity sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk= + protocols@^1.1.0, protocols@^1.4.0: version "1.4.6" resolved "https://registry.yarnpkg.com/protocols/-/protocols-1.4.6.tgz#f8bb263ea1b5fd7a7604d26b8be39bd77678bf8a" +protoduck@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/protoduck/-/protoduck-5.0.1.tgz#03c3659ca18007b69a50fd82a7ebcc516261151f" + integrity sha512-WxoCeDCoCBY55BMvj4cAEjdVUFGRWed9ZxPlqTKYyw1nDDTQ4pqmnIMAGfJlg7Dx35uB/M+PHJPTmGOvaCaPTg== + dependencies: + genfun "^5.0.0" + proxy-addr@~2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.5.tgz#34cbd64a2d81f4b1fd21e76f9f06c8a45299ee34" @@ -8680,7 +10640,7 @@ puppeteer@^1.18.1: rimraf "^2.6.1" ws "^6.1.0" -q@^1.1.2: +q@^1.1.2, q@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" @@ -8722,6 +10682,11 @@ querystringify@^2.1.1: resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.1.1.tgz#60e5a5fd64a7f8bfa4d2ab2ed6fdf4c85bad154e" integrity sha512-w7fLxIRCRT7U8Qu53jQnJyPkYZIaR4n5151KMfcJlO/A9397Wxb1amJvROTK6TOnp7PfoAmg/qXiNHI+08jRfA== +quick-lru@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-1.1.0.tgz#4360b17c61136ad38078397ff11416e186dcfbb8" + integrity sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g= + raf-schd@^4.0.0: version "4.0.2" resolved "https://registry.yarnpkg.com/raf-schd/-/raf-schd-4.0.2.tgz#bd44c708188f2e84c810bf55fcea9231bcaed8a0" @@ -9031,6 +10996,34 @@ react@^16.8.3, react@^16.8.6: prop-types "^15.6.2" scheduler "^0.13.6" +read-cmd-shim@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/read-cmd-shim/-/read-cmd-shim-1.0.1.tgz#2d5d157786a37c055d22077c32c53f8329e91c7b" + integrity sha1-LV0Vd4ajfAVdIgd8MsU/gynpHHs= + dependencies: + graceful-fs "^4.1.2" + +"read-package-json@1 || 2", read-package-json@^2.0.0, read-package-json@^2.0.13: + version "2.0.13" + resolved "https://registry.yarnpkg.com/read-package-json/-/read-package-json-2.0.13.tgz#2e82ebd9f613baa6d2ebe3aa72cefe3f68e41f4a" + integrity sha512-/1dZ7TRZvGrYqE0UAfN6qQb5GYBsNcqS1C0tNK601CFOJmtHI7NIGXwetEPU/OtoFHZL3hDxm4rolFFVE9Bnmg== + dependencies: + glob "^7.1.1" + json-parse-better-errors "^1.0.1" + normalize-package-data "^2.0.0" + slash "^1.0.0" + optionalDependencies: + graceful-fs "^4.1.2" + +read-package-tree@^5.1.6: + version "5.3.1" + resolved "https://registry.yarnpkg.com/read-package-tree/-/read-package-tree-5.3.1.tgz#a32cb64c7f31eb8a6f31ef06f9cedf74068fe636" + integrity sha512-mLUDsD5JVtlZxjSlPPx1RETkNjjvQYuweKwNVt1Sn8kP5Jh44pvYuUHCp6xSVDZWbNxVxG5lyZJ921aJH61sTw== + dependencies: + read-package-json "^2.0.0" + readdir-scoped-modules "^1.0.0" + util-promisify "^2.1.0" + read-pkg-up@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" @@ -9038,6 +11031,14 @@ read-pkg-up@^1.0.1: find-up "^1.0.0" read-pkg "^1.0.0" +read-pkg-up@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-3.0.0.tgz#3ed496685dba0f8fe118d0691dc51f4a1ff96f07" + integrity sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc= + dependencies: + find-up "^2.0.0" + read-pkg "^3.0.0" + read-pkg-up@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-4.0.0.tgz#1b221c6088ba7799601c808f91161c66e58f8978" @@ -9081,6 +11082,13 @@ read-pkg@^5.1.1: parse-json "^5.0.0" type-fest "^0.6.0" +read@1, read@~1.0.1: + version "1.0.7" + resolved "https://registry.yarnpkg.com/read/-/read-1.0.7.tgz#b3da19bd052431a97671d44a42634adf710b40c4" + integrity sha1-s9oZvQUkMal2cdRKQmNK33ELQMQ= + dependencies: + mute-stream "~0.0.4" + "readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.4, readable-stream@^2.0.6, readable-stream@^2.1.4, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.2.6, readable-stream@^2.3.3: version "2.3.3" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.3.tgz#368f2512d79f9d46fdfc71349ae7878bbc1eb95c" @@ -9102,6 +11110,38 @@ readable-stream@1.0: isarray "0.0.1" string_decoder "~0.10.x" +"readable-stream@2 || 3", readable-stream@^3.0.2, readable-stream@^3.0.6: + version "3.4.0" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.4.0.tgz#a51c26754658e0a3c21dbf59163bd45ba6f447fc" + integrity sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ== + dependencies: + inherits "^2.0.3" + string_decoder "^1.1.1" + util-deprecate "^1.0.1" + +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== + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.3" + isarray "~1.0.0" + process-nextick-args "~2.0.0" + safe-buffer "~5.1.1" + string_decoder "~1.1.1" + util-deprecate "~1.0.1" + +readdir-scoped-modules@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz#8d45407b4f870a0dcaebc0e28670d18e74514309" + integrity sha512-asaikDeqAQg7JifRsZn1NJZXo9E+VwlyCfbkZhwyISinqk5zNS6266HS5kah6P0SaQKGF6SkNnZVHUzHFYxYDw== + dependencies: + debuglog "^1.0.1" + dezalgo "^1.0.0" + graceful-fs "^4.1.2" + once "^1.3.0" + readdirp@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.1.0.tgz#4ed0ad060df3073300c48440373f72d1cc642d78" @@ -9188,6 +11228,14 @@ redent@^1.0.0: indent-string "^2.1.0" strip-indent "^1.0.1" +redent@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/redent/-/redent-2.0.0.tgz#c1b2007b42d57eb1389079b3c8333639d5e1ccaa" + integrity sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo= + dependencies: + indent-string "^3.0.0" + strip-indent "^2.0.0" + refractor@^2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/refractor/-/refractor-2.4.1.tgz#067654311ed1618fc2dd76e9263c8cf05ab6298b" @@ -9452,6 +11500,11 @@ resolve-from@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" +resolve-from@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== + resolve-from@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" @@ -9489,13 +11542,23 @@ ret@~0.1.10: version "0.1.15" resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" +retry@^0.10.0: + version "0.10.1" + resolved "https://registry.yarnpkg.com/retry/-/retry-0.10.1.tgz#e76388d217992c252750241d3d3956fed98d8ff4" + integrity sha1-52OI0heZLCUnUCQdPTlW/tmNj/Q= + +retry@^0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" + integrity sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs= + rimraf@2, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.5.4, rimraf@^2.6.1: version "2.6.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" dependencies: glob "^7.0.5" -rimraf@^2.6.3: +rimraf@^2.6.2, rimraf@^2.6.3: version "2.6.3" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== @@ -9554,7 +11617,7 @@ safe-buffer@5.1.2: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -safe-buffer@^5.1.2: +safe-buffer@^5.1.2, safe-buffer@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519" integrity sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg== @@ -9650,28 +11713,45 @@ scss-tokenizer@^0.2.3: js-base64 "^2.1.8" source-map "^0.4.2" +select-hose@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" + integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo= + select@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/select/-/select-1.1.2.tgz#0e7350acdec80b1108528786ec1d4418d11b396d" +selfsigned@^1.10.4: + version "1.10.4" + resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.4.tgz#cdd7eccfca4ed7635d47a08bf2d5d3074092e2cd" + integrity sha512-9AukTiDmHXGXWtWjembZ5NDmVvP2695EtpgbCsxCa68w3c88B+alqbmZ4O3hZ4VWGXeGWzEVdvqgAJD8DQPCDw== + dependencies: + node-forge "0.7.5" + "semver@2 || 3 || 4 || 5", semver@^5.3.0: version "5.4.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e" -semver@^5.4.1, semver@^5.5.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab" - -semver@^5.5, semver@^5.5.1, semver@^5.6.0: +"semver@2.x || 3.x || 4 || 5", semver@^5.5, semver@^5.5.1, semver@^5.6.0, semver@^5.7.0: version "5.7.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.0.tgz#790a7cf6fea5459bac96110b29b60412dc8ff96b" integrity sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA== +semver@^5.4.1, semver@^5.5.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab" + semver@^6.0.0, semver@^6.1.1: version "6.2.0" resolved "https://registry.yarnpkg.com/semver/-/semver-6.2.0.tgz#4d813d9590aaf8a9192693d6c85b9344de5901db" integrity sha512-jdFC1VdUGT/2Scgbimf7FSx9iJLXoqfglSF+gJeuNWVpiE37OIbc1jywR/GJyFdz3mnkz2/id0L0J/cr0izR5A== +semver@^6.2.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" + integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== + semver@~5.3.0: version "5.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" @@ -9711,6 +11791,19 @@ serve-favicon@^2.5.0: parseurl "~1.3.2" safe-buffer "5.1.1" +serve-index@^1.9.1: + version "1.9.1" + resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" + integrity sha1-03aNabHn2C5c4FD/9bRTvqEqkjk= + dependencies: + accepts "~1.3.4" + batch "0.6.1" + debug "2.6.9" + escape-html "~1.0.3" + http-errors "~1.6.2" + mime-types "~2.1.17" + parseurl "~1.3.2" + serve-static@1.14.1: version "1.14.1" resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.14.1.tgz#666e636dc4f010f7ef29970a88a674320898b2f9" @@ -9757,6 +11850,11 @@ setimmediate@^1.0.4, setimmediate@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" +setprototypeof@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" + integrity sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ== + setprototypeof@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.1.tgz#7e95acb24aa92f5885e0abef5ba131330d4ae683" @@ -9875,6 +11973,16 @@ slash@^2.0.0: resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44" integrity sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A== +slide@^1.1.6: + version "1.1.6" + resolved "https://registry.yarnpkg.com/slide/-/slide-1.1.6.tgz#56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707" + integrity sha1-VusCfWW00tzmyy4tMsTUr8nh1wc= + +smart-buffer@4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.0.2.tgz#5207858c3815cc69110703c6b94e46c15634395d" + integrity sha512-JDhEpTKzXusOqXZ0BUIdH+CjFdO/CR3tLlf5CN34IypI+xMmXW1uB16OOY8z3cICbJlDAVJzNbwBhNO0wt9OAw== + snapdragon-node@^2.0.1: version "2.1.1" resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" @@ -9926,12 +12034,43 @@ sockjs-client@1.3.0: json3 "^3.3.2" url-parse "^1.4.3" +sockjs@0.3.19: + version "0.3.19" + resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.19.tgz#d976bbe800af7bd20ae08598d582393508993c0d" + integrity sha512-V48klKZl8T6MzatbLlzzRNhMepEys9Y4oGFpypBFFn1gLI/QQ9HtLLyWJNbPlwGLelOVOEijUbTTJeLLI59jLw== + dependencies: + faye-websocket "^0.10.0" + uuid "^3.0.1" + +socks-proxy-agent@^4.0.0: + version "4.0.2" + resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-4.0.2.tgz#3c8991f3145b2799e70e11bd5fbc8b1963116386" + integrity sha512-NT6syHhI9LmuEMSK6Kd2V7gNv5KFZoLE7V5udWmn0de+3Mkj3UMA/AJPLyeNUVmElCurSHtUdM3ETpR3z770Wg== + dependencies: + agent-base "~4.2.1" + socks "~2.3.2" + +socks@~2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/socks/-/socks-2.3.2.tgz#ade388e9e6d87fdb11649c15746c578922a5883e" + integrity sha512-pCpjxQgOByDHLlNqlnh/mNSAxIUkyBBuwwhTcV+enZGbDaClPvHdvm6uvOwZfFJkam7cGhBNbb4JxiP8UZkRvQ== + dependencies: + ip "^1.1.5" + smart-buffer "4.0.2" + sort-keys@^1.0.0: version "1.1.2" resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-1.1.2.tgz#441b6d4d346798f1b4e49e8920adfba0e543f9ad" dependencies: is-plain-obj "^1.0.0" +sort-keys@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128" + integrity sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg= + dependencies: + is-plain-obj "^1.0.0" + source-list-map@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.0.tgz#aaa47403f7b245a92fbc97ea08f250d6087ed085" @@ -9997,12 +12136,33 @@ spawnd@^4.0.0: tree-kill "^1.2.1" wait-port "^0.2.2" +spdx-correct@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.0.tgz#fb83e504445268f154b074e218c87c003cd31df4" + integrity sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q== + dependencies: + spdx-expression-parse "^3.0.0" + spdx-license-ids "^3.0.0" + spdx-correct@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-1.0.2.tgz#4b3073d933ff51f3912f03ac5519498a4150db40" dependencies: spdx-license-ids "^1.0.2" +spdx-exceptions@^2.1.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz#2ea450aee74f2a89bfb94519c07fcd6f41322977" + integrity sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA== + +spdx-expression-parse@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0" + integrity sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg== + dependencies: + spdx-exceptions "^2.1.0" + spdx-license-ids "^3.0.0" + spdx-expression-parse@~1.0.0: version "1.0.4" resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz#9bdf2f20e1f40ed447fbe273266191fced51626c" @@ -10011,12 +12171,54 @@ spdx-license-ids@^1.0.2: version "1.2.2" resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57" +spdx-license-ids@^3.0.0: + version "3.0.5" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz#3694b5804567a458d3c8045842a6358632f62654" + integrity sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q== + +spdy-transport@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-3.0.0.tgz#00d4863a6400ad75df93361a1608605e5dcdcf31" + integrity sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw== + dependencies: + debug "^4.1.0" + detect-node "^2.0.4" + hpack.js "^2.1.6" + obuf "^1.1.2" + readable-stream "^3.0.6" + wbuf "^1.7.3" + +spdy@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/spdy/-/spdy-4.0.0.tgz#81f222b5a743a329aa12cea6a390e60e9b613c52" + integrity sha512-ot0oEGT/PGUpzf/6uk4AWLqkq+irlqHXkrdbk51oWONh3bxQmBuljxPNl66zlRRcIJStWq0QkLUCPOPjgjvU0Q== + dependencies: + debug "^4.1.0" + handle-thing "^2.0.0" + http-deceiver "^1.2.7" + select-hose "^2.0.0" + spdy-transport "^3.0.0" + split-string@^3.0.1, split-string@^3.0.2: version "3.1.0" resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" dependencies: extend-shallow "^3.0.0" +split2@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/split2/-/split2-2.2.0.tgz#186b2575bcf83e85b7d18465756238ee4ee42493" + integrity sha512-RAb22TG39LhI31MbreBgIuKiIKhVsawfTgEGqKHTK87aG+ul/PB8Sqoi3I7kVdRWiCfrKxK3uo4/YUkpNvhPbw== + dependencies: + through2 "^2.0.2" + +split@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/split/-/split-1.0.1.tgz#605bd9be303aa59fb35f9229fbea0ddec9ea07d9" + integrity sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg== + dependencies: + through "2" + sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" @@ -10035,7 +12237,7 @@ sshpk@^1.7.0: jsbn "~0.1.0" tweetnacl "~0.14.0" -ssri@^6.0.1: +ssri@^6.0.0, ssri@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/ssri/-/ssri-6.0.1.tgz#2a3c41b28dd45b62b63676ecb74001265ae9edd8" integrity sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA== @@ -10058,7 +12260,7 @@ static-extend@^0.1.1: define-property "^0.2.5" object-copy "^0.1.0" -"statuses@>= 1.5.0 < 2", statuses@~1.5.0: +"statuses@>= 1.4.0 < 2", "statuses@>= 1.5.0 < 2", statuses@~1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= @@ -10215,10 +12417,24 @@ string_decoder@^1.0.0, string_decoder@~1.0.3: dependencies: safe-buffer "~5.1.0" +string_decoder@^1.1.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.2.0.tgz#fe86e738b19544afe70469243b2a1ee9240eae8d" + integrity sha512-6YqyX6ZWEYguAxgZzHGL7SsCeGx3V2TtOTqZz1xSTSWnqsbWwbptafNyvf/ACquZUXV3DANr5BDIwNYe1mN42w== + dependencies: + safe-buffer "~5.1.0" + string_decoder@~0.10.x: version "0.10.31" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" +string_decoder@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" + integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== + dependencies: + safe-buffer "~5.1.0" + stringstream@~0.0.4, stringstream@~0.0.5: version "0.0.5" resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878" @@ -10262,10 +12478,24 @@ strip-indent@^1.0.1: dependencies: get-stdin "^4.0.1" +strip-indent@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-2.0.0.tgz#5ef8db295d01e6ed6cbf7aab96998d7822527b68" + integrity sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g= + strip-json-comments@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" +strong-log-transformer@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/strong-log-transformer/-/strong-log-transformer-2.1.0.tgz#0f5ed78d325e0421ac6f90f7f10e691d6ae3ae10" + integrity sha512-B3Hgul+z0L9a236FAUC9iZsL+nVHgoCJnqCbN588DjYxvGXaXaaFbfmQ/JhvKjZwsOukuR72XbHv71Qkug0HxA== + dependencies: + duplexer "^0.1.1" + minimist "^1.2.0" + through "^2.3.4" + style-loader@^0.23.1: version "0.23.1" resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-0.23.1.tgz#cb9154606f3e771ab6c4ab637026a1049174d925" @@ -10367,7 +12597,7 @@ tar@^2.0.0, tar@^2.2.1: fstream "^1.0.2" inherits "2" -tar@^4: +tar@^4, tar@^4.4.10, tar@^4.4.8: version "4.4.10" resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.10.tgz#946b2810b9a5e0b26140cf78bea6b0b0d689eba1" integrity sha512-g2SVs5QIxvo6OLp0GudTqEf05maawKUxXru104iaayWA09551tFCTI8f1Asb4lPfkBr91k07iL4c11XO3/b0tA== @@ -10393,6 +12623,23 @@ telejson@^2.2.1: lodash.get "^4.4.2" memoizerific "^1.11.3" +temp-dir@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-1.0.0.tgz#0a7c0ea26d3a39afa7e0ebea9c1fc0bc4daa011d" + integrity sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0= + +temp-write@^3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/temp-write/-/temp-write-3.4.0.tgz#8cff630fb7e9da05f047c74ce4ce4d685457d492" + integrity sha1-jP9jD7fp2gXwR8dM5M5NaFRX1JI= + dependencies: + graceful-fs "^4.1.2" + is-stream "^1.1.0" + make-dir "^1.0.0" + pify "^3.0.0" + temp-dir "^1.0.0" + uuid "^3.0.1" + term-size@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/term-size/-/term-size-1.2.0.tgz#458b83887f288fc56d6fffbfad262e26638efa69" @@ -10435,10 +12682,29 @@ test-exclude@^5.2.3: read-pkg-up "^4.0.0" require-main-filename "^2.0.0" +text-extensions@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/text-extensions/-/text-extensions-2.0.0.tgz#43eabd1b495482fae4a2bf65e5f56c29f69220f6" + integrity sha512-F91ZqLgvi1E0PdvmxMgp+gcf6q8fMH7mhdwWfzXnl1k+GbpQDmi8l7DzLC5JTASKbwpY3TfxajAUzAXcv2NmsQ== + text-table@0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" +thenify-all@^1.0.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/thenify-all/-/thenify-all-1.6.0.tgz#1a1918d402d8fc3f98fbf234db0bcc8cc10e9726" + integrity sha1-GhkY1ALY/D+Y+/I02wvMjMEOlyY= + dependencies: + thenify ">= 3.1.0 < 4" + +"thenify@>= 3.1.0 < 4": + version "3.3.0" + resolved "https://registry.yarnpkg.com/thenify/-/thenify-3.3.0.tgz#e69e38a1babe969b0108207978b9f62b88604839" + integrity sha1-5p44obq+lpsBCCB5eLn2K4hgSDk= + dependencies: + any-promise "^1.0.0" + throat@^4.0.0: version "4.1.0" resolved "https://registry.yarnpkg.com/throat/-/throat-4.1.0.tgz#89037cbc92c56ab18926e6ba4cbb200e15672a6a" @@ -10450,10 +12716,30 @@ through2@^2.0.0: readable-stream "^2.1.5" xtend "~4.0.1" -through@^2.3.6, through@^2.3.8, through@~2.3.6: +through2@^2.0.2: + version "2.0.5" + resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" + integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== + dependencies: + readable-stream "~2.3.6" + xtend "~4.0.1" + +through2@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/through2/-/through2-3.0.1.tgz#39276e713c3302edf9e388dd9c812dd3b825bd5a" + integrity sha512-M96dvTalPT3YbYLaKaCuwu+j06D/8Jfib0o/PxbVt6Amhv3dUAtW6rTV1jPgJSBG83I/e04Y6xkVdVhSRhi0ww== + dependencies: + readable-stream "2 || 3" + +through@2, "through@>=2.2.7 <3", through@^2.3.4, through@^2.3.6, through@^2.3.8, through@~2.3.6: version "2.3.8" resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" +thunky@^1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.0.3.tgz#f5df732453407b09191dae73e2a8cc73f381a826" + integrity sha512-YwT8pjmNcAXBZqrubu22P4FYsh2D4dxRmnWBOL8Jk8bUcRUtc5326kx32tuTmFDAZtLOGEVNl8POAR8j896Iow== + timers-browserify@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.4.tgz#96ca53f4b794a5e7c0e1bd7cc88a372298fa01e6" @@ -10548,7 +12834,7 @@ tough-cookie@~2.4.3: psl "^1.1.24" punycode "^1.4.1" -tr46@^1.0.0: +tr46@^1.0.0, tr46@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/tr46/-/tr46-1.0.1.tgz#a8b13fd6bfd2489519674ccde55ba3693b706d09" dependencies: @@ -10563,6 +12849,16 @@ trim-newlines@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" +trim-newlines@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-2.0.0.tgz#b403d0b91be50c331dfc4b82eeceb22c3de16d20" + integrity sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA= + +trim-off-newlines@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz#9f9ba9d9efa8764c387698bcbfeb2c848f11adb3" + integrity sha1-n5up2e+odkw4dpi8v+sshI8RrbM= + trim-right@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" @@ -10694,10 +12990,15 @@ uglify-js@^3.1.4, uglify-js@^3.5.1: commander "~2.20.0" source-map "~0.6.1" -uid-number@^0.0.6: +uid-number@0.0.6, uid-number@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" +umask@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/umask/-/umask-1.1.0.tgz#f29cebf01df517912bb58ff9c4e50fde8e33320d" + integrity sha1-8pzr8B31F5ErtY/5xOUP3o4zMg0= + underscore@~1.4.4: version "1.4.4" resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.4.4.tgz#61a6a32010622afa07963bf325203cf12239d604" @@ -10751,6 +13052,13 @@ unique-slug@^2.0.0: dependencies: imurmurhash "^0.1.4" +universal-user-agent@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-3.0.0.tgz#4cc88d68097bffd7ac42e3b7c903e7481424b4b9" + integrity sha512-T3siHThqoj5X0benA5H0qcDnrKGXzU8TKoX15x/tQHw1hQBvIEBHjxQ2klizYsqBOO/Q+WuxoQUihadeeqDnoA== + dependencies: + os-name "^3.0.0" + universalify@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.1.tgz#fa71badd4437af4c148841e3b3b165f9e9e590b7" @@ -10812,6 +13120,11 @@ url-parse@^1.4.3: querystringify "^2.1.1" requires-port "^1.0.0" +url-template@^2.0.8: + version "2.0.8" + resolved "https://registry.yarnpkg.com/url-template/-/url-template-2.0.8.tgz#fc565a3cccbff7730c775f5641f9555791439f21" + integrity sha1-/FZaPMy/93MMd19WQflVV5FDnyE= + url@^0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" @@ -10827,10 +13140,17 @@ use@^2.0.0: isobject "^3.0.0" lazy-cache "^2.0.2" -util-deprecate@^1.0.2, util-deprecate@~1.0.1: +util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" +util-promisify@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/util-promisify/-/util-promisify-2.1.0.tgz#3c2236476c4d32c5ff3c47002add7c13b9a82a53" + integrity sha1-PCI2R2xNMsX/PEcAKt18E7moKlM= + dependencies: + object.getownpropertydescriptors "^2.0.3" + 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" @@ -10860,7 +13180,7 @@ uuid@^3.0.0, uuid@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.1.0.tgz#3dd3d3e790abc24d7b0d3a034ffababe28ebbc04" -uuid@^3.3.2: +uuid@^3.0.1, uuid@^3.3.2: version "3.3.2" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA== @@ -10885,6 +13205,21 @@ validate-npm-package-license@^3.0.1: spdx-correct "~1.0.0" spdx-expression-parse "~1.0.0" +validate-npm-package-license@^3.0.3: + version "3.0.4" + resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" + integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== + dependencies: + spdx-correct "^3.0.0" + spdx-expression-parse "^3.0.0" + +validate-npm-package-name@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz#5fa912d81eb7d0c74afc140de7317f0ca7df437e" + integrity sha1-X6kS2B630MdK/BQN5zF/DKffQ34= + dependencies: + builtins "^1.0.3" + vary@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" @@ -10956,6 +13291,20 @@ watchpack@^1.5.0: graceful-fs "^4.1.2" neo-async "^2.5.0" +wbuf@^1.1.0, wbuf@^1.7.3: + version "1.7.3" + resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.3.tgz#c1d8d149316d3ea852848895cb6a0bfe887b87df" + integrity sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA== + dependencies: + minimalistic-assert "^1.0.0" + +wcwidth@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" + integrity sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g= + dependencies: + defaults "^1.0.3" + webidl-conversions@^4.0.1, webidl-conversions@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" @@ -10987,6 +13336,43 @@ webpack-dev-middleware@^3.7.0: range-parser "^1.2.1" webpack-log "^2.0.0" +webpack-dev-server@^3.7.2: + version "3.7.2" + resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.7.2.tgz#f79caa5974b7f8b63268ef5421222a8486d792f5" + integrity sha512-mjWtrKJW2T9SsjJ4/dxDC2fkFVUw8jlpemDERqV0ZJIkjjjamR2AbQlr3oz+j4JLhYCHImHnXZK5H06P2wvUew== + dependencies: + ansi-html "0.0.7" + bonjour "^3.5.0" + chokidar "^2.1.6" + compression "^1.7.4" + connect-history-api-fallback "^1.6.0" + debug "^4.1.1" + del "^4.1.1" + express "^4.17.1" + html-entities "^1.2.1" + http-proxy-middleware "^0.19.1" + import-local "^2.0.0" + internal-ip "^4.3.0" + ip "^1.1.5" + killable "^1.0.1" + loglevel "^1.6.3" + opn "^5.5.0" + p-retry "^3.0.1" + portfinder "^1.0.20" + schema-utils "^1.0.0" + selfsigned "^1.10.4" + semver "^6.1.1" + serve-index "^1.9.1" + sockjs "0.3.19" + sockjs-client "1.3.0" + spdy "^4.0.0" + strip-ansi "^3.0.1" + supports-color "^6.1.0" + url "^0.11.0" + webpack-dev-middleware "^3.7.0" + webpack-log "^2.0.0" + yargs "12.0.5" + webpack-hot-middleware@^2.25.0: version "2.25.0" resolved "https://registry.yarnpkg.com/webpack-hot-middleware/-/webpack-hot-middleware-2.25.0.tgz#4528a0a63ec37f8f8ef565cf9e534d57d09fe706" @@ -11083,6 +13469,15 @@ whatwg-url@^6.3.0: tr46 "^1.0.0" webidl-conversions "^4.0.1" +whatwg-url@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-7.0.0.tgz#fde926fa54a599f3adf82dff25a9f7be02dc6edd" + integrity sha512-37GeVSIJ3kn1JgKyjiYNmSLP1yzbpb29jdmwBSgkD9h40/hyrR/OifpVUndji3tmwGgD8qpw7iQu3RSbCrBpsQ== + dependencies: + lodash.sortby "^4.7.0" + tr46 "^1.0.1" + webidl-conversions "^4.0.2" + which-module@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" @@ -11117,6 +13512,13 @@ widest-line@^2.0.0: dependencies: string-width "^2.1.1" +windows-release@^3.1.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/windows-release/-/windows-release-3.2.0.tgz#8122dad5afc303d833422380680a79cdfa91785f" + integrity sha512-QTlz2hKLrdqukrsapKsINzqMgOUpQW268eJ0OaOpJN32h272waxR9fkB9VoWRtK7uKHG5EHJcTXQBD8XZVJkFA== + dependencies: + execa "^1.0.0" + wordwrap@~0.0.2: version "0.0.3" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107" @@ -11168,6 +13570,47 @@ write-file-atomic@2.4.1: imurmurhash "^0.1.4" signal-exit "^3.0.2" +write-file-atomic@^2.0.0, write-file-atomic@^2.3.0, write-file-atomic@^2.4.2: + version "2.4.3" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.4.3.tgz#1fd2e9ae1df3e75b8d8c367443c692d4ca81f481" + integrity sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ== + dependencies: + graceful-fs "^4.1.11" + imurmurhash "^0.1.4" + signal-exit "^3.0.2" + +write-json-file@^2.2.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/write-json-file/-/write-json-file-2.3.0.tgz#2b64c8a33004d54b8698c76d585a77ceb61da32f" + integrity sha1-K2TIozAE1UuGmMdtWFp3zrYdoy8= + dependencies: + detect-indent "^5.0.0" + graceful-fs "^4.1.2" + make-dir "^1.0.0" + pify "^3.0.0" + sort-keys "^2.0.0" + write-file-atomic "^2.0.0" + +write-json-file@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/write-json-file/-/write-json-file-3.2.0.tgz#65bbdc9ecd8a1458e15952770ccbadfcff5fe62a" + integrity sha512-3xZqT7Byc2uORAatYiP3DHUUAVEkNOswEWNs9H5KXiicRTvzYzYqKjYc4G7p+8pltvAw641lVByKVtMpf+4sYQ== + dependencies: + detect-indent "^5.0.0" + graceful-fs "^4.1.15" + make-dir "^2.1.0" + pify "^4.0.1" + sort-keys "^2.0.0" + write-file-atomic "^2.4.2" + +write-pkg@^3.1.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/write-pkg/-/write-pkg-3.2.0.tgz#0e178fe97820d389a8928bc79535dbe68c2cff21" + integrity sha512-tX2ifZ0YqEFOF1wjRW2Pk93NLsj02+n1UP5RvO6rCs0K6R2g1padvf006cY74PQJKMGS2r42NK7FD0dG6Y6paw== + dependencies: + sort-keys "^2.0.0" + write-json-file "^2.2.0" + ws@^6.1.0: version "6.2.1" resolved "https://registry.yarnpkg.com/ws/-/ws-6.2.1.tgz#442fdf0a47ed64f59b6a5d8ff130f4748ed524fb" @@ -11239,6 +13682,24 @@ yargs-parser@^9.0.2: dependencies: camelcase "^4.1.0" +yargs@12.0.5, yargs@^12.0.1, yargs@^12.0.2: + version "12.0.5" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.5.tgz#05f5997b609647b64f66b81e3b4b10a368e7ad13" + integrity sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw== + dependencies: + cliui "^4.0.0" + decamelize "^1.2.0" + find-up "^3.0.0" + get-caller-file "^1.0.1" + os-locale "^3.0.0" + require-directory "^2.1.1" + require-main-filename "^1.0.1" + set-blocking "^2.0.0" + string-width "^2.0.0" + which-module "^2.0.0" + y18n "^3.2.1 || ^4.0.0" + yargs-parser "^11.1.1" + yargs@13.2.4: version "13.2.4" resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.2.4.tgz#0b562b794016eb9651b98bd37acf364aa5d6dc83" @@ -11273,24 +13734,6 @@ yargs@^11.0.0: y18n "^3.2.1" yargs-parser "^9.0.2" -yargs@^12.0.2: - version "12.0.5" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.5.tgz#05f5997b609647b64f66b81e3b4b10a368e7ad13" - integrity sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw== - dependencies: - cliui "^4.0.0" - decamelize "^1.2.0" - find-up "^3.0.0" - get-caller-file "^1.0.1" - os-locale "^3.0.0" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^2.0.0" - which-module "^2.0.0" - y18n "^3.2.1 || ^4.0.0" - yargs-parser "^11.1.1" - yargs@^7.0.0: version "7.1.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.1.0.tgz#6ba318eb16961727f5d284f8ea003e8d6154d0c8"