diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000000..23118a59c5 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "src/app/@ansyn/imagery-submodules"] + path = src/app/@ansyn/imagery-submodules + url = https://github.com/AnSyn/imagery.git diff --git a/.travis.yml b/.travis.yml index 8e87669b30..db67cc48bb 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,5 +1,8 @@ -os: linux +#from https://github.com/zcash/zcash/issues/341 +sudo: required dist: trusty + +os: linux addons: chrome: stable @@ -24,8 +27,11 @@ before_script: #- apt-get install graphicsmagick # for e2e screenshots script: + - npm run lint:submodules - npm run lint + # - npm run test:single-run:submodules - npm run test:single-run + - npm run build:submodules:libs - npm run build:libs - sh -x scripts/build.sh ansyn $TRAVIS_COMMIT $TRAVIS_TAG diff --git a/Dockerfile b/Dockerfile index 337b2f56a6..11d1389df6 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,12 +4,19 @@ FROM node as builder WORKDIR /ng-app COPY . . +RUN echo "Stage 1: Build" + RUN npm set progress=false \ && npm config set depth 0 \ && npm cache clean --force +RUN echo "RUN npm run install:submodules" +RUN npm run install:submodules + +RUN echo "RUN npm install && npm run build:prod" RUN npm install && npm run build:prod +RUN echo "Stage 2: Setup" # Stage 2: Setup FROM nginx:1.13-alpine diff --git a/angular.json b/angular.json index ef70d2ff81..ca0c6a133d 100644 --- a/angular.json +++ b/angular.json @@ -9,8 +9,11 @@ "projectType": "application", "architect": { "build": { - "builder": "@angular-devkit/build-angular:browser", + "builder": "@angular-builders/custom-webpack:browser", "options": { + "customWebpackConfig": { + "path": "./custom-webpack.config.js" + }, "aot": true, "outputPath": "dist", "index": "src/index.html", @@ -64,7 +67,7 @@ ], "optimization": true, "outputHashing": "all", - "sourceMap": true, + "sourceMap": false, "extractCss": true, "namedChunks": false, "aot": true, @@ -81,7 +84,7 @@ } }, "serve": { - "builder": "@angular-devkit/build-angular:dev-server", + "builder": "@angular-builders/custom-webpack:dev-server", "options": { "browserTarget": "ansyn:build" }, @@ -101,8 +104,11 @@ } }, "test": { - "builder": "@angular-devkit/build-angular:karma", + "builder": "@angular-builders/custom-webpack:karma", "options": { + "customWebpackConfig": { + "path": "./custom-webpack.config.js" + }, "main": "src/test.ts", "karmaConfig": "./karma.conf.js", "polyfills": "src/polyfills.ts", @@ -472,86 +478,86 @@ } } }, - "@ansyn/ol": { - "root": "src/app/@ansyn/ol", - "sourceRoot": "projects/ansyn/ol/src", + "@ansyn/imagery-ol": { + "root": "src/app/@ansyn/imagery-submodules/imagery-ol", + "sourceRoot": "src/app/@ansyn/imagery-submodules/imagery-ol/src", "projectType": "library", "prefix": "lib", "architect": { "build": { "builder": "@angular-devkit/build-ng-packagr:build", "options": { - "tsConfig": "src/app/@ansyn/ol/tsconfig.lib.json", - "project": "src/app/@ansyn/ol/ng-package.json" + "tsConfig": "src/app/@ansyn/imagery-submodules/imagery-ol/tsconfig.lib.json", + "project": "src/app/@ansyn/imagery-submodules/imagery-ol/ng-package.json" }, "configurations": { "production": { - "project": "src/app/@ansyn/ol/ng-package.json" - , "tsConfig": "src/app/@ansyn/ol/tsconfig.lib.prod.json" -} + "project": "src/app/@ansyn/imagery-submodules/imagery-ol/ng-package.json", + "tsConfig": "src/app/@ansyn/imagery-submodules/imagery-ol/tsconfig.lib.prod.json" + } } } } }, "@ansyn/imagery-cesium": { - "root": "src/app/@ansyn/imagery-cesium", - "sourceRoot": "projects/ansyn/imagery-cesium/src", + "root": "src/app/@ansyn/imagery-submodules/imagery-cesium", + "sourceRoot": "src/app/@ansyn/imagery-submodules/imagery-cesium/src", "projectType": "library", "prefix": "lib", "architect": { "build": { "builder": "@angular-devkit/build-ng-packagr:build", "options": { - "tsConfig": "src/app/@ansyn/imagery-cesium/tsconfig.lib.json", - "project": "src/app/@ansyn/imagery-cesium/ng-package.json" + "tsConfig": "src/app/@ansyn/imagery-submodules/imagery-cesium/tsconfig.lib.json", + "project": "src/app/@ansyn/imagery-submodules/imagery-cesium/ng-package.json" }, "configurations": { "production": { - "project": "src/app/@ansyn/imagery-cesium/ng-package.json" - , "tsConfig": "src/app/@ansyn/imagery-cesium/tsconfig.lib.prod.json" -} + "project": "src/app/@ansyn/imagery-submodules/imagery-cesium/ng-package.json", + "tsConfig": "src/app/@ansyn/imagery-submodules/imagery-cesium/tsconfig.lib.prod.json" + } } } } }, "@ansyn/imagery-video": { - "root": "src/app/@ansyn/imagery-video", - "sourceRoot": "projects/ansyn/imagery-video/src", + "root": "src/app/@ansyn/imagery-submodules/imagery-video", + "sourceRoot": "src/app/@ansyn/imagery-submodules/imagery-video/src", "projectType": "library", "prefix": "lib", "architect": { "build": { "builder": "@angular-devkit/build-ng-packagr:build", "options": { - "tsConfig": "src/app/@ansyn/imagery-video/tsconfig.lib.json", - "project": "src/app/@ansyn/imagery-video/ng-package.json" + "tsConfig": "src/app/@ansyn/imagery-submodules/imagery-video/tsconfig.lib.json", + "project": "src/app/@ansyn/imagery-submodules/imagery-video/ng-package.json" }, "configurations": { "production": { - "project": "src/app/@ansyn/imagery-video/ng-package.json" - , "tsConfig": "src/app/@ansyn/imagery-video/tsconfig.lib.prod.json" -} + "project": "src/app/@ansyn/imagery-submodules/imagery-video/ng-package.json", + "tsConfig": "src/app/@ansyn/imagery-submodules/imagery-video/tsconfig.lib.prod.json" + } } } } }, "@ansyn/imagery": { - "root": "src/app/@ansyn/imagery", - "sourceRoot": "src/app/@ansyn/imagery", + "root": "src/app/@ansyn/imagery-submodules/imagery", + "sourceRoot": "src/app/@ansyn/imagery-submodules/imagery/src", "projectType": "library", "prefix": "lib", "architect": { "build": { "builder": "@angular-devkit/build-ng-packagr:build", "options": { - "tsConfig": "src/app/@ansyn/imagery/tsconfig.lib.json", - "project": "src/app/@ansyn/imagery/ng-package.json" + "tsConfig": "src/app/@ansyn/imagery-submodules/imagery/tsconfig.lib.json", + "project": "src/app/@ansyn/imagery-submodules/imagery/ng-package.json" }, "configurations": { "production": { - "project": "src/app/@ansyn/imagery/ng-package.json" - , "tsConfig": "src/app/@ansyn/imagery/tsconfig.lib.prod.json" -} + "project": "src/app/@ansyn/imagery-submodules/imagery/ng-package.json", + "tsConfig": "src/app/@ansyn/imagery-submodules/imagery/tsconfig.lib.prod.json" + } } } } diff --git a/custom-webpack.config.js b/custom-webpack.config.js new file mode 100644 index 0000000000..d42bb216d3 --- /dev/null +++ b/custom-webpack.config.js @@ -0,0 +1,12 @@ +/* This file was added in order to overcome a bug with Cesium and webpack (CesiumGS/cesium#8673) - it enables custom webpack config. */ +// TODO - file should be removed in Cesium future versions. +module.exports = { + node: { + // Resolve node module use of fs + fs: "empty", + Buffer: false, + http: "empty", + https: "empty", + zlib: "empty" + } +}; diff --git a/package-lock.json b/package-lock.json index da08e0e0c8..a15a4483b8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4,32 +4,67 @@ "lockfileVersion": 1, "requires": true, "dependencies": { + "@angular-builders/custom-webpack": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/@angular-builders/custom-webpack/-/custom-webpack-9.1.0.tgz", + "integrity": "sha512-Dek6KxNUFBELKqNRO4Im5JIP0/rZF4HmvgA8X+RyqOd9cyDxk16A441WlqTqy3UKX8lcbf6C9RcR5D2dI1ZATQ==", + "requires": { + "@angular-devkit/architect": ">=0.900.0 < 0.1000.0", + "@angular-devkit/build-angular": ">=0.900.0 < 0.1000.0", + "@angular-devkit/core": "^9.0.0", + "lodash": "^4.17.10", + "ts-node": "^8.5.2", + "webpack-merge": "^4.2.1" + }, + "dependencies": { + "ts-node": { + "version": "8.10.2", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-8.10.2.tgz", + "integrity": "sha512-ISJJGgkIpDdBhWVu3jufsWpK3Rzo7bdiIXJjQc0ynKxVOVcg2oIrf2H2cejminGrptVc6q6/uynAHNCuWGbpVA==", + "requires": { + "arg": "^4.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "source-map-support": "^0.5.17", + "yn": "3.1.1" + } + } + } + }, "@angular-devkit/architect": { - "version": "0.901.0", - "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.901.0.tgz", - "integrity": "sha512-SlqEBkPrT40zMCy5344AsUqC76pEPCaGPaAkCIvadaz2dC9vNMzQrvubCPJHViD/TumkSX1kYmLS3iYASVM9GQ==", - "dev": true, + "version": "0.901.8", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.901.8.tgz", + "integrity": "sha512-tK9ZQlubH6n+q+c2J9Wvfcxg3RFuRiTfJriNoodo6GHvtF2KLdPY67w3Gen0Sp172A5Q8Y927NseddNI8RZ/0A==", "requires": { - "@angular-devkit/core": "9.1.0", + "@angular-devkit/core": "9.1.8", "rxjs": "6.5.4" + }, + "dependencies": { + "rxjs": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", + "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", + "requires": { + "tslib": "^1.9.0" + } + } } }, "@angular-devkit/build-angular": { - "version": "0.901.0", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-0.901.0.tgz", - "integrity": "sha512-ftJVNlKvIomqRfr5jFVraPqlLSUJu8YyVbFv/aCsvhNpuZGkYpTOMoJDwyywdslSTH608BIoU63IAnIz9PwUdw==", - "dev": true, - "requires": { - "@angular-devkit/architect": "0.901.0", - "@angular-devkit/build-optimizer": "0.901.0", - "@angular-devkit/build-webpack": "0.901.0", - "@angular-devkit/core": "9.1.0", + "version": "0.901.8", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-0.901.8.tgz", + "integrity": "sha512-W2RTjtPPJRbke6K7Qt9eZOPRGfFBFsYzskxsuxXwkW2RPopj6k1wUWh9Be8CtAMAUlhyPvlzviOtv3F7leYr3w==", + "requires": { + "@angular-devkit/architect": "0.901.8", + "@angular-devkit/build-optimizer": "0.901.8", + "@angular-devkit/build-webpack": "0.901.8", + "@angular-devkit/core": "9.1.8", "@babel/core": "7.9.0", "@babel/generator": "7.9.3", "@babel/preset-env": "7.9.0", "@babel/template": "7.8.6", "@jsdevtools/coverage-istanbul-loader": "3.0.3", - "@ngtools/webpack": "9.1.0", + "@ngtools/webpack": "9.1.8", "ajv": "6.12.0", "autoprefixer": "9.7.4", "babel-loader": "8.0.6", @@ -37,15 +72,16 @@ "cacache": "15.0.0", "caniuse-lite": "^1.0.30001032", "circular-dependency-plugin": "5.2.0", - "copy-webpack-plugin": "5.1.1", + "copy-webpack-plugin": "6.0.2", "core-js": "3.6.4", + "css-loader": "3.5.1", "cssnano": "4.1.10", "file-loader": "6.0.0", "find-cache-dir": "3.3.1", "glob": "7.1.6", "jest-worker": "25.1.0", "karma-source-map-support": "1.4.0", - "less": "3.11.1", + "less": "3.11.3", "less-loader": "5.0.0", "license-webpack-plugin": "2.1.4", "loader-utils": "2.0.0", @@ -66,218 +102,106 @@ "semver": "7.1.3", "source-map": "0.7.3", "source-map-loader": "0.2.4", - "source-map-support": "0.5.16", "speed-measure-webpack-plugin": "1.3.1", "style-loader": "1.1.3", "stylus": "0.54.7", "stylus-loader": "3.0.2", - "terser": "4.6.7", + "terser": "4.6.10", "terser-webpack-plugin": "2.3.5", "tree-kill": "1.2.2", "webpack": "4.42.0", "webpack-dev-middleware": "3.7.2", - "webpack-dev-server": "3.10.3", + "webpack-dev-server": "3.11.0", "webpack-merge": "4.2.2", "webpack-sources": "1.4.3", "webpack-subresource-integrity": "1.4.0", - "worker-plugin": "4.0.2" + "worker-plugin": "4.0.3" }, "dependencies": { - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "dev": true, - "requires": { - "@babel/highlight": "^7.8.3" - } - }, - "@babel/highlight": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz", - "integrity": "sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.9.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.9.4.tgz", - "integrity": "sha512-bC49otXX6N0/VYhgOMh4gnP26E9xnDZK3TmbNpxYzzz9BQLBosQwfyOe9/cXUU3txYhTzLCbcqd5c8y/OmCjHA==", - "dev": true - }, - "@babel/template": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz", - "integrity": "sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6" - } - }, - "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - }, - "clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", - "dev": true - }, "core-js": { "version": "3.6.4", "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.6.4.tgz", - "integrity": "sha512-4paDGScNgZP2IXXilaffL9X7968RuvwlkK3xWtZRVqgd8SYNiVKRJvkFd1aqqEuPfN7E68ZHEp9hDj6lHj4Hyw==", - "dev": true - }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "less": { - "version": "3.11.1", - "resolved": "https://registry.npmjs.org/less/-/less-3.11.1.tgz", - "integrity": "sha512-tlWX341RECuTOvoDIvtFqXsKj072hm3+9ymRBe76/mD6O5ZZecnlAOVDlWAleF2+aohFrxNidXhv2773f6kY7g==", - "dev": true, - "requires": { - "clone": "^2.1.2", - "errno": "^0.1.1", - "graceful-fs": "^4.1.2", - "image-size": "~0.5.0", - "mime": "^1.4.1", - "mkdirp": "^0.5.0", - "promise": "^7.1.1", - "request": "^2.83.0", - "source-map": "~0.6.0", - "tslib": "^1.10.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "optional": true - } - } - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } + "integrity": "sha512-4paDGScNgZP2IXXilaffL9X7968RuvwlkK3xWtZRVqgd8SYNiVKRJvkFd1aqqEuPfN7E68ZHEp9hDj6lHj4Hyw==" }, - "semver": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", - "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==", - "dev": true - }, - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true - }, - "source-map-support": { - "version": "0.5.16", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.16.tgz", - "integrity": "sha512-efyLRJDr68D9hBBNIPWFjhpFzURh+KJykQwvMyW5UiZzYwoF6l4YMMDIJJEyFWxWCqfyxLzz6tSfUFR+kXXsVQ==", - "dev": true, + "rxjs": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", + "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } + "tslib": "^1.9.0" } } } }, "@angular-devkit/build-ng-packagr": { - "version": "0.901.0", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-ng-packagr/-/build-ng-packagr-0.901.0.tgz", - "integrity": "sha512-cUQKK7+bYi3fOmq41cfr1ZFQwqAUUm0Yz7DgH34Ek7D98XudNOxJ63Xv4manId528WhqyGDP5/2tut7QNV3VJA==", + "version": "0.901.8", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-ng-packagr/-/build-ng-packagr-0.901.8.tgz", + "integrity": "sha512-7a419fmAq+uYunVEBm79MncqOvmprH+6QmGXkORYPAKZ+p5wWdu84AM1aKK/l0UaZ335ErxexpEVnbvSVtVc1Q==", "dev": true, "requires": { - "@angular-devkit/architect": "0.901.0", + "@angular-devkit/architect": "0.901.8", "rxjs": "6.5.4" + }, + "dependencies": { + "rxjs": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", + "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + } } }, "@angular-devkit/build-optimizer": { - "version": "0.901.0", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-optimizer/-/build-optimizer-0.901.0.tgz", - "integrity": "sha512-Y9sz8uf2zjilhPUVYb0K9Mio6c1d5c+csuDc15CCKzELXJwyyDxilIFgn6Eu+edM0HNQGzbIwkjy4DkR9mtuTQ==", - "dev": true, + "version": "0.901.8", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-optimizer/-/build-optimizer-0.901.8.tgz", + "integrity": "sha512-k9DynuWKMsJk5xg+LthdsqmOlGVMVP/TEu2odiVty9gnTVlIjs1bUzs+HNAF/w11juIBcVKa690K+FkSCalo9w==", "requires": { "loader-utils": "2.0.0", "source-map": "0.7.3", "tslib": "1.11.1", - "typescript": "3.8.3", + "typescript": "3.6.5", "webpack-sources": "1.4.3" }, "dependencies": { - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true - }, "tslib": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.1.tgz", - "integrity": "sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==", - "dev": true + "integrity": "sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==" + }, + "typescript": { + "version": "3.6.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.6.5.tgz", + "integrity": "sha512-BEjlc0Z06ORZKbtcxGrIvvwYs5hAnuo6TKdNFL55frVDlB+na3z5bsLhFaIxmT+dPWgBIjMo6aNnTOgHHmHgiQ==" } } }, "@angular-devkit/build-webpack": { - "version": "0.901.0", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.901.0.tgz", - "integrity": "sha512-Oze0VzIvHnoW12C80fiNH4HBu/GWmhJPXdNA7nRkU/tBQlIKnfngf8rQ0QbgecN2qdEXQpZJsP/XclTi3zugsg==", - "dev": true, + "version": "0.901.8", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.901.8.tgz", + "integrity": "sha512-OyLfPI0yo1Qg4I1QP8ZxEYVxrf3IDjGfpxlKXqSChpEy5m/uZmBIRDZ/n/G3+32xFc6MWEdU4EHfRrfn17ae/w==", "requires": { - "@angular-devkit/architect": "0.901.0", - "@angular-devkit/core": "9.1.0", + "@angular-devkit/architect": "0.901.8", + "@angular-devkit/core": "9.1.8", "rxjs": "6.5.4" + }, + "dependencies": { + "rxjs": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", + "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", + "requires": { + "tslib": "^1.9.0" + } + } } }, "@angular-devkit/core": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-9.1.0.tgz", - "integrity": "sha512-vHTsrB4JaVUQ95FRnKrgo79Y3F6FokImrZdrmwkQmwAThpjXeXmpUEKZS+ZSTFRgesjiIysVGOFijARP4BQ7Bg==", - "dev": true, + "version": "9.1.8", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-9.1.8.tgz", + "integrity": "sha512-4k1pZwje2oh5c/ULg7pnCBzTstx3l3uF7O5tQq/KXomDDsam97IhLm6cKUqQpaoyC1NUsBV6xJARJ0PyUP5TPQ==", "requires": { "ajv": "6.12.0", "fast-json-stable-stringify": "2.1.0", @@ -286,49 +210,47 @@ "source-map": "0.7.3" }, "dependencies": { - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "magic-string": { - "version": "0.25.7", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", - "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==", - "dev": true, + "rxjs": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", + "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", "requires": { - "sourcemap-codec": "^1.4.4" + "tslib": "^1.9.0" } - }, - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true } } }, "@angular-devkit/schematics": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-9.1.0.tgz", - "integrity": "sha512-cb9PSvskMwWlL54fPfCcpJoyNDWAX6Wo7CzL5qpIB2cJCPLAuyfRUYYrkO77YUST+n2HvypHz0cZ5SNGMfaaBQ==", + "version": "9.1.8", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-9.1.8.tgz", + "integrity": "sha512-/8L5J4X6SkcFMRmrSQHvJWOPilrMWTNlv1lD+1z06D3xGJEktVxXM3gCUXhDrbMvpoi+lYtR2Fuia0E6zvyjCQ==", "dev": true, "requires": { - "@angular-devkit/core": "9.1.0", + "@angular-devkit/core": "9.1.8", "ora": "4.0.3", "rxjs": "6.5.4" + }, + "dependencies": { + "rxjs": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", + "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + } } }, "@angular/animations": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-9.1.0.tgz", - "integrity": "sha512-o7X3HM+eocoryw3VrDUtG6Wci2KwtzyBFo3KBJXjQ16X6fwdkjTG+hLb7pp2CBFBEJW4tPYEy7cSBmEfMRTqag==" + "version": "9.1.11", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-9.1.11.tgz", + "integrity": "sha512-VKAExUnEJfo1PDQKagpx2pn+QMZCsPLRiADzTdl4U0VPylK3ALbn4ZNY9UbdwyE2plitz++LkH7sEGGfh+PNrQ==" }, "@angular/cdk": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-9.2.0.tgz", - "integrity": "sha512-jeeznvNDpR9POuxzz8Y0zFvMynG9HCJo3ZPTqOjlOq8Lj8876+rLsHDvKEMeLdwlkdi1EweYJW1CLQzI+TwqDA==", + "version": "9.2.4", + "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-9.2.4.tgz", + "integrity": "sha512-iw2+qHMXHYVC6K/fttHeNHIieSKiTEodVutZoOEcBu9rmRTGbLB26V/CRsfIRmA1RBk+uFYWc6UQZnMC3RdnJQ==", "requires": { "parse5": "^5.0.0" }, @@ -342,16 +264,16 @@ } }, "@angular/cli": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-9.1.0.tgz", - "integrity": "sha512-ofum4gPE/W3fKyzuJrpdHeOS0ZL8x0eYCgsrMyUoFodSpb5LWPqeW+56NgDTpIeny+Trx3pM9dr9QTUVTJ0vYg==", + "version": "9.1.8", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-9.1.8.tgz", + "integrity": "sha512-yfF7glPo3Xm7fTJVln1bFZVXqHu8wkIGZRZGb6lsJa+QH4ePxHgn+dNYXho0MYpGUnhY7xOBW4MJzjS7E+1y5Q==", "dev": true, "requires": { - "@angular-devkit/architect": "0.901.0", - "@angular-devkit/core": "9.1.0", - "@angular-devkit/schematics": "9.1.0", - "@schematics/angular": "9.1.0", - "@schematics/update": "0.901.0", + "@angular-devkit/architect": "0.901.8", + "@angular-devkit/core": "9.1.8", + "@angular-devkit/schematics": "9.1.8", + "@schematics/angular": "9.1.8", + "@schematics/update": "0.901.8", "@yarnpkg/lockfile": "1.1.0", "ansi-colors": "4.1.1", "debug": "4.1.1", @@ -360,7 +282,7 @@ "npm-package-arg": "8.0.1", "npm-pick-manifest": "6.0.0", "open": "7.0.3", - "pacote": "11.1.4", + "pacote": "9.5.12", "read-package-tree": "5.3.1", "rimraf": "3.0.2", "semver": "7.1.3", @@ -375,50 +297,6 @@ "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", "dev": true }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "semver": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", - "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==", - "dev": true - }, "uuid": { "version": "7.0.2", "resolved": "https://registry.npmjs.org/uuid/-/uuid-7.0.2.tgz", @@ -428,19 +306,19 @@ } }, "@angular/common": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-9.1.0.tgz", - "integrity": "sha512-6JPLNtMhI03bGTVQJeSwc+dTjV6DtP7M/BAyzIV0InZP1D6XsOh2QahLFIaaN2sSxYA2ClKuwfX1v+rx9AbXQA==" + "version": "9.1.11", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-9.1.11.tgz", + "integrity": "sha512-Vh5lF7zWwDK9RedmYXUc8vUXyrecR3j1mAWlTlnmcHYxxFThPzN/dr0slQcPi6nyJn0EmyRKUGvAoZx4rIb7wg==" }, "@angular/compiler": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-9.1.0.tgz", - "integrity": "sha512-QHw/JSeTXHiJQ2Ih0EtU7FGsYcOr+0hwZhqwSW3EEn8TtUgA3DS5lXeiDV66f+3DdvNZFPmgiZIvun3ypxn1HA==" + "version": "9.1.11", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-9.1.11.tgz", + "integrity": "sha512-MbVheCG0U8gt6xtiipau20N26mD2sXjLChVmRKgO6rbDruxboNMZfEd94q9NP9JRaUsVnjXvY7GMDldoymdXig==" }, "@angular/compiler-cli": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-9.1.0.tgz", - "integrity": "sha512-xZ8mVPmPporSTtvNA+cbFJQymLzuWfMX6HDDgztZ2eZ5WcQJYloRN4CcYMEzDhCxfV1Zw9Tfc2l14jZD8osi6g==", + "version": "9.1.11", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-9.1.11.tgz", + "integrity": "sha512-9qIxbtpRXOQnRm6inxCa5HuH87MSuMzuceD0YBVzl8v+vLtewon9KXYMmF4kTBhWa/LEa8FrajljLh0azf3VLg==", "dev": true, "requires": { "canonical-path": "1.0.0", @@ -473,53 +351,6 @@ "color-convert": "^2.0.1" } }, - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "binary-extensions": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.0.0.tgz", - "integrity": "sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow==", - "dev": true - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "chokidar": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.1.tgz", - "integrity": "sha512-4QYCEWOcK3OJrxwvyyAOxFuhpvOVCYkr33LPfFNBjAD/w3sEzWsp2BUOkI4l9bHvWioAd0rc6NlHUOEaWkTeqg==", - "dev": true, - "requires": { - "anymatch": "~3.1.1", - "braces": "~3.0.2", - "fsevents": "~2.1.2", - "glob-parent": "~5.1.0", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.3.0" - } - }, "cliui": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", @@ -546,14 +377,11 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true }, "find-up": { "version": "4.1.0", @@ -565,69 +393,12 @@ "path-exists": "^4.0.0" } }, - "fs-extra": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.2.tgz", - "integrity": "sha1-+RcExT0bRh+JNFKwwwfZmXZHq2s=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fsevents": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", - "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", - "dev": true, - "optional": true - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "requires": { - "binary-extensions": "^2.0.0" - } - }, "is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, - "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, "locate-path": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", @@ -637,21 +408,15 @@ "p-locate": "^4.1.0" } }, - "magic-string": { - "version": "0.25.7", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", - "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==", + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "requires": { - "sourcemap-codec": "^1.4.4" + "p-try": "^2.0.0" } }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, "p-locate": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", @@ -661,27 +426,18 @@ "p-limit": "^2.2.0" } }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, "path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true }, - "readdirp": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.3.0.tgz", - "integrity": "sha512-zz0pAkSPOXXm1viEwygWIPSPkcBYjW1xU5j/JBh5t9bGCJwa6f9+BJa6VaB2g+b55yVrmXzqkyLf4xaWYM0IkQ==", - "dev": true, - "requires": { - "picomatch": "^2.0.7" - } - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, "semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", @@ -714,21 +470,6 @@ "ansi-regex": "^5.0.0" } }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, "wrap-ansi": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", @@ -760,9 +501,9 @@ } }, "yargs-parser": { - "version": "18.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.2.tgz", - "integrity": "sha512-hlIPNR3IzC1YuL1c2UwwDKpXlNFBqD1Fswwh1khz5+d8Cq/8yc/Mn0i+rQXduu8hcrFKvO7Eryk+09NecTQAAQ==", + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", "dev": true, "requires": { "camelcase": "^5.0.0", @@ -772,45 +513,45 @@ } }, "@angular/core": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-9.1.0.tgz", - "integrity": "sha512-RVlyegdIAij0P1wLY5ObIdsBAzvmHkHfElnmfiNKhaDftP6U/3zRtaKDu0bq0jvn1WCQ8zXxFQ8AWyKZwyFS+w==" + "version": "9.1.11", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-9.1.11.tgz", + "integrity": "sha512-KAlEedBo761O1aeoTJVziOSHi8Fttk9ipvbDZXYT/o0W/KdVwubxP34g9t5aD8LCcF8+L0z4VLw++HjdJAUpwg==" }, "@angular/elements": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/@angular/elements/-/elements-9.1.0.tgz", - "integrity": "sha512-jvMkhKP+8WOn6LWsEzCWaWVAB5HOKq9Hi6VDe6Z2DKR738ZFitG6wYh/w43EQOA9PnGh4f/HjEICS75qp8HQOg==" + "version": "9.1.11", + "resolved": "https://registry.npmjs.org/@angular/elements/-/elements-9.1.11.tgz", + "integrity": "sha512-Tkldm075Nnbu1d52NgkaPP30DOMdRdtuPu78eaCvaxqDEK8WV58KrdQHwebP6+7pf+/6sqgMsveoIIVlYOBNZw==" }, "@angular/forms": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-9.1.0.tgz", - "integrity": "sha512-5GC8HQlPChPV+168zLlm4yj4syA6N9ChSKV0tmzj1zIfMcub1UAOaB9IYaXRHQsjPFh9OuQXwmkzScyAfhEVjA==" + "version": "9.1.11", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-9.1.11.tgz", + "integrity": "sha512-t4WHrh6ot1r8zdV+3fJz7g9rCok77c9CiIevhH2dR/idxD+HtFR0wqmcBQzsn+rNVB0f0TiSHDrj+TeELIFyWw==" }, "@angular/language-service": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-9.1.0.tgz", - "integrity": "sha512-2f8ECoXrj40oS1rtIfi+F8T4WPzundcZDs8WMFNBuWYbk14v1S9sTgMEmZyePHGkPjt6IfYiLJKJCvVgrt1nxQ==", + "version": "9.1.11", + "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-9.1.11.tgz", + "integrity": "sha512-jfm4etbqldj6MTwECwyoAs7tXEAR8K/8P8dBZnsELhY+V8oFidTJI3NY52PB3Ym7leSPorYdOAeUMMuQfPaVxg==", "dev": true }, "@angular/material": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/@angular/material/-/material-9.2.0.tgz", - "integrity": "sha512-KKzEIVh6/m56m+Ao8p4PK0SyEr0574l3VP2swj1qPag3u+FYgemmXCGTaChrKdDsez+zeTCPXImBGXzE6NQ80Q==" + "version": "9.2.4", + "resolved": "https://registry.npmjs.org/@angular/material/-/material-9.2.4.tgz", + "integrity": "sha512-LkoTXE6B0slvMhvfZDdPWaz4yaYLkaAp5VSPunI9pxGsPxzqEV9e210wC1/sjG/76Nk8Ep7/2z9XKac8Q9bMwA==" }, "@angular/platform-browser": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-9.1.0.tgz", - "integrity": "sha512-OsS/blUjl8ranmDaRADjFAmvnlmwbT6WNU7dVov7FhV0rqesbwaOJ5bR0LSYHYpej7Jaa6oYk0v0XWkaH9LTFg==" + "version": "9.1.11", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-9.1.11.tgz", + "integrity": "sha512-KDxoiFhW4UD+EqchcKpQVSLwg9Rd3JbWytZLchFV6nH8BFnshfJtw2tyPT8bMhFVG9n9zSR4QSGaozWgoDs9mw==" }, "@angular/platform-browser-dynamic": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-9.1.0.tgz", - "integrity": "sha512-sMtz/poQ3TYaWZzWjrn9apKUZ/WKql2MYCWbpax7pql3GgC9OoTslc7ZEe7/d3ynfFE/CQqWBBOuWGD71Z0LMQ==" + "version": "9.1.11", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-9.1.11.tgz", + "integrity": "sha512-Qw3rfVFF0Wtu+UwraqKPCgTA3uoNPGf4vKSfuCuXTrG0p7j+3mCP59aUv5gGH7GV1UQ++jZRx5pbWF43zrC8Hw==" }, "@angular/router": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-9.1.0.tgz", - "integrity": "sha512-cExO1nPnoPFiUJWZ28hTHozPLFoCmqr3xqcM57We0hhKE0esdrO+gRWKRH0EJERukLbU8coPKVhA8daGUpASiQ==" + "version": "9.1.11", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-9.1.11.tgz", + "integrity": "sha512-D6CCDeSK/F6dWSB/a1g/zB072xG5LadLSV8afQ57oX1KHePx21LcoRG4tUtFMMHh/jZXRc9pMQIR1/9FrrXF3Q==" }, "@ansyn/event-drops": { "version": "0.2.8-1.9", @@ -826,38 +567,42 @@ } }, "@auth0/angular-jwt": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@auth0/angular-jwt/-/angular-jwt-4.0.0.tgz", - "integrity": "sha512-CHvk1zJ9jpQupl0f5y7EmTvYAwugyFvC4ztLsZKr7ZC7anNVaDd1+pDFJYS+ZEU9jLWzE74+AfVKfigImADJuw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@auth0/angular-jwt/-/angular-jwt-4.2.0.tgz", + "integrity": "sha512-kxHMztP0scAaKSfWRQ4y3ba5ggcGh2YVapC1UnimyE1I1Vs68gdSlV00bnpAK4aCaNut9IqtdGurgbljHt24Lw==", "requires": { "url": "^0.11.0" } }, "@babel/code-frame": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", - "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.1.tgz", + "integrity": "sha512-IGhtTmpjGbYzcEDOw7DcQtbQSXcG9ftmAXtWTu9V936vDye4xjjekktFAtgZsWpzTj/X01jocB46mTywm/4SZw==", "requires": { - "@babel/highlight": "^7.0.0" + "@babel/highlight": "^7.10.1" } }, "@babel/compat-data": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.9.0.tgz", - "integrity": "sha512-zeFQrr+284Ekvd9e7KAX954LkapWiOmQtsfHirhxqfdlX6MEC32iRE+pqUGlYIBchdevaCwvzxWGSy/YBNI85g==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.10.1.tgz", + "integrity": "sha512-CHvCj7So7iCkGKPRFUfryXIkU2gSBw7VSZFYLsqVhrS47269VK2Hfi9S/YcublPMW8k1u2bQBlbDruoQEm4fgw==", "requires": { - "browserslist": "^4.9.1", + "browserslist": "^4.12.0", "invariant": "^2.2.4", "semver": "^5.5.0" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + } } }, "@babel/core": { "version": "7.9.0", "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.9.0.tgz", "integrity": "sha512-kWc7L0fw1xwvI0zi8OKVBuxRVefwGOrKSQMvrQ3dW+bIIavBY3/NpXmpjMy7bQnLgwgzWQZ8TlM57YHpHNHz4w==", - "dev": true, "requires": { "@babel/code-frame": "^7.8.3", "@babel/generator": "^7.9.0", @@ -877,77 +622,15 @@ "source-map": "^0.5.0" }, "dependencies": { - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "dev": true, - "requires": { - "@babel/highlight": "^7.8.3" - } - }, - "@babel/highlight": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz", - "integrity": "sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.9.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.9.4.tgz", - "integrity": "sha512-bC49otXX6N0/VYhgOMh4gnP26E9xnDZK3TmbNpxYzzz9BQLBosQwfyOe9/cXUU3txYhTzLCbcqd5c8y/OmCjHA==", - "dev": true - }, - "@babel/template": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz", - "integrity": "sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6" - } - }, - "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - }, - "convert-source-map": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", - "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.1" - } - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" } } }, @@ -955,7 +638,6 @@ "version": "7.9.3", "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.9.3.tgz", "integrity": "sha512-RpxM252EYsz9qLUIq6F7YJyK1sv0wWDBFuztfDGWaQKzHjqDHysxSiRUpA/X9jmfqo+WzkAVKFaUily5h+gDCQ==", - "dev": true, "requires": { "@babel/types": "^7.9.0", "jsesc": "^2.5.1", @@ -963,820 +645,395 @@ "source-map": "^0.5.0" }, "dependencies": { - "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" } } }, "@babel/helper-annotate-as-pure": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.8.3.tgz", - "integrity": "sha512-6o+mJrZBxOoEX77Ezv9zwW7WV8DdluouRKNY/IR5u/YTMuKHgugHOzYWlYvYLpLA9nPsQCAAASpCIbjI9Mv+Uw==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.10.1.tgz", + "integrity": "sha512-ewp3rvJEwLaHgyWGe4wQssC2vjks3E80WiUe2BpMb0KhreTjMROCbxXcEovTrbeGVdQct5VjQfrv9EgC+xMzCw==", "requires": { - "@babel/types": "^7.8.3" - }, - "dependencies": { - "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - } + "@babel/types": "^7.10.1" } }, "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.8.3.tgz", - "integrity": "sha512-5eFOm2SyFPK4Rh3XMMRDjN7lBH0orh3ss0g3rTYZnBQ+r6YPj7lgDyCvPphynHvUrobJmeMignBr6Acw9mAPlw==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.10.1.tgz", + "integrity": "sha512-cQpVq48EkYxUU0xozpGCLla3wlkdRRqLWu1ksFMXA9CM5KQmyyRpSEsYXbao7JUkOw/tAaYKCaYyZq6HOFYtyw==", "requires": { - "@babel/helper-explode-assignable-expression": "^7.8.3", - "@babel/types": "^7.8.3" - }, - "dependencies": { - "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - } + "@babel/helper-explode-assignable-expression": "^7.10.1", + "@babel/types": "^7.10.1" } }, "@babel/helper-compilation-targets": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.8.7.tgz", - "integrity": "sha512-4mWm8DCK2LugIS+p1yArqvG1Pf162upsIsjE7cNBjez+NjliQpVhj20obE520nao0o14DaTnFJv+Fw5a0JpoUw==", - "dev": true, + "version": "7.10.2", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.10.2.tgz", + "integrity": "sha512-hYgOhF4To2UTB4LTaZepN/4Pl9LD4gfbJx8A34mqoluT8TLbof1mhUlYuNWTEebONa8+UlCC4X0TEXu7AOUyGA==", "requires": { - "@babel/compat-data": "^7.8.6", - "browserslist": "^4.9.1", + "@babel/compat-data": "^7.10.1", + "browserslist": "^4.12.0", "invariant": "^2.2.4", "levenary": "^1.1.1", "semver": "^5.5.0" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + } } }, "@babel/helper-create-regexp-features-plugin": { - "version": "7.8.8", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.8.8.tgz", - "integrity": "sha512-LYVPdwkrQEiX9+1R29Ld/wTrmQu1SSKYnuOk3g0CkcZMA1p0gsNxJFj/3gBdaJ7Cg0Fnek5z0DsMULePP7Lrqg==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.10.1.tgz", + "integrity": "sha512-Rx4rHS0pVuJn5pJOqaqcZR4XSgeF9G/pO/79t+4r7380tXFJdzImFnxMU19f83wjSrmKHq6myrM10pFHTGzkUA==", "requires": { - "@babel/helper-annotate-as-pure": "^7.8.3", - "@babel/helper-regex": "^7.8.3", + "@babel/helper-annotate-as-pure": "^7.10.1", + "@babel/helper-regex": "^7.10.1", "regexpu-core": "^4.7.0" } }, "@babel/helper-define-map": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.8.3.tgz", - "integrity": "sha512-PoeBYtxoZGtct3md6xZOCWPcKuMuk3IHhgxsRRNtnNShebf4C8YonTSblsK4tvDbm+eJAw2HAPOfCr+Q/YRG/g==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.10.1.tgz", + "integrity": "sha512-+5odWpX+OnvkD0Zmq7panrMuAGQBu6aPUgvMzuMGo4R+jUOvealEj2hiqI6WhxgKrTpFoFj0+VdsuA8KDxHBDg==", "requires": { - "@babel/helper-function-name": "^7.8.3", - "@babel/types": "^7.8.3", + "@babel/helper-function-name": "^7.10.1", + "@babel/types": "^7.10.1", "lodash": "^4.17.13" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "dev": true, - "requires": { - "@babel/highlight": "^7.8.3" - } - }, - "@babel/helper-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz", - "integrity": "sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", - "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/highlight": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz", - "integrity": "sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.9.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.9.4.tgz", - "integrity": "sha512-bC49otXX6N0/VYhgOMh4gnP26E9xnDZK3TmbNpxYzzz9BQLBosQwfyOe9/cXUU3txYhTzLCbcqd5c8y/OmCjHA==", - "dev": true - }, - "@babel/template": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz", - "integrity": "sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6" - } - }, - "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - } } }, "@babel/helper-explode-assignable-expression": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.8.3.tgz", - "integrity": "sha512-N+8eW86/Kj147bO9G2uclsg5pwfs/fqqY5rwgIL7eTBklgXjcOJ3btzS5iM6AitJcftnY7pm2lGsrJVYLGjzIw==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.10.1.tgz", + "integrity": "sha512-vcUJ3cDjLjvkKzt6rHrl767FeE7pMEYfPanq5L16GRtrXIoznc0HykNW2aEYkcnP76P0isoqJ34dDMFZwzEpJg==", "requires": { - "@babel/traverse": "^7.8.3", - "@babel/types": "^7.8.3" + "@babel/traverse": "^7.10.1", + "@babel/types": "^7.10.1" + } + }, + "@babel/helper-function-name": { + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.10.1.tgz", + "integrity": "sha512-fcpumwhs3YyZ/ttd5Rz0xn0TpIwVkN7X0V38B9TWNfVF42KEkhkAAuPCQ3oXmtTRtiPJrmZ0TrfS0GKF0eMaRQ==", + "requires": { + "@babel/helper-get-function-arity": "^7.10.1", + "@babel/template": "^7.10.1", + "@babel/types": "^7.10.1" }, "dependencies": { - "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", - "dev": true, + "@babel/template": { + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.1.tgz", + "integrity": "sha512-OQDg6SqvFSsc9A0ej6SKINWrpJiNonRIniYondK2ViKhB06i3c0s+76XUft71iqBEe9S1OKsHwPAjfHnuvnCig==", "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" + "@babel/code-frame": "^7.10.1", + "@babel/parser": "^7.10.1", + "@babel/types": "^7.10.1" } } } }, - "@babel/helper-function-name": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", - "integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.0.0", - "@babel/template": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, "@babel/helper-get-function-arity": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz", - "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.1.tgz", + "integrity": "sha512-F5qdXkYGOQUb0hpRaPoetF9AnsXknKjWMZ+wmsIRsp5ge5sFh4c3h1eH2pRTTuy9KKAA2+TTYomGXAtEL2fQEw==", "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "^7.10.1" } }, "@babel/helper-hoist-variables": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.8.3.tgz", - "integrity": "sha512-ky1JLOjcDUtSc+xkt0xhYff7Z6ILTAHKmZLHPxAhOP0Nd77O+3nCsd6uSVYur6nJnCI029CrNbYlc0LoPfAPQg==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.10.1.tgz", + "integrity": "sha512-vLm5srkU8rI6X3+aQ1rQJyfjvCBLXP8cAGeuw04zeAM2ItKb1e7pmVmLyHb4sDaAYnLL13RHOZPLEtcGZ5xvjg==", "requires": { - "@babel/types": "^7.8.3" - }, - "dependencies": { - "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - } + "@babel/types": "^7.10.1" } }, "@babel/helper-member-expression-to-functions": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.8.3.tgz", - "integrity": "sha512-fO4Egq88utkQFjbPrSHGmGLFqmrshs11d46WI+WZDESt7Wu7wN2G2Iu+NMMZJFDOVRHAMIkB5SNh30NtwCA7RA==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.10.1.tgz", + "integrity": "sha512-u7XLXeM2n50gb6PWJ9hoO5oO7JFPaZtrh35t8RqKLT1jFKj9IWeD1zrcrYp1q1qiZTdEarfDWfTIP8nGsu0h5g==", "requires": { - "@babel/types": "^7.8.3" - }, - "dependencies": { - "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - } + "@babel/types": "^7.10.1" } }, "@babel/helper-module-imports": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.8.3.tgz", - "integrity": "sha512-R0Bx3jippsbAEtzkpZ/6FIiuzOURPcMjHp+Z6xPe6DtApDJx+w7UYyOLanZqO8+wKR9G10s/FmHXvxaMd9s6Kg==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.10.1.tgz", + "integrity": "sha512-SFxgwYmZ3HZPyZwJRiVNLRHWuW2OgE5k2nrVs6D9Iv4PPnXVffuEHy83Sfx/l4SqF+5kyJXjAyUmrG7tNm+qVg==", "requires": { - "@babel/types": "^7.8.3" - }, - "dependencies": { - "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - } + "@babel/types": "^7.10.1" } }, "@babel/helper-module-transforms": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.9.0.tgz", - "integrity": "sha512-0FvKyu0gpPfIQ8EkxlrAydOWROdHpBmiCiRwLkUiBGhCUPRRbVD2/tm3sFr/c/GWFrQ/ffutGUAnx7V0FzT2wA==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.8.3", - "@babel/helper-replace-supers": "^7.8.6", - "@babel/helper-simple-access": "^7.8.3", - "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/template": "^7.8.6", - "@babel/types": "^7.9.0", + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.10.1.tgz", + "integrity": "sha512-RLHRCAzyJe7Q7sF4oy2cB+kRnU4wDZY/H2xJFGof+M+SJEGhZsb+GFj5j1AD8NiSaVBJ+Pf0/WObiXu/zxWpFg==", + "requires": { + "@babel/helper-module-imports": "^7.10.1", + "@babel/helper-replace-supers": "^7.10.1", + "@babel/helper-simple-access": "^7.10.1", + "@babel/helper-split-export-declaration": "^7.10.1", + "@babel/template": "^7.10.1", + "@babel/types": "^7.10.1", "lodash": "^4.17.13" }, "dependencies": { - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "dev": true, - "requires": { - "@babel/highlight": "^7.8.3" - } - }, - "@babel/highlight": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz", - "integrity": "sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.9.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.9.4.tgz", - "integrity": "sha512-bC49otXX6N0/VYhgOMh4gnP26E9xnDZK3TmbNpxYzzz9BQLBosQwfyOe9/cXUU3txYhTzLCbcqd5c8y/OmCjHA==", - "dev": true - }, "@babel/template": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz", - "integrity": "sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6" - } - }, - "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.1.tgz", + "integrity": "sha512-OQDg6SqvFSsc9A0ej6SKINWrpJiNonRIniYondK2ViKhB06i3c0s+76XUft71iqBEe9S1OKsHwPAjfHnuvnCig==", "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" + "@babel/code-frame": "^7.10.1", + "@babel/parser": "^7.10.1", + "@babel/types": "^7.10.1" } } } }, "@babel/helper-optimise-call-expression": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.8.3.tgz", - "integrity": "sha512-Kag20n86cbO2AvHca6EJsvqAd82gc6VMGule4HwebwMlwkpXuVqrNRj6CkCV2sKxgi9MyAUnZVnZ6lJ1/vKhHQ==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.10.1.tgz", + "integrity": "sha512-a0DjNS1prnBsoKx83dP2falChcs7p3i8VMzdrSbfLhuQra/2ENC4sbri34dz/rWmDADsmF1q5GbfaXydh0Jbjg==", "requires": { - "@babel/types": "^7.8.3" - }, - "dependencies": { - "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - } + "@babel/types": "^7.10.1" } }, "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.1.tgz", + "integrity": "sha512-fvoGeXt0bJc7VMWZGCAEBEMo/HAjW2mP8apF5eXK0wSqwLAVHAISCWRoLMBMUs2kqeaG77jltVqu4Hn8Egl3nA==" }, "@babel/helper-regex": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.8.3.tgz", - "integrity": "sha512-BWt0QtYv/cg/NecOAZMdcn/waj/5P26DR4mVLXfFtDokSR6fyuG0Pj+e2FqtSME+MqED1khnSMulkmGl8qWiUQ==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.10.1.tgz", + "integrity": "sha512-7isHr19RsIJWWLLFn21ubFt223PjQyg1HY7CZEMRr820HttHPpVvrsIN3bUOo44DEfFV4kBXO7Abbn9KTUZV7g==", "requires": { "lodash": "^4.17.13" } }, "@babel/helper-remap-async-to-generator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.8.3.tgz", - "integrity": "sha512-kgwDmw4fCg7AVgS4DukQR/roGp+jP+XluJE5hsRZwxCYGg+Rv9wSGErDWhlI90FODdYfd4xG4AQRiMDjjN0GzA==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.10.1.tgz", + "integrity": "sha512-RfX1P8HqsfgmJ6CwaXGKMAqbYdlleqglvVtht0HGPMSsy2V6MqLlOJVF/0Qyb/m2ZCi2z3q3+s6Pv7R/dQuZ6A==", "requires": { - "@babel/helper-annotate-as-pure": "^7.8.3", - "@babel/helper-wrap-function": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/traverse": "^7.8.3", - "@babel/types": "^7.8.3" + "@babel/helper-annotate-as-pure": "^7.10.1", + "@babel/helper-wrap-function": "^7.10.1", + "@babel/template": "^7.10.1", + "@babel/traverse": "^7.10.1", + "@babel/types": "^7.10.1" }, "dependencies": { - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "dev": true, - "requires": { - "@babel/highlight": "^7.8.3" - } - }, - "@babel/highlight": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz", - "integrity": "sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.9.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.9.4.tgz", - "integrity": "sha512-bC49otXX6N0/VYhgOMh4gnP26E9xnDZK3TmbNpxYzzz9BQLBosQwfyOe9/cXUU3txYhTzLCbcqd5c8y/OmCjHA==", - "dev": true - }, "@babel/template": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz", - "integrity": "sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6" - } - }, - "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.1.tgz", + "integrity": "sha512-OQDg6SqvFSsc9A0ej6SKINWrpJiNonRIniYondK2ViKhB06i3c0s+76XUft71iqBEe9S1OKsHwPAjfHnuvnCig==", "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" + "@babel/code-frame": "^7.10.1", + "@babel/parser": "^7.10.1", + "@babel/types": "^7.10.1" } } } }, "@babel/helper-replace-supers": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.8.6.tgz", - "integrity": "sha512-PeMArdA4Sv/Wf4zXwBKPqVj7n9UF/xg6slNRtZW84FM7JpE1CbG8B612FyM4cxrf4fMAMGO0kR7voy1ForHHFA==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.10.1.tgz", + "integrity": "sha512-SOwJzEfpuQwInzzQJGjGaiG578UYmyi2Xw668klPWV5n07B73S0a9btjLk/52Mlcxa+5AdIYqws1KyXRfMoB7A==", "requires": { - "@babel/helper-member-expression-to-functions": "^7.8.3", - "@babel/helper-optimise-call-expression": "^7.8.3", - "@babel/traverse": "^7.8.6", - "@babel/types": "^7.8.6" - }, - "dependencies": { - "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - } + "@babel/helper-member-expression-to-functions": "^7.10.1", + "@babel/helper-optimise-call-expression": "^7.10.1", + "@babel/traverse": "^7.10.1", + "@babel/types": "^7.10.1" } }, "@babel/helper-simple-access": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.8.3.tgz", - "integrity": "sha512-VNGUDjx5cCWg4vvCTR8qQ7YJYZ+HBjxOgXEl7ounz+4Sn7+LMD3CFrCTEU6/qXKbA2nKg21CwhhBzO0RpRbdCw==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.10.1.tgz", + "integrity": "sha512-VSWpWzRzn9VtgMJBIWTZ+GP107kZdQ4YplJlCmIrjoLVSi/0upixezHCDG8kpPVTBJpKfxTH01wDhh+jS2zKbw==", "requires": { - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" + "@babel/template": "^7.10.1", + "@babel/types": "^7.10.1" }, "dependencies": { - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "dev": true, - "requires": { - "@babel/highlight": "^7.8.3" - } - }, - "@babel/highlight": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz", - "integrity": "sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.9.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.9.4.tgz", - "integrity": "sha512-bC49otXX6N0/VYhgOMh4gnP26E9xnDZK3TmbNpxYzzz9BQLBosQwfyOe9/cXUU3txYhTzLCbcqd5c8y/OmCjHA==", - "dev": true - }, "@babel/template": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz", - "integrity": "sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6" - } - }, - "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.1.tgz", + "integrity": "sha512-OQDg6SqvFSsc9A0ej6SKINWrpJiNonRIniYondK2ViKhB06i3c0s+76XUft71iqBEe9S1OKsHwPAjfHnuvnCig==", "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" + "@babel/code-frame": "^7.10.1", + "@babel/parser": "^7.10.1", + "@babel/types": "^7.10.1" } } } }, "@babel/helper-split-export-declaration": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz", - "integrity": "sha512-3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.10.1.tgz", + "integrity": "sha512-UQ1LVBPrYdbchNhLwj6fetj46BcFwfS4NllJo/1aJsT+1dLTEnXJL0qHqtY7gPzF8S2fXBJamf1biAXV3X077g==", + "requires": { + "@babel/types": "^7.10.1" + } + }, + "@babel/helper-validator-identifier": { + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.1.tgz", + "integrity": "sha512-5vW/JXLALhczRCWP0PnFDMCJAchlBvM7f4uk/jXritBnIa6E1KmqmtrS3yn1LAnxFBypQ3eneLuXjsnfQsgILw==" + }, + "@babel/helper-wrap-function": { + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.10.1.tgz", + "integrity": "sha512-C0MzRGteVDn+H32/ZgbAv5r56f2o1fZSA/rj/TYo8JEJNHg+9BdSmKBUND0shxWRztWhjlT2cvHYuynpPsVJwQ==", "requires": { - "@babel/types": "^7.8.3" + "@babel/helper-function-name": "^7.10.1", + "@babel/template": "^7.10.1", + "@babel/traverse": "^7.10.1", + "@babel/types": "^7.10.1" }, "dependencies": { - "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", - "dev": true, + "@babel/template": { + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.1.tgz", + "integrity": "sha512-OQDg6SqvFSsc9A0ej6SKINWrpJiNonRIniYondK2ViKhB06i3c0s+76XUft71iqBEe9S1OKsHwPAjfHnuvnCig==", "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" + "@babel/code-frame": "^7.10.1", + "@babel/parser": "^7.10.1", + "@babel/types": "^7.10.1" } } } }, - "@babel/helper-validator-identifier": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.0.tgz", - "integrity": "sha512-6G8bQKjOh+of4PV/ThDm/rRqlU7+IGoJuofpagU5GlEl29Vv0RGqqt86ZGRV8ZuSOY3o+8yXl5y782SMcG7SHw==", - "dev": true - }, - "@babel/helper-wrap-function": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.8.3.tgz", - "integrity": "sha512-LACJrbUET9cQDzb6kG7EeD7+7doC3JNvUgTEQOx2qaO1fKlzE/Bf05qs9w1oXQMmXlPO65lC3Tq9S6gZpTErEQ==", - "dev": true, + "@babel/helpers": { + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.10.1.tgz", + "integrity": "sha512-muQNHF+IdU6wGgkaJyhhEmI54MOZBKsFfsXFhboz1ybwJ1Kl7IHlbm2a++4jwrmY5UYsgitt5lfqo1wMFcHmyw==", "requires": { - "@babel/helper-function-name": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/traverse": "^7.8.3", - "@babel/types": "^7.8.3" + "@babel/template": "^7.10.1", + "@babel/traverse": "^7.10.1", + "@babel/types": "^7.10.1" }, "dependencies": { - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "dev": true, + "@babel/template": { + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.1.tgz", + "integrity": "sha512-OQDg6SqvFSsc9A0ej6SKINWrpJiNonRIniYondK2ViKhB06i3c0s+76XUft71iqBEe9S1OKsHwPAjfHnuvnCig==", "requires": { - "@babel/highlight": "^7.8.3" - } - }, - "@babel/helper-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz", - "integrity": "sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", - "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/highlight": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz", - "integrity": "sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.9.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.9.4.tgz", - "integrity": "sha512-bC49otXX6N0/VYhgOMh4gnP26E9xnDZK3TmbNpxYzzz9BQLBosQwfyOe9/cXUU3txYhTzLCbcqd5c8y/OmCjHA==", - "dev": true - }, - "@babel/template": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz", - "integrity": "sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6" - } - }, - "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - } - } - }, - "@babel/helpers": { - "version": "7.9.2", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.9.2.tgz", - "integrity": "sha512-JwLvzlXVPjO8eU9c/wF9/zOIN7X6h8DYf7mG4CiFRZRvZNKEF5dQ3H3V+ASkHoIB3mWhatgl5ONhyqHRI6MppA==", - "dev": true, - "requires": { - "@babel/template": "^7.8.3", - "@babel/traverse": "^7.9.0", - "@babel/types": "^7.9.0" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "dev": true, - "requires": { - "@babel/highlight": "^7.8.3" - } - }, - "@babel/highlight": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz", - "integrity": "sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.9.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.9.4.tgz", - "integrity": "sha512-bC49otXX6N0/VYhgOMh4gnP26E9xnDZK3TmbNpxYzzz9BQLBosQwfyOe9/cXUU3txYhTzLCbcqd5c8y/OmCjHA==", - "dev": true - }, - "@babel/template": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz", - "integrity": "sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6" - } - }, - "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" + "@babel/code-frame": "^7.10.1", + "@babel/parser": "^7.10.1", + "@babel/types": "^7.10.1" } } } }, "@babel/highlight": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", - "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.1.tgz", + "integrity": "sha512-8rMof+gVP8mxYZApLF/JgNDAkdKa+aJt3ZYxF8z6+j/hpeXL7iMsKCPHa2jNMHu/qqBwzQF4OHNoYi8dMA/rYg==", "requires": { + "@babel/helper-validator-identifier": "^7.10.1", "chalk": "^2.0.0", - "esutils": "^2.0.2", "js-tokens": "^4.0.0" - }, - "dependencies": { - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - } } }, "@babel/parser": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.3.1.tgz", - "integrity": "sha512-ATz6yX/L8LEnC3dtLQnIx4ydcPxhLcoy9Vl6re00zb2w5lG6itY6Vhnr1KFRPq/FHNsgl/gh2mjNN20f9iJTTA==", - "dev": true + "version": "7.10.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.10.2.tgz", + "integrity": "sha512-PApSXlNMJyB4JiGVhCOlzKIif+TKFTvu0aQAhnTvfP/z3vVSN6ZypH5bfUNwFXXjRQtUEBNFd2PtmCmG2Py3qQ==" }, "@babel/plugin-proposal-async-generator-functions": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.8.3.tgz", - "integrity": "sha512-NZ9zLv848JsV3hs8ryEh7Uaz/0KsmPLqv0+PdkDJL1cJy0K4kOCFa8zc1E3mp+RHPQcpdfb/6GovEsW4VDrOMw==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.10.1.tgz", + "integrity": "sha512-vzZE12ZTdB336POZjmpblWfNNRpMSua45EYnRigE2XsZxcXcIyly2ixnTJasJE4Zq3U7t2d8rRF7XRUuzHxbOw==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/helper-remap-async-to-generator": "^7.8.3", + "@babel/helper-plugin-utils": "^7.10.1", + "@babel/helper-remap-async-to-generator": "^7.10.1", "@babel/plugin-syntax-async-generators": "^7.8.0" } }, "@babel/plugin-proposal-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.8.3.tgz", - "integrity": "sha512-NyaBbyLFXFLT9FP+zk0kYlUlA8XtCUbehs67F0nnEg7KICgMc2mNkIeu9TYhKzyXMkrapZFwAhXLdnt4IYHy1w==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.10.1.tgz", + "integrity": "sha512-Cpc2yUVHTEGPlmiQzXj026kqwjEQAD9I4ZC16uzdbgWgitg/UHKHLffKNCQZ5+y8jpIZPJcKcwsr2HwPh+w3XA==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3", + "@babel/helper-plugin-utils": "^7.10.1", "@babel/plugin-syntax-dynamic-import": "^7.8.0" } }, "@babel/plugin-proposal-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.8.3.tgz", - "integrity": "sha512-KGhQNZ3TVCQG/MjRbAUwuH+14y9q0tpxs1nWWs3pbSleRdDro9SAMMDyye8HhY1gqZ7/NqIc8SKhya0wRDgP1Q==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.10.1.tgz", + "integrity": "sha512-m8r5BmV+ZLpWPtMY2mOKN7wre6HIO4gfIiV+eOmsnZABNenrt/kzYBwrh+KOfgumSWpnlGs5F70J8afYMSJMBg==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3", + "@babel/helper-plugin-utils": "^7.10.1", "@babel/plugin-syntax-json-strings": "^7.8.0" } }, "@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-TS9MlfzXpXKt6YYomudb/KU7nQI6/xnapG6in1uZxoxDghuSMZsPb6D2fyUwNYSAp4l1iR7QtFOjkqcRYcUsfw==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.10.1.tgz", + "integrity": "sha512-56cI/uHYgL2C8HVuHOuvVowihhX0sxb3nnfVRzUeVHTWmRHTZrKuAh/OBIMggGU/S1g/1D2CRCXqP+3u7vX7iA==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3", + "@babel/helper-plugin-utils": "^7.10.1", "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0" } }, "@babel/plugin-proposal-numeric-separator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.8.3.tgz", - "integrity": "sha512-jWioO1s6R/R+wEHizfaScNsAx+xKgwTLNXSh7tTC4Usj3ItsPEhYkEpU4h+lpnBwq7NBVOJXfO6cRFYcX69JUQ==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.10.1.tgz", + "integrity": "sha512-jjfym4N9HtCiNfyyLAVD8WqPYeHUrw4ihxuAynWj6zzp2gf9Ey2f7ImhFm6ikB3CLf5Z/zmcJDri6B4+9j9RsA==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.8.3" + "@babel/helper-plugin-utils": "^7.10.1", + "@babel/plugin-syntax-numeric-separator": "^7.10.1" } }, "@babel/plugin-proposal-object-rest-spread": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.9.0.tgz", - "integrity": "sha512-UgqBv6bjq4fDb8uku9f+wcm1J7YxJ5nT7WO/jBr0cl0PLKb7t1O6RNR1kZbjgx2LQtsDI9hwoQVmn0yhXeQyow==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.10.1.tgz", + "integrity": "sha512-Z+Qri55KiQkHh7Fc4BW6o+QBuTagbOp9txE+4U1i79u9oWlf2npkiDx+Rf3iK3lbcHBuNy9UOkwuR5wOMH3LIQ==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0" + "@babel/helper-plugin-utils": "^7.10.1", + "@babel/plugin-syntax-object-rest-spread": "^7.8.0", + "@babel/plugin-transform-parameters": "^7.10.1" } }, "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-0gkX7J7E+AtAw9fcwlVQj8peP61qhdg/89D5swOkjYbkboA2CVckn3kiyum1DE0wskGb7KJJxBdyEBApDLLVdw==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.10.1.tgz", + "integrity": "sha512-VqExgeE62YBqI3ogkGoOJp1R6u12DFZjqwJhqtKc2o5m1YTUuUWnos7bZQFBhwkxIFpWYJ7uB75U7VAPPiKETA==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3", + "@babel/helper-plugin-utils": "^7.10.1", "@babel/plugin-syntax-optional-catch-binding": "^7.8.0" } }, "@babel/plugin-proposal-optional-chaining": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.9.0.tgz", - "integrity": "sha512-NDn5tu3tcv4W30jNhmc2hyD5c56G6cXx4TesJubhxrJeCvuuMpttxr0OnNCqbZGhFjLrg+NIhxxC+BK5F6yS3w==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.10.1.tgz", + "integrity": "sha512-dqQj475q8+/avvok72CF3AOSV/SGEcH29zT5hhohqqvvZ2+boQoOr7iGldBG5YXTO2qgCgc2B3WvVLUdbeMlGA==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3", + "@babel/helper-plugin-utils": "^7.10.1", "@babel/plugin-syntax-optional-chaining": "^7.8.0" } }, "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.8.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.8.8.tgz", - "integrity": "sha512-EVhjVsMpbhLw9ZfHWSx2iy13Q8Z/eg8e8ccVWt23sWQK5l1UdkoLJPN5w69UA4uITGBnEZD2JOe4QOHycYKv8A==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.10.1.tgz", + "integrity": "sha512-JjfngYRvwmPwmnbRZyNiPFI8zxCZb8euzbCG/LxyKdeTb59tVciKo9GK9bi6JYKInk1H11Dq9j/zRqIH4KigfQ==", "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.8.8", - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-create-regexp-features-plugin": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-syntax-async-generators": { "version": "7.8.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.0" } @@ -1785,7 +1042,6 @@ "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.0" } @@ -1794,7 +1050,6 @@ "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.0" } @@ -1803,25 +1058,22 @@ "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.0" } }, "@babel/plugin-syntax-numeric-separator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.8.3.tgz", - "integrity": "sha512-H7dCMAdN83PcCmqmkHB5dtp+Xa9a6LKSvA2hiFBC/5alSHxM5VgWZXFqDi0YFe8XNGT6iCa+z4V4zSt/PdZ7Dw==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.1.tgz", + "integrity": "sha512-uTd0OsHrpe3tH5gRPTxG8Voh99/WCU78vIm5NMRYPAqC8lR4vajt6KkCAknCHrx24vkPdd/05yfdGSB4EIY2mg==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-syntax-object-rest-spread": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.0" } @@ -1830,7 +1082,6 @@ "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.0" } @@ -1839,493 +1090,297 @@ "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.0" } }, "@babel/plugin-syntax-top-level-await": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.8.3.tgz", - "integrity": "sha512-kwj1j9lL/6Wd0hROD3b/OZZ7MSrZLqqn9RAZ5+cYYsflQ9HZBIKCUkr3+uL1MEJ1NePiUbf98jjiMQSv0NMR9g==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.10.1.tgz", + "integrity": "sha512-hgA5RYkmZm8FTFT3yu2N9Bx7yVVOKYT6yEdXXo6j2JTm0wNxgqaGeQVaSHRjhfnQbX91DtjFB6McRFSlcJH3xQ==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-arrow-functions": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.8.3.tgz", - "integrity": "sha512-0MRF+KC8EqH4dbuITCWwPSzsyO3HIWWlm30v8BbbpOrS1B++isGxPnnuq/IZvOX5J2D/p7DQalQm+/2PnlKGxg==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.10.1.tgz", + "integrity": "sha512-6AZHgFJKP3DJX0eCNJj01RpytUa3SOGawIxweHkNX2L6PYikOZmoh5B0d7hIHaIgveMjX990IAa/xK7jRTN8OA==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-async-to-generator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.8.3.tgz", - "integrity": "sha512-imt9tFLD9ogt56Dd5CI/6XgpukMwd/fLGSrix2httihVe7LOGVPhyhMh1BU5kDM7iHD08i8uUtmV2sWaBFlHVQ==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.10.1.tgz", + "integrity": "sha512-XCgYjJ8TY2slj6SReBUyamJn3k2JLUIiiR5b6t1mNCMSvv7yx+jJpaewakikp0uWFQSF7ChPPoe3dHmXLpISkg==", "requires": { - "@babel/helper-module-imports": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/helper-remap-async-to-generator": "^7.8.3" + "@babel/helper-module-imports": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1", + "@babel/helper-remap-async-to-generator": "^7.10.1" } }, "@babel/plugin-transform-block-scoped-functions": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.8.3.tgz", - "integrity": "sha512-vo4F2OewqjbB1+yaJ7k2EJFHlTP3jR634Z9Cj9itpqNjuLXvhlVxgnjsHsdRgASR8xYDrx6onw4vW5H6We0Jmg==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.10.1.tgz", + "integrity": "sha512-B7K15Xp8lv0sOJrdVAoukKlxP9N59HS48V1J3U/JGj+Ad+MHq+am6xJVs85AgXrQn4LV8vaYFOB+pr/yIuzW8Q==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-block-scoping": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.8.3.tgz", - "integrity": "sha512-pGnYfm7RNRgYRi7bids5bHluENHqJhrV4bCZRwc5GamaWIIs07N4rZECcmJL6ZClwjDz1GbdMZFtPs27hTB06w==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.10.1.tgz", + "integrity": "sha512-8bpWG6TtF5akdhIm/uWTyjHqENpy13Fx8chg7pFH875aNLwX8JxIxqm08gmAT+Whe6AOmaTeLPe7dpLbXt+xUw==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3", + "@babel/helper-plugin-utils": "^7.10.1", "lodash": "^4.17.13" } }, "@babel/plugin-transform-classes": { - "version": "7.9.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.9.2.tgz", - "integrity": "sha512-TC2p3bPzsfvSsqBZo0kJnuelnoK9O3welkUpqSqBQuBF6R5MN2rysopri8kNvtlGIb2jmUO7i15IooAZJjZuMQ==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.8.3", - "@babel/helper-define-map": "^7.8.3", - "@babel/helper-function-name": "^7.8.3", - "@babel/helper-optimise-call-expression": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/helper-replace-supers": "^7.8.6", - "@babel/helper-split-export-declaration": "^7.8.3", + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.10.1.tgz", + "integrity": "sha512-P9V0YIh+ln/B3RStPoXpEQ/CoAxQIhRSUn7aXqQ+FZJ2u8+oCtjIXR3+X0vsSD8zv+mb56K7wZW1XiDTDGiDRQ==", + "requires": { + "@babel/helper-annotate-as-pure": "^7.10.1", + "@babel/helper-define-map": "^7.10.1", + "@babel/helper-function-name": "^7.10.1", + "@babel/helper-optimise-call-expression": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1", + "@babel/helper-replace-supers": "^7.10.1", + "@babel/helper-split-export-declaration": "^7.10.1", "globals": "^11.1.0" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "dev": true, - "requires": { - "@babel/highlight": "^7.8.3" - } - }, - "@babel/helper-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz", - "integrity": "sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", - "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/highlight": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz", - "integrity": "sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.9.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.9.4.tgz", - "integrity": "sha512-bC49otXX6N0/VYhgOMh4gnP26E9xnDZK3TmbNpxYzzz9BQLBosQwfyOe9/cXUU3txYhTzLCbcqd5c8y/OmCjHA==", - "dev": true - }, - "@babel/template": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz", - "integrity": "sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6" - } - }, - "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - } } }, "@babel/plugin-transform-computed-properties": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.8.3.tgz", - "integrity": "sha512-O5hiIpSyOGdrQZRQ2ccwtTVkgUDBBiCuK//4RJ6UfePllUTCENOzKxfh6ulckXKc0DixTFLCfb2HVkNA7aDpzA==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.10.1.tgz", + "integrity": "sha512-mqSrGjp3IefMsXIenBfGcPXxJxweQe2hEIwMQvjtiDQ9b1IBvDUjkAtV/HMXX47/vXf14qDNedXsIiNd1FmkaQ==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-destructuring": { - "version": "7.8.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.8.8.tgz", - "integrity": "sha512-eRJu4Vs2rmttFCdhPUM3bV0Yo/xPSdPw6ML9KHs/bjB4bLA5HXlbvYXPOD5yASodGod+krjYx21xm1QmL8dCJQ==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.10.1.tgz", + "integrity": "sha512-V/nUc4yGWG71OhaTH705pU8ZSdM6c1KmmLP8ys59oOYbT7RpMYAR3MsVOt6OHL0WzG7BlTU076va9fjJyYzJMA==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-dotall-regex": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.8.3.tgz", - "integrity": "sha512-kLs1j9Nn4MQoBYdRXH6AeaXMbEJFaFu/v1nQkvib6QzTj8MZI5OQzqmD83/2jEM1z0DLilra5aWO5YpyC0ALIw==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.10.1.tgz", + "integrity": "sha512-19VIMsD1dp02RvduFUmfzj8uknaO3uiHHF0s3E1OHnVsNj8oge8EQ5RzHRbJjGSetRnkEuBYO7TG1M5kKjGLOA==", "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-create-regexp-features-plugin": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-duplicate-keys": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.8.3.tgz", - "integrity": "sha512-s8dHiBUbcbSgipS4SMFuWGqCvyge5V2ZeAWzR6INTVC3Ltjig/Vw1G2Gztv0vU/hRG9X8IvKvYdoksnUfgXOEQ==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.10.1.tgz", + "integrity": "sha512-wIEpkX4QvX8Mo9W6XF3EdGttrIPZWozHfEaDTU0WJD/TDnXMvdDh30mzUl/9qWhnf7naicYartcEfUghTCSNpA==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-exponentiation-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.8.3.tgz", - "integrity": "sha512-zwIpuIymb3ACcInbksHaNcR12S++0MDLKkiqXHl3AzpgdKlFNhog+z/K0+TGW+b0w5pgTq4H6IwV/WhxbGYSjQ==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.10.1.tgz", + "integrity": "sha512-lr/przdAbpEA2BUzRvjXdEDLrArGRRPwbaF9rvayuHRvdQ7lUTTkZnhZrJ4LE2jvgMRFF4f0YuPQ20vhiPYxtA==", "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-for-of": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.9.0.tgz", - "integrity": "sha512-lTAnWOpMwOXpyDx06N+ywmF3jNbafZEqZ96CGYabxHrxNX8l5ny7dt4bK/rGwAh9utyP2b2Hv7PlZh1AAS54FQ==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.10.1.tgz", + "integrity": "sha512-US8KCuxfQcn0LwSCMWMma8M2R5mAjJGsmoCBVwlMygvmDUMkTCykc84IqN1M7t+agSfOmLYTInLCHJM+RUoz+w==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.8.3.tgz", - "integrity": "sha512-rO/OnDS78Eifbjn5Py9v8y0aR+aSYhDhqAwVfsTl0ERuMZyr05L1aFSCJnbv2mmsLkit/4ReeQ9N2BgLnOcPCQ==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.10.1.tgz", + "integrity": "sha512-//bsKsKFBJfGd65qSNNh1exBy5Y9gD9ZN+DvrJ8f7HXr4avE5POW6zB7Rj6VnqHV33+0vXWUwJT0wSHubiAQkw==", "requires": { - "@babel/helper-function-name": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "dev": true, - "requires": { - "@babel/highlight": "^7.8.3" - } - }, - "@babel/helper-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz", - "integrity": "sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", - "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/highlight": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz", - "integrity": "sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.9.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.9.4.tgz", - "integrity": "sha512-bC49otXX6N0/VYhgOMh4gnP26E9xnDZK3TmbNpxYzzz9BQLBosQwfyOe9/cXUU3txYhTzLCbcqd5c8y/OmCjHA==", - "dev": true - }, - "@babel/template": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz", - "integrity": "sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6" - } - }, - "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - } + "@babel/helper-function-name": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-literals": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.8.3.tgz", - "integrity": "sha512-3Tqf8JJ/qB7TeldGl+TT55+uQei9JfYaregDcEAyBZ7akutriFrt6C/wLYIer6OYhleVQvH/ntEhjE/xMmy10A==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.10.1.tgz", + "integrity": "sha512-qi0+5qgevz1NHLZroObRm5A+8JJtibb7vdcPQF1KQE12+Y/xxl8coJ+TpPW9iRq+Mhw/NKLjm+5SHtAHCC7lAw==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-member-expression-literals": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.8.3.tgz", - "integrity": "sha512-3Wk2EXhnw+rP+IDkK6BdtPKsUE5IeZ6QOGrPYvw52NwBStw9V1ZVzxgK6fSKSxqUvH9eQPR3tm3cOq79HlsKYA==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.10.1.tgz", + "integrity": "sha512-UmaWhDokOFT2GcgU6MkHC11i0NQcL63iqeufXWfRy6pUOGYeCGEKhvfFO6Vz70UfYJYHwveg62GS83Rvpxn+NA==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-modules-amd": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.9.0.tgz", - "integrity": "sha512-vZgDDF003B14O8zJy0XXLnPH4sg+9X5hFBBGN1V+B2rgrB+J2xIypSN6Rk9imB2hSTHQi5OHLrFWsZab1GMk+Q==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.10.1.tgz", + "integrity": "sha512-31+hnWSFRI4/ACFr1qkboBbrTxoBIzj7qA69qlq8HY8p7+YCzkCT6/TvQ1a4B0z27VeWtAeJd6pr5G04dc1iHw==", "requires": { - "@babel/helper-module-transforms": "^7.9.0", - "@babel/helper-plugin-utils": "^7.8.3", - "babel-plugin-dynamic-import-node": "^2.3.0" + "@babel/helper-module-transforms": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1", + "babel-plugin-dynamic-import-node": "^2.3.3" } }, "@babel/plugin-transform-modules-commonjs": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.9.0.tgz", - "integrity": "sha512-qzlCrLnKqio4SlgJ6FMMLBe4bySNis8DFn1VkGmOcxG9gqEyPIOzeQrA//u0HAKrWpJlpZbZMPB1n/OPa4+n8g==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.10.1.tgz", + "integrity": "sha512-AQG4fc3KOah0vdITwt7Gi6hD9BtQP/8bhem7OjbaMoRNCH5Djx42O2vYMfau7QnAzQCa+RJnhJBmFFMGpQEzrg==", "requires": { - "@babel/helper-module-transforms": "^7.9.0", - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/helper-simple-access": "^7.8.3", - "babel-plugin-dynamic-import-node": "^2.3.0" + "@babel/helper-module-transforms": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1", + "@babel/helper-simple-access": "^7.10.1", + "babel-plugin-dynamic-import-node": "^2.3.3" } }, "@babel/plugin-transform-modules-systemjs": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.9.0.tgz", - "integrity": "sha512-FsiAv/nao/ud2ZWy4wFacoLOm5uxl0ExSQ7ErvP7jpoihLR6Cq90ilOFyX9UXct3rbtKsAiZ9kFt5XGfPe/5SQ==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.10.1.tgz", + "integrity": "sha512-ewNKcj1TQZDL3YnO85qh9zo1YF1CHgmSTlRQgHqe63oTrMI85cthKtZjAiZSsSNjPQ5NCaYo5QkbYqEw1ZBgZA==", "requires": { - "@babel/helper-hoist-variables": "^7.8.3", - "@babel/helper-module-transforms": "^7.9.0", - "@babel/helper-plugin-utils": "^7.8.3", - "babel-plugin-dynamic-import-node": "^2.3.0" + "@babel/helper-hoist-variables": "^7.10.1", + "@babel/helper-module-transforms": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1", + "babel-plugin-dynamic-import-node": "^2.3.3" } }, "@babel/plugin-transform-modules-umd": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.9.0.tgz", - "integrity": "sha512-uTWkXkIVtg/JGRSIABdBoMsoIeoHQHPTL0Y2E7xf5Oj7sLqwVsNXOkNk0VJc7vF0IMBsPeikHxFjGe+qmwPtTQ==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.10.1.tgz", + "integrity": "sha512-EIuiRNMd6GB6ulcYlETnYYfgv4AxqrswghmBRQbWLHZxN4s7mupxzglnHqk9ZiUpDI4eRWewedJJNj67PWOXKA==", "requires": { - "@babel/helper-module-transforms": "^7.9.0", - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-module-transforms": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-named-capturing-groups-regex": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.8.3.tgz", "integrity": "sha512-f+tF/8UVPU86TrCb06JoPWIdDpTNSGGcAtaD9mLP0aYGA0OS0j7j7DHJR0GTFrUZPUU6loZhbsVZgTh0N+Qdnw==", - "dev": true, "requires": { "@babel/helper-create-regexp-features-plugin": "^7.8.3" } }, "@babel/plugin-transform-new-target": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.8.3.tgz", - "integrity": "sha512-QuSGysibQpyxexRyui2vca+Cmbljo8bcRckgzYV4kRIsHpVeyeC3JDO63pY+xFZ6bWOBn7pfKZTqV4o/ix9sFw==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.10.1.tgz", + "integrity": "sha512-MBlzPc1nJvbmO9rPr1fQwXOM2iGut+JC92ku6PbiJMMK7SnQc1rytgpopveE3Evn47gzvGYeCdgfCDbZo0ecUw==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-object-super": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.8.3.tgz", - "integrity": "sha512-57FXk+gItG/GejofIyLIgBKTas4+pEU47IXKDBWFTxdPd7F80H8zybyAY7UoblVfBhBGs2EKM+bJUu2+iUYPDQ==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.10.1.tgz", + "integrity": "sha512-WnnStUDN5GL+wGQrJylrnnVlFhFmeArINIR9gjhSeYyvroGhBrSAXYg/RHsnfzmsa+onJrTJrEClPzgNmmQ4Gw==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/helper-replace-supers": "^7.8.3" + "@babel/helper-plugin-utils": "^7.10.1", + "@babel/helper-replace-supers": "^7.10.1" } }, "@babel/plugin-transform-parameters": { - "version": "7.9.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.9.3.tgz", - "integrity": "sha512-fzrQFQhp7mIhOzmOtPiKffvCYQSK10NR8t6BBz2yPbeUHb9OLW8RZGtgDRBn8z2hGcwvKDL3vC7ojPTLNxmqEg==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.10.1.tgz", + "integrity": "sha512-tJ1T0n6g4dXMsL45YsSzzSDZCxiHXAQp/qHrucOq5gEHncTA3xDxnd5+sZcoQp+N1ZbieAaB8r/VUCG0gqseOg==", "requires": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3" - }, - "dependencies": { - "@babel/helper-get-function-arity": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", - "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - } + "@babel/helper-get-function-arity": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-property-literals": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.8.3.tgz", - "integrity": "sha512-uGiiXAZMqEoQhRWMK17VospMZh5sXWg+dlh2soffpkAl96KAm+WZuJfa6lcELotSRmooLqg0MWdH6UUq85nmmg==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.10.1.tgz", + "integrity": "sha512-Kr6+mgag8auNrgEpbfIWzdXYOvqDHZOF0+Bx2xh4H2EDNwcbRb9lY6nkZg8oSjsX+DH9Ebxm9hOqtKW+gRDeNA==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-regenerator": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.8.7.tgz", - "integrity": "sha512-TIg+gAl4Z0a3WmD3mbYSk+J9ZUH6n/Yc57rtKRnlA/7rcCvpekHXe0CMZHP1gYp7/KLe9GHTuIba0vXmls6drA==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.10.1.tgz", + "integrity": "sha512-B3+Y2prScgJ2Bh/2l9LJxKbb8C8kRfsG4AdPT+n7ixBHIxJaIG8bi8tgjxUMege1+WqSJ+7gu1YeoMVO3gPWzw==", "requires": { "regenerator-transform": "^0.14.2" } }, "@babel/plugin-transform-reserved-words": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.8.3.tgz", - "integrity": "sha512-mwMxcycN3omKFDjDQUl+8zyMsBfjRFr0Zn/64I41pmjv4NJuqcYlEtezwYtw9TFd9WR1vN5kiM+O0gMZzO6L0A==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.10.1.tgz", + "integrity": "sha512-qN1OMoE2nuqSPmpTqEM7OvJ1FkMEV+BjVeZZm9V9mq/x1JLKQ4pcv8riZJMNN3u2AUGl0ouOMjRr2siecvHqUQ==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-shorthand-properties": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.8.3.tgz", - "integrity": "sha512-I9DI6Odg0JJwxCHzbzW08ggMdCezoWcuQRz3ptdudgwaHxTjxw5HgdFJmZIkIMlRymL6YiZcped4TTCB0JcC8w==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.10.1.tgz", + "integrity": "sha512-AR0E/lZMfLstScFwztApGeyTHJ5u3JUKMjneqRItWeEqDdHWZwAOKycvQNCasCK/3r5YXsuNG25funcJDu7Y2g==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.8.3.tgz", - "integrity": "sha512-CkuTU9mbmAoFOI1tklFWYYbzX5qCIZVXPVy0jpXgGwkplCndQAa58s2jr66fTeQnA64bDox0HL4U56CFYoyC7g==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.10.1.tgz", + "integrity": "sha512-8wTPym6edIrClW8FI2IoaePB91ETOtg36dOkj3bYcNe7aDMN2FXEoUa+WrmPc4xa1u2PQK46fUX2aCb+zo9rfw==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-sticky-regex": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.8.3.tgz", - "integrity": "sha512-9Spq0vGCD5Bb4Z/ZXXSK5wbbLFMG085qd2vhL1JYu1WcQ5bXqZBAYRzU1d+p79GcHs2szYv5pVQCX13QgldaWw==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.10.1.tgz", + "integrity": "sha512-j17ojftKjrL7ufX8ajKvwRilwqTok4q+BjkknmQw9VNHnItTyMP5anPFzxFJdCQs7clLcWpCV3ma+6qZWLnGMA==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/helper-regex": "^7.8.3" + "@babel/helper-plugin-utils": "^7.10.1", + "@babel/helper-regex": "^7.10.1" } }, "@babel/plugin-transform-template-literals": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.8.3.tgz", - "integrity": "sha512-820QBtykIQOLFT8NZOcTRJ1UNuztIELe4p9DCgvj4NK+PwluSJ49we7s9FB1HIGNIYT7wFUJ0ar2QpCDj0escQ==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.10.1.tgz", + "integrity": "sha512-t7B/3MQf5M1T9hPCRG28DNGZUuxAuDqLYS03rJrIk2prj/UV7Z6FOneijhQhnv/Xa039vidXeVbvjK2SK5f7Gg==", "requires": { - "@babel/helper-annotate-as-pure": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-annotate-as-pure": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-typeof-symbol": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.8.4.tgz", - "integrity": "sha512-2QKyfjGdvuNfHsb7qnBBlKclbD4CfshH2KvDabiijLMGXPHJXGxtDzwIF7bQP+T0ysw8fYTtxPafgfs/c1Lrqg==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.10.1.tgz", + "integrity": "sha512-qX8KZcmbvA23zDi+lk9s6hC1FM7jgLHYIjuLgULgc8QtYnmB3tAVIYkNoKRQ75qWBeyzcoMoK8ZQmogGtC/w0g==", "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-unicode-regex": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.8.3.tgz", - "integrity": "sha512-+ufgJjYdmWfSQ+6NS9VGUR2ns8cjJjYbrbi11mZBTaWm+Fui/ncTLFF28Ei1okavY+xkojGr1eJxNsWYeA5aZw==", - "dev": true, + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.10.1.tgz", + "integrity": "sha512-Y/2a2W299k0VIUdbqYm9X2qS6fE0CUBhhiPpimK6byy7OJ/kORLlIX+J6UrjgNu5awvs62k+6RSslxhcvVw2Tw==", "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-create-regexp-features-plugin": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/preset-env": { "version": "7.9.0", "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.9.0.tgz", "integrity": "sha512-712DeRXT6dyKAM/FMbQTV/FvRCms2hPCx+3weRjZ8iQVQWZejWWk1wwG6ViWMyqb/ouBbGOl5b6aCk0+j1NmsQ==", - "dev": true, "requires": { "@babel/compat-data": "^7.9.0", "@babel/helper-compilation-targets": "^7.8.7", @@ -2389,16 +1444,10 @@ "semver": "^5.5.0" }, "dependencies": { - "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" } } }, @@ -2406,186 +1455,85 @@ "version": "0.1.3", "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.3.tgz", "integrity": "sha512-Ra3JXOHBq2xd56xSF7lMKXdjBn3T772Y1Wet3yWnkDly9zHvJki029tAFzvAAK5cf4YV3yoxuP61crYRol6SVg==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.0.0", "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", "@babel/plugin-transform-dotall-regex": "^7.4.4", "@babel/types": "^7.4.4", "esutils": "^2.0.2" - }, - "dependencies": { - "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - } } }, "@babel/runtime": { - "version": "7.9.2", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.9.2.tgz", - "integrity": "sha512-NE2DtOdufG7R5vnfQUTehdTfNycfUANEtCa9PssN9O/xmTzP4E08UI797ixaei6hBEVL9BI/PsdJS5x7mWoB9Q==", - "dev": true, + "version": "7.10.2", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.10.2.tgz", + "integrity": "sha512-6sF3uQw2ivImfVIl62RZ7MXhO2tap69WeWK57vAaimT6AZbE4FbqjdEJIN1UqoD6wI6B+1n9UiagafH1sxjOtg==", "requires": { "regenerator-runtime": "^0.13.4" } }, "@babel/template": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.2.2.tgz", - "integrity": "sha512-zRL0IMM02AUDwghf5LMSSDEz7sBCO2YnNmpg3uWTZj/v1rcG2BmQUvaGU8GhU8BvfMh1k2KIAYZ7Ji9KXPUg7g==", - "dev": true, + "version": "7.8.6", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz", + "integrity": "sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==", "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.2.2", - "@babel/types": "^7.2.2" + "@babel/code-frame": "^7.8.3", + "@babel/parser": "^7.8.6", + "@babel/types": "^7.8.6" } }, "@babel/traverse": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.9.0.tgz", - "integrity": "sha512-jAZQj0+kn4WTHO5dUZkZKhbFrqZE7K5LAQ5JysMnmvGij+wOdr+8lWqPeW0BcF4wFwrEXXtdGO7wcV6YPJcf3w==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.9.0", - "@babel/helper-function-name": "^7.8.3", - "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/parser": "^7.9.0", - "@babel/types": "^7.9.0", + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.10.1.tgz", + "integrity": "sha512-C/cTuXeKt85K+p08jN6vMDz8vSV0vZcI0wmQ36o6mjbuo++kPMdpOYw23W2XH04dbRt9/nMEfA4W3eR21CD+TQ==", + "requires": { + "@babel/code-frame": "^7.10.1", + "@babel/generator": "^7.10.1", + "@babel/helper-function-name": "^7.10.1", + "@babel/helper-split-export-declaration": "^7.10.1", + "@babel/parser": "^7.10.1", + "@babel/types": "^7.10.1", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.13" }, "dependencies": { - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "dev": true, - "requires": { - "@babel/highlight": "^7.8.3" - } - }, - "@babel/helper-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz", - "integrity": "sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", - "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/highlight": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz", - "integrity": "sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.9.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.9.4.tgz", - "integrity": "sha512-bC49otXX6N0/VYhgOMh4gnP26E9xnDZK3TmbNpxYzzz9BQLBosQwfyOe9/cXUU3txYhTzLCbcqd5c8y/OmCjHA==", - "dev": true - }, - "@babel/template": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz", - "integrity": "sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6" - } - }, - "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", - "dev": true, + "@babel/generator": { + "version": "7.10.2", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.10.2.tgz", + "integrity": "sha512-AxfBNHNu99DTMvlUPlt1h2+Hn7knPpH5ayJ8OqDWSeLld+Fi2AYBTC/IejWDM9Edcii4UzZRCsbUt0WlSDsDsA==", "requires": { - "@babel/helper-validator-identifier": "^7.9.0", + "@babel/types": "^7.10.2", + "jsesc": "^2.5.1", "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" + "source-map": "^0.5.0" } }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" } } }, "@babel/types": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.3.0.tgz", - "integrity": "sha512-QkFPw68QqWU1/RVPyBe8SO7lXbPfjtqAxRYQKpFpaB8yMq7X2qAqfwK5LKoQufEkSmO5NQ70O6Kc3Afk03RwXw==", - "dev": true, + "version": "7.10.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.10.2.tgz", + "integrity": "sha512-AD3AwWBSz0AWF0AkCN9VPiWrvldXq+/e3cHa4J89vo4ymjz1XwrBFFVZmkJTsQIPNk+ZVomPSXUJqq8yyjZsng==", "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.10", + "@babel/helper-validator-identifier": "^7.10.1", + "lodash": "^4.17.13", "to-fast-properties": "^2.0.0" - }, - "dependencies": { - "lodash": { - "version": "4.17.15", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", - "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", - "dev": true - }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", - "dev": true - } } }, "@istanbuljs/schema": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.2.tgz", - "integrity": "sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==", - "dev": true + "integrity": "sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==" }, "@jsdevtools/coverage-istanbul-loader": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@jsdevtools/coverage-istanbul-loader/-/coverage-istanbul-loader-3.0.3.tgz", "integrity": "sha512-TAdNkeGB5Fe4Og+ZkAr1Kvn9by2sfL44IAHFtxlh1BA1XJ5cLpO9iSNki5opWESv3l3vSHsZ9BNKuqFKbEbFaA==", - "dev": true, "requires": { "convert-source-map": "^1.7.0", "istanbul-lib-instrument": "^4.0.1", @@ -2594,20 +1542,10 @@ "schema-utils": "^2.6.4" }, "dependencies": { - "convert-source-map": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", - "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.1" - } - }, "json5": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, "requires": { "minimist": "^1.2.0" } @@ -2616,7 +1554,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, "requires": { "big.js": "^5.2.2", "emojis-list": "^3.0.0", @@ -2631,35 +1568,44 @@ "integrity": "sha1-iCtGq6+i4ObYh8txobLC+j5tDcY=" }, "@ngrx/effects": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/@ngrx/effects/-/effects-9.0.0.tgz", - "integrity": "sha512-6Rq7FsNZK26HqYlpOGCglKLenIkVOOKE0y6D/8KXjEJ1JlZWi00fdI7poclBGjm9pvMBGXfJA8a9MKuxb/t9cA==" + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/@ngrx/effects/-/effects-9.2.0.tgz", + "integrity": "sha512-8V09zDIPehGpzgfcgyczelovsVYJvDQhN9wHt37K5A+YCG0CI8nj8FmKokHATwv/S62YqFrOVnr/TZacxpDhBw==" }, "@ngrx/entity": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/@ngrx/entity/-/entity-9.0.0.tgz", - "integrity": "sha512-0NQ+ppwiLuXtRZ2t79qdudbJhGlmuX2Qh6ORF9hplQoQn8Nl3BUp/TrH8SaAwISbg/B4EOhLWFmLVkXN8HZL8w==" + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/@ngrx/entity/-/entity-9.2.0.tgz", + "integrity": "sha512-xSnS4EmksfvIobl2KMpljE1RMYuJGq7j5cCb9TnlsXkEc7cUa0TyGviSsxceSpk9WKtKARPR/AcVrVCESucF6Q==" }, "@ngrx/store": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/@ngrx/store/-/store-9.0.0.tgz", - "integrity": "sha512-QnmfXJ4G2jp+vFaqT5Qfp6h0J9OHxfDKI2RbnMU93Tq1Xd/WVPzXnOQGjILBjwwWI6RFkSdIpUoQONr7VOW63g==" + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/@ngrx/store/-/store-9.2.0.tgz", + "integrity": "sha512-V8AI3mxbMztVpbZpALkLZYlGkofKcu9GaOCY5e+sZ1VcJ90oxhFjBpnmd6MuVdmhep1XAHALb1B8ZbBFn+xsgQ==" }, "@ngrx/store-devtools": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/@ngrx/store-devtools/-/store-devtools-9.0.0.tgz", - "integrity": "sha512-Vj8sj8GclbSbnYCS8eqZXTOYDdip1nnjKhkYClUg2oFPh67haaCmvh7TXITnX8PpgDtj5akF84Xw9/1HRiG8mg==" + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/@ngrx/store-devtools/-/store-devtools-9.2.0.tgz", + "integrity": "sha512-/FvgcpjO4IvwNFnRVoHGikAvckr6fxKf4NgYoTQ9giI8xavolLvuQUHxzH20legi5dgZz34ii2m2g1Q7OxEV8w==" }, "@ngtools/webpack": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-9.1.0.tgz", - "integrity": "sha512-kQ+1N/F+5tuUXiiaoqJwhcOIM0I93EEvF3xwpTLRm91wl2i8R1261LvsD/uQPrgLrZNGR6eFhFF1Izn2PnIjQA==", - "dev": true, + "version": "9.1.8", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-9.1.8.tgz", + "integrity": "sha512-2Y27PrHLMyrIDmuicjp2OU7KIr9bggwMLNZdjfpcuXlOPP/BYviuhgkkYsfJysrpDRUJUHlXRJG7OJbgyFM7gQ==", "requires": { - "@angular-devkit/core": "9.1.0", + "@angular-devkit/core": "9.1.8", "enhanced-resolve": "4.1.1", "rxjs": "6.5.4", "webpack-sources": "1.4.3" + }, + "dependencies": { + "rxjs": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", + "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", + "requires": { + "tslib": "^1.9.0" + } + } } }, "@ngx-translate/core": { @@ -2667,73 +1613,54 @@ "resolved": "https://registry.npmjs.org/@ngx-translate/core/-/core-12.1.2.tgz", "integrity": "sha512-ZudJsqIxTKlLmPoqK8gJY3UpMGujR0Xm7HfXL6AR79yGRS23QqpjAhMfx4v5qUCcHMmQ9/78bW8QJLfp31c7vQ==" }, - "@npmcli/ci-detect": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@npmcli/ci-detect/-/ci-detect-1.2.0.tgz", - "integrity": "sha512-JtktVH7ASBVIWsQTFlFpeOzhBJskvoBCTfeeRhhZy7ybATcUvwiwotZ8j5rkqUUyB69lIy/AvboiiiGBjYBKBA==", - "dev": true - }, - "@npmcli/git": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-2.0.1.tgz", - "integrity": "sha512-hVatexiBtx71F01Ars38Hr5AFUGmJgHAfQtRlO5fJlnAawRGSXwEFgjB5i3XdUUmElZU/RXy7fefN02dZKxgPw==", - "dev": true, + "@nodelib/fs.scandir": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz", + "integrity": "sha512-eGmwYQn3gxo4r7jdQnkrrN6bY478C3P+a/y72IJukF8LjB6ZHeB3c+Ehacj3sYeSmUXGlnA67/PmbM9CVwL7Dw==", "requires": { - "@npmcli/promise-spawn": "^1.1.0", - "mkdirp": "^1.0.3", - "npm-pick-manifest": "^6.0.0", - "promise-inflight": "^1.0.1", - "promise-retry": "^1.1.1", - "unique-filename": "^1.1.1", - "which": "^2.0.2" - }, - "dependencies": { - "mkdirp": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.3.tgz", - "integrity": "sha512-6uCP4Qc0sWsgMLy1EOqqS/3rjDHOEnsStVr/4vtAIK2Y5i2kA7lFFejYrpIyiN9w0pYf4ckeCYT9f1r1P9KX5g==", - "dev": true - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } + "@nodelib/fs.stat": "2.0.3", + "run-parallel": "^1.1.9" } }, - "@npmcli/installed-package-contents": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-1.0.5.tgz", - "integrity": "sha512-aKIwguaaqb6ViwSOFytniGvLPb9SMCUm39TgM3SfUo7n0TxUMbwoXfpwyvQ4blm10lzbAwTsvjr7QZ85LvTi4A==", - "dev": true, + "@nodelib/fs.stat": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz", + "integrity": "sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA==" + }, + "@nodelib/fs.walk": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz", + "integrity": "sha512-1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ==", "requires": { - "npm-bundled": "^1.1.1", - "npm-normalize-package-bin": "^1.0.1", - "read-package-json-fast": "^1.1.1", - "readdir-scoped-modules": "^1.1.0" + "@nodelib/fs.scandir": "2.1.3", + "fastq": "^1.6.0" } }, - "@npmcli/promise-spawn": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-1.1.0.tgz", - "integrity": "sha512-FwbuYN9KXBkloLeIR3xRgI8dyOdfK/KzaJlChszNuwmUXD1lHXfLlSeo4n4KrKt2udIK9K9/TzlnyCA3ubM2fA==", - "dev": true, + "@npmcli/move-file": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.0.1.tgz", + "integrity": "sha512-Uv6h1sT+0DrblvIrolFtbvM1FgWm+/sy4B3pvLp67Zys+thcukzS5ekn7HsZFGpWP4Q3fYJCljbWQE/XivMRLw==", "requires": { - "infer-owner": "^1.0.4" + "mkdirp": "^1.0.4" + }, + "dependencies": { + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" + } } }, "@rollup/plugin-commonjs": { - "version": "11.0.2", - "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-11.0.2.tgz", - "integrity": "sha512-MPYGZr0qdbV5zZj8/2AuomVpnRVXRU5XKXb3HVniwRoRCreGlf5kOE081isNWeiLIi6IYkwTX9zE0/c7V8g81g==", + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-11.1.0.tgz", + "integrity": "sha512-Ycr12N3ZPN96Fw2STurD21jMqzKwL9QuFhms3SD7KKRK7oaXUsBU9Zt0jL/rOPHiPYisI21/rXGO3jr9BnLHUA==", "dev": true, "requires": { - "@rollup/pluginutils": "^3.0.0", + "@rollup/pluginutils": "^3.0.8", + "commondir": "^1.0.1", "estree-walker": "^1.0.1", + "glob": "^7.1.2", "is-reference": "^1.1.2", "magic-string": "^0.25.2", "resolve": "^1.11.0" @@ -2744,85 +1671,40 @@ "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", "dev": true - }, - "magic-string": { - "version": "0.25.7", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", - "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==", - "dev": true, - "requires": { - "sourcemap-codec": "^1.4.4" - } - }, - "path-parse": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", - "dev": true - }, - "resolve": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.1.tgz", - "integrity": "sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w==", - "dev": true, - "requires": { - "path-parse": "^1.0.6" - } } } }, "@rollup/plugin-json": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@rollup/plugin-json/-/plugin-json-4.0.2.tgz", - "integrity": "sha512-t4zJMc98BdH42mBuzjhQA7dKh0t4vMJlUka6Fz0c+iO5IVnWaEMiYBy1uBj9ruHZzXBW23IPDGL9oCzBkQ9Udg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-json/-/plugin-json-4.1.0.tgz", + "integrity": "sha512-yfLbTdNS6amI/2OpmbiBoW12vngr5NW2jCJVZSBEz+H5KfUJZ2M7sDjk0U6GOOdCWFVScShte29o9NezJ53TPw==", "dev": true, "requires": { - "@rollup/pluginutils": "^3.0.4" + "@rollup/pluginutils": "^3.0.8" } }, "@rollup/plugin-node-resolve": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-7.1.1.tgz", - "integrity": "sha512-14ddhD7TnemeHE97a4rLOhobfYvUVcaYuqTnL8Ti7Jxi9V9Jr5LY7Gko4HZ5k4h4vqQM0gBQt6tsp9xXW94WPA==", + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-7.1.3.tgz", + "integrity": "sha512-RxtSL3XmdTAE2byxekYLnx+98kEUOrPHF/KRVjLH+DEIHy6kjIw7YINQzn+NXiH/NTrQLAwYs0GWB+csWygA9Q==", "dev": true, "requires": { - "@rollup/pluginutils": "^3.0.6", + "@rollup/pluginutils": "^3.0.8", "@types/resolve": "0.0.8", "builtin-modules": "^3.1.0", "is-module": "^1.0.0", "resolve": "^1.14.2" - }, - "dependencies": { - "builtin-modules": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.1.0.tgz", - "integrity": "sha512-k0KL0aWZuBt2lrxrcASWDfwOLMnodeQjodT/1SxEQAXsHANgo6ZC/VEaSEHCXt7aSTZ4/4H5LKa+tBXmW7Vtvw==", - "dev": true - }, - "path-parse": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", - "dev": true - }, - "resolve": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.1.tgz", - "integrity": "sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w==", - "dev": true, - "requires": { - "path-parse": "^1.0.6" - } - } } }, "@rollup/pluginutils": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.0.8.tgz", - "integrity": "sha512-rYGeAc4sxcZ+kPG/Tw4/fwJODC3IXHYDH4qusdN/b6aLw5LPUbzpecYbEJh4sVQGPFJxd2dBU4kc1H3oy9/bnw==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", "dev": true, "requires": { - "estree-walker": "^1.0.1" + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" }, "dependencies": { "estree-walker": { @@ -2834,37 +1716,40 @@ } }, "@schematics/angular": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-9.1.0.tgz", - "integrity": "sha512-qkehaITQ1S1udfnnBY5CXGWnk1iVFI8cZayjLUlRfD5w+6v9if3VIuqPssX96MqvkbjyRu1N214+ieaawzLmuA==", + "version": "9.1.8", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-9.1.8.tgz", + "integrity": "sha512-fjyAP9m4aF51OVdksRXCOF8BTyt96PqFmKK9G0kuwOzgfx2gPZNOO3wOZH6xFAMZ09y86VGzasZxZNeDdyN4sQ==", "dev": true, "requires": { - "@angular-devkit/core": "9.1.0", - "@angular-devkit/schematics": "9.1.0" + "@angular-devkit/core": "9.1.8", + "@angular-devkit/schematics": "9.1.8" } }, "@schematics/update": { - "version": "0.901.0", - "resolved": "https://registry.npmjs.org/@schematics/update/-/update-0.901.0.tgz", - "integrity": "sha512-u2VESL1dgOSGZK/wcWEz0WcCU/yv764zhzCQerCwUtbV1CISSSDZ6x+prVYDXOdxWBGtDos2MbCF3GEJJI1T+w==", + "version": "0.901.8", + "resolved": "https://registry.npmjs.org/@schematics/update/-/update-0.901.8.tgz", + "integrity": "sha512-v1tEYX6yM5vuwXW7AG7OZ4OtjqRwTo3kd69LVJyOdF/d9HlqaAFU301RuEsAPwOrPqZEQdTwklH1fNJnqgpB/w==", "dev": true, "requires": { - "@angular-devkit/core": "9.1.0", - "@angular-devkit/schematics": "9.1.0", + "@angular-devkit/core": "9.1.8", + "@angular-devkit/schematics": "9.1.8", "@yarnpkg/lockfile": "1.1.0", "ini": "1.3.5", "npm-package-arg": "^8.0.0", - "pacote": "11.1.4", + "pacote": "9.5.12", "rxjs": "6.5.4", "semver": "7.1.3", "semver-intersect": "1.4.0" }, "dependencies": { - "semver": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", - "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==", - "dev": true + "rxjs": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", + "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } } } }, @@ -2883,12 +1768,6 @@ "defer-to-connect": "^1.0.1" } }, - "@tootallnate/once": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.0.0.tgz", - "integrity": "sha512-KYyTT/T6ALPkIRd2Ge080X/BsXvy9O0hcWTtMWkPvwAwF99+vn6Dv4GzrFT/Nn1LePr+FFDbRXXlqmsy9lw2zA==", - "dev": true - }, "@turf/along": { "version": "5.1.5", "resolved": "https://registry.npmjs.org/@turf/along/-/along-5.1.5.tgz", @@ -3199,6 +2078,21 @@ "@turf/boolean-point-in-polygon": "^5.1.5", "@turf/helpers": "^5.1.5", "rbush": "^2.0.1" + }, + "dependencies": { + "quickselect": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-1.1.1.tgz", + "integrity": "sha512-qN0Gqdw4c4KGPsBOQafj6yj/PA6c/L63f6CaZ/DCF/xF4Esu3jVmKLUDYxghFx8Kb/O7y9tI7x2RjTSXwdK1iQ==" + }, + "rbush": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/rbush/-/rbush-2.0.2.tgz", + "integrity": "sha512-XBOuALcTm+O/H8G90b6pzu6nX6v2zCKiFG4BJho8a+bY6AER6t8uQUZdi5bomQc0AprCWhEGa7ncAbbRap0bRA==", + "requires": { + "quickselect": "^1.0.1" + } + } } }, "@turf/combine": { @@ -3561,6 +2455,21 @@ "@turf/meta": "^5.1.5", "@turf/union": "^5.1.5", "rbush": "^2.0.1" + }, + "dependencies": { + "quickselect": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-1.1.1.tgz", + "integrity": "sha512-qN0Gqdw4c4KGPsBOQafj6yj/PA6c/L63f6CaZ/DCF/xF4Esu3jVmKLUDYxghFx8Kb/O7y9tI7x2RjTSXwdK1iQ==" + }, + "rbush": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/rbush/-/rbush-2.0.2.tgz", + "integrity": "sha512-XBOuALcTm+O/H8G90b6pzu6nX6v2zCKiFG4BJho8a+bY6AER6t8uQUZdi5bomQc0AprCWhEGa7ncAbbRap0bRA==", + "requires": { + "quickselect": "^1.0.1" + } + } } }, "@turf/meta": { @@ -4163,6 +3072,21 @@ "@turf/helpers": "^5.1.5", "@turf/meta": "^5.1.5", "rbush": "^2.0.1" + }, + "dependencies": { + "quickselect": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-1.1.1.tgz", + "integrity": "sha512-qN0Gqdw4c4KGPsBOQafj6yj/PA6c/L63f6CaZ/DCF/xF4Esu3jVmKLUDYxghFx8Kb/O7y9tI7x2RjTSXwdK1iQ==" + }, + "rbush": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/rbush/-/rbush-2.0.2.tgz", + "integrity": "sha512-XBOuALcTm+O/H8G90b6pzu6nX6v2zCKiFG4BJho8a+bY6AER6t8uQUZdi5bomQc0AprCWhEGa7ncAbbRap0bRA==", + "requires": { + "quickselect": "^1.0.1" + } + } } }, "@turf/voronoi": { @@ -4176,15 +3100,15 @@ } }, "@types/auth0-js": { - "version": "8.11.5", - "resolved": "https://registry.npmjs.org/@types/auth0-js/-/auth0-js-8.11.5.tgz", - "integrity": "sha512-RlnHPZHmufsU2ONWszWJN22RjVAxm5xopyX424Lo180V6iTQYQhBzvyjg7yj2Da8lhtJpR4ooOhi3+heA59UXw==", + "version": "8.11.12", + "resolved": "https://registry.npmjs.org/@types/auth0-js/-/auth0-js-8.11.12.tgz", + "integrity": "sha512-HyoxyxZTjF+fn6uWnUbe+F55u31206UJnTH8f00AGswKRpr47WCRFZA+T0KfBpF8l8fwXfq9OT5eb5mAt7nIEw==", "dev": true }, "@types/cesium": { - "version": "1.54.5", - "resolved": "https://registry.npmjs.org/@types/cesium/-/cesium-1.54.5.tgz", - "integrity": "sha512-j8xgg0D+EjUiTafOAd+oP7mFycE/rIOpKZD2Cngmco7M3+Xw5a//SeyerYHc7uCERHXBH+58uvzofI9UpKn2hg==", + "version": "1.67.10", + "resolved": "https://registry.npmjs.org/@types/cesium/-/cesium-1.67.10.tgz", + "integrity": "sha512-TjOtWiiEhqq8SocLCxYUSemQezfUw2RoRhr2XtbGGWiJ1Y6eMnxM7lbKfMHJsrPgTXc7tiuUhewVTAeG0q0+1A==", "dev": true }, "@types/color-name": { @@ -4194,12 +3118,12 @@ "dev": true }, "@types/d3": { - "version": "4.13.1", - "resolved": "https://registry.npmjs.org/@types/d3/-/d3-4.13.1.tgz", - "integrity": "sha512-aJDD18fjLurxior2/3aZ+Trvu5kcCEwoujGGt6LrLXsdxv9KR1gCeJQOve7tUwvSQhrIUsXNfTHhXNnfRxnyaA==", + "version": "4.13.2", + "resolved": "https://registry.npmjs.org/@types/d3/-/d3-4.13.2.tgz", + "integrity": "sha512-jaMix9nFUgLeBSdU0md3usx5BaZfnO9Z0idyRmEq7mo7Ux7FpenW1SvyLXI0e59BtrgyPGNHMaZ0y2rJcSCMiw==", "dev": true, "requires": { - "@types/d3-array": "*", + "@types/d3-array": "^1", "@types/d3-axis": "*", "@types/d3-brush": "*", "@types/d3-chord": "*", @@ -4232,144 +3156,144 @@ } }, "@types/d3-array": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/@types/d3-array/-/d3-array-1.2.5.tgz", - "integrity": "sha512-kELkPCl/pCcelr5cXDoQyy3WOkLn8dVdYA+qmtQcuxX9gLoD4s12/CJf6Yxx4UvvuMKJHA8kUbdcH/3DY8SzNg==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/d3-array/-/d3-array-1.2.7.tgz", + "integrity": "sha512-51vHWuUyDOi+8XuwPrTw3cFqyh2Slg9y8COYkRfjCPG9TfYqY0hoNPzv/8BrcAy0FeQBzqEo/D/8Nk2caOQJnA==", "dev": true }, "@types/d3-axis": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@types/d3-axis/-/d3-axis-1.0.11.tgz", - "integrity": "sha512-cuigApCyCwYJxaQPghj+BqaxzbdRdT/lpZBMtF7EuEIJ61NMQ8yvGnqFvHCIgJEmUu2Wb2wiZqy9kiHi3Ddftg==", + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/@types/d3-axis/-/d3-axis-1.0.12.tgz", + "integrity": "sha512-BZISgSD5M8TgURyNtcPAmUB9sk490CO1Thb6/gIn0WZTt3Y50IssX+2Z0vTccoqZksUDTep0b+o4ofXslvNbqg==", "dev": true, "requires": { "@types/d3-selection": "*" } }, "@types/d3-brush": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@types/d3-brush/-/d3-brush-1.0.9.tgz", - "integrity": "sha512-mAx8IVc0luUHfk51pl0UN1vzybnAzLMUsvIwLt3fbsqqPkSXr+Pu1AxOPPeyNc27LhHJnfH/LCV7Jlv+Yzqu1A==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@types/d3-brush/-/d3-brush-1.1.1.tgz", + "integrity": "sha512-Exx14trm/q2cskHyMjCrdDllOQ35r1/pmZXaOIt8bBHwYNk722vWY3VxHvN0jdFFX7p2iL3+gD+cGny/aEmhlw==", "dev": true, "requires": { "@types/d3-selection": "*" } }, "@types/d3-chord": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@types/d3-chord/-/d3-chord-1.0.8.tgz", - "integrity": "sha512-F0ftYOo7FenAIxsRjXLt8vbij0NLDuVcL+xaGY7R9jUmF2Mrpj1T5XukBI9Cad+Ei7YSxEWREIO+CYcaKCl2qQ==", + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@types/d3-chord/-/d3-chord-1.0.9.tgz", + "integrity": "sha512-UA6lI9CVW5cT5Ku/RV4hxoFn4mKySHm7HEgodtfRthAj1lt9rKZEPon58vyYfk+HIAm33DtJJgZwMXy2QgyPXw==", "dev": true }, "@types/d3-collection": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/@types/d3-collection/-/d3-collection-1.0.7.tgz", - "integrity": "sha512-vR3BT0GwHc5y93Jv6bxn3zoxP/vGu+GdXu/r1ApjbP9dLk9I2g6NiV7iP/QMQSuFZd0It0n/qWrfXHxCWwHIkg==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/d3-collection/-/d3-collection-1.0.8.tgz", + "integrity": "sha512-y5lGlazdc0HNO0F3UUX2DPE7OmYvd9Kcym4hXwrJcNUkDaypR5pX+apuMikl9LfTxKItJsY9KYvzBulpCKyvuQ==", "dev": true }, "@types/d3-color": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@types/d3-color/-/d3-color-1.2.1.tgz", - "integrity": "sha512-xwb1tqvYNWllbHuhMFhiXk63Imf+QNq/dJdmbXmr2wQVnwGenCuj3/0IWJ9hdIFQIqzvhT7T37cvx93jtAsDbQ==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@types/d3-color/-/d3-color-1.2.2.tgz", + "integrity": "sha512-6pBxzJ8ZP3dYEQ4YjQ+NVbQaOflfgXq/JbDiS99oLobM2o72uAST4q6yPxHv6FOTCRC/n35ktuo8pvw/S4M7sw==", "dev": true }, "@types/d3-dispatch": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/@types/d3-dispatch/-/d3-dispatch-1.0.6.tgz", - "integrity": "sha512-xyWJQMr832vqhu6fD/YqX+MSFBWnkxasNhcStvlhqygXxj0cKqPft0wuGoH5TIq5ADXgP83qeNVa4R7bEYN3uA==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@types/d3-dispatch/-/d3-dispatch-1.0.7.tgz", + "integrity": "sha512-M+z84G7UKwK6hEPnGCSccOg8zJ3Nk2hgDQ9sCstHXgsFU0sMxlIZVKqKB5oxUDbALqQG6ucg0G9e8cmOSlishg==", "dev": true }, "@types/d3-drag": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@types/d3-drag/-/d3-drag-1.2.2.tgz", - "integrity": "sha512-+UKFeaMVTfSQvMO0PTzOyLXSr7OZbF2Rx1iNVwo2XsyiOsd4MSuLyJKUwRmGn67044QpbNzr+VD6/8iBBLExWw==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@types/d3-drag/-/d3-drag-1.2.3.tgz", + "integrity": "sha512-rWB5SPvkYVxW3sqUxHOJUZwifD0KqvKwvt1bhNqcLpW6Azsd0BJgRNcyVW8GAferaAk5r8dzeZnf9zKlg9+xMQ==", "dev": true, "requires": { "@types/d3-selection": "*" } }, "@types/d3-dsv": { - "version": "1.0.35", - "resolved": "https://registry.npmjs.org/@types/d3-dsv/-/d3-dsv-1.0.35.tgz", - "integrity": "sha512-QeH7cN9phcm68TDwpSGmzE71/JtGoKZ2rZJABNUMQ7nYIhHkm2UldqI1Cp2pjEo8ycSeutudjzq+Lfim/ZCadQ==", + "version": "1.0.36", + "resolved": "https://registry.npmjs.org/@types/d3-dsv/-/d3-dsv-1.0.36.tgz", + "integrity": "sha512-jbIWQ27QJcBNMZbQv0NSQMHnBDCmxghAxePxgyiPH1XPCRkOsTBei7jcdi3fDrUCGpCV3lKrSZFSlOkhUQVClA==", "dev": true }, "@types/d3-ease": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/@types/d3-ease/-/d3-ease-1.0.7.tgz", - "integrity": "sha1-k6MBhovp4VBh89RDQ7GrP4rLbwk=", + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@types/d3-ease/-/d3-ease-1.0.9.tgz", + "integrity": "sha512-U5ADevQ+W6fy32FVZZC9EXallcV/Mi12A5Tkd0My5MrC7T8soMQEhlDAg88XUWm0zoCQlB4XV0en/24LvuDB4Q==", "dev": true }, "@types/d3-force": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@types/d3-force/-/d3-force-1.1.1.tgz", - "integrity": "sha512-ePkELuaFWY4yOuf+Bvx5Xd+ihFiYG4bdnW0BlvigovIm8Sob2t76e9RGO6lybQbv6AlW9Icn9HuZ9fmdzEoJyg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@types/d3-force/-/d3-force-1.2.1.tgz", + "integrity": "sha512-jqK+I36uz4kTBjyk39meed5y31Ab+tXYN/x1dn3nZEus9yOHCLc+VrcIYLc/aSQ0Y7tMPRlIhLetulME76EiiA==", "dev": true }, "@types/d3-format": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@types/d3-format/-/d3-format-1.3.0.tgz", - "integrity": "sha512-ZiY4j3iJvAdOwzwW24WjlZbUNvqOsnPAMfPBmdXqxj3uKJbrzBlRrdGl5uC89pZpFs9Dc92E81KcwG2uEgkIZA==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@types/d3-format/-/d3-format-1.3.1.tgz", + "integrity": "sha512-KAWvReOKMDreaAwOjdfQMm0HjcUMlQG47GwqdVKgmm20vTd2pucj0a70c3gUSHrnsmo6H2AMrkBsZU2UhJLq8A==", "dev": true }, "@types/d3-geo": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@types/d3-geo/-/d3-geo-1.11.0.tgz", - "integrity": "sha512-/IbMHRG9cur+6hkWvBrRg3DnnUWtaSW8Bl6nu1OO1J8K25BxRYyLslyjIBbwlK0kV0haztlAR2LCIRuDc/U2LA==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@types/d3-geo/-/d3-geo-1.11.1.tgz", + "integrity": "sha512-Ox8WWOG3igDRoep/dNsGbOiSJYdUG3ew/6z0ETvHyAtXZVBjOE0S96zSSmzgl0gqQ3RdZjn2eeJOj9oRcMZPkQ==", "dev": true, "requires": { "@types/geojson": "*" } }, "@types/d3-hierarchy": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/@types/d3-hierarchy/-/d3-hierarchy-1.1.5.tgz", - "integrity": "sha512-DKhqURrURt2c7MsF9sHiF2wrWf2+yZR4Q9oIG026t/ZY4VWoM0Yd7UonaR+rygyReWcFSEjKC/+5A27TgD8R8g==", + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/@types/d3-hierarchy/-/d3-hierarchy-1.1.6.tgz", + "integrity": "sha512-vvSaIDf/Ov0o3KwMT+1M8+WbnnlRiGjlGD5uvk83a1mPCTd/E5x12bUJ/oP55+wUY/4Kb5kc67rVpVGJ2KUHxg==", "dev": true }, "@types/d3-interpolate": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@types/d3-interpolate/-/d3-interpolate-1.3.0.tgz", - "integrity": "sha512-Ng4ds7kPSvP/c3W3J5PPUQlgewif1tGBqCeh5lgY+UG82Y7H9zQ8c2gILsEFDLg7wRGOwnuKZ940Q/LSN14w9w==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@types/d3-interpolate/-/d3-interpolate-1.3.1.tgz", + "integrity": "sha512-z8Zmi08XVwe8e62vP6wcA+CNuRhpuUU5XPEfqpG0hRypDE5BWNthQHB1UNWWDB7ojCbGaN4qBdsWp5kWxhT1IQ==", "dev": true, "requires": { "@types/d3-color": "*" } }, "@types/d3-path": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/@types/d3-path/-/d3-path-1.0.7.tgz", - "integrity": "sha512-U8dFRG+8WhkLJr2sxZ9Cw/5WeRgBnNqMxGdA1+Z0+ZG6tK0s75OQ4OXnxeyfKuh6E4wQPY8OAKr1+iNDx01BEQ==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/d3-path/-/d3-path-1.0.8.tgz", + "integrity": "sha512-AZGHWslq/oApTAHu9+yH/Bnk63y9oFOMROtqPAtxl5uB6qm1x2lueWdVEjsjjV3Qc2+QfuzKIwIR5MvVBakfzA==", "dev": true }, "@types/d3-polygon": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/@types/d3-polygon/-/d3-polygon-1.0.6.tgz", - "integrity": "sha512-E6Kyodn9JThgLq20nxSbEce9ow5/ePgm9PX2EO6W1INIL4DayM7cFaiG10DStuamjYAd0X4rntW2q+GRjiIktw==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@types/d3-polygon/-/d3-polygon-1.0.7.tgz", + "integrity": "sha512-Xuw0eSjQQKs8jTiNbntWH0S+Xp+JyhqxmQ0YAQ3rDu6c3kKMFfgsaGN7Jv5u3zG6yVX/AsLP/Xs/QRjmi9g43Q==", "dev": true }, "@types/d3-quadtree": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/@types/d3-quadtree/-/d3-quadtree-1.0.6.tgz", - "integrity": "sha512-sphVuDdiSIaxLt9kQgebJW98pTktQ/xuN7Ysd8X68Rnjeg/q8+c36/ShlqU52qoKg9nob/JEHH1uQMdxURZidQ==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@types/d3-quadtree/-/d3-quadtree-1.0.7.tgz", + "integrity": "sha512-0ajFawWicfjsaCLh6NzxOyVDYhQAmMFbsiI3MPGLInorauHFEh9/Cl6UHNf+kt/J1jfoxKY/ZJaKAoDpbvde5Q==", "dev": true }, "@types/d3-queue": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@types/d3-queue/-/d3-queue-3.0.7.tgz", - "integrity": "sha512-nBbDO69wu1TUWqtGYAePw40jSPcQSt5VwAf7403vYopVCs3Rtbt5f47j2wbuMY4Z2x543VbTIlDo5gwdpV5O+Q==", + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/@types/d3-queue/-/d3-queue-3.0.8.tgz", + "integrity": "sha512-1FWOiI/MYwS5Z1Sa9EvS1Xet3isiVIIX5ozD6iGnwHonGcqL+RcC1eThXN5VfDmAiYt9Me9EWNEv/9J9k9RIKQ==", "dev": true }, "@types/d3-random": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@types/d3-random/-/d3-random-1.1.1.tgz", - "integrity": "sha512-jUPeBq1XKK9/5XasTvy5QAUwFeMsjma2yt/nP02yC2Tijovx7i/W5776U/HZugxc5SSmtpx4Z3g9KFVon0QrjQ==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@types/d3-random/-/d3-random-1.1.2.tgz", + "integrity": "sha512-Jui+Zn28pQw/3EayPKaN4c/PqTvqNbIPjHkgIIFnxne1FdwNjfHtAIsZIBMKlquQNrrMjFzCrlF2gPs3xckqaA==", "dev": true }, "@types/d3-request": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@types/d3-request/-/d3-request-1.0.4.tgz", - "integrity": "sha512-6ZVaWdXNjXEp3A+PB/vMTIZDfmEiSay3oDyy7HpsTmnSAWSsqfXYTE9RxMmZs8MY0QMFbtous0LiUSrv5uOGXA==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/d3-request/-/d3-request-1.0.5.tgz", + "integrity": "sha512-X+/c/qXp92o056C5Qbcp7jL27YRHpmIqOchHb/WB7NwFFqkBtAircqO7oKWv2GTtX4LyEqiDF9gqXsV+ldOlIg==", "dev": true, "requires": { "@types/d3-dsv": "*" @@ -4385,57 +3309,57 @@ } }, "@types/d3-selection": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/@types/d3-selection/-/d3-selection-1.3.4.tgz", - "integrity": "sha512-WQ6Ivy7VuUlZ/Grqc8493ZxC+y/fpvZLy5+8ELvmCr2hll8eJPUqC05l6fgRRA7kjqlpbH7lbmvY6pRKf6yzxw==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@types/d3-selection/-/d3-selection-1.4.1.tgz", + "integrity": "sha512-bv8IfFYo/xG6dxri9OwDnK3yCagYPeRIjTlrcdYJSx+FDWlCeBDepIHUpqROmhPtZ53jyna0aUajZRk0I3rXNA==", "dev": true }, "@types/d3-shape": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-1.3.0.tgz", - "integrity": "sha512-ERWJ8bNZjkzfWfPAlkN3XCqYOOsWTnqTX0jX2Bx+WLd2AfEl97WXr2igwssFc91MadrZLw7HNS/JTUZPQL5sZQ==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-1.3.2.tgz", + "integrity": "sha512-LtD8EaNYCaBRzHzaAiIPrfcL3DdIysc81dkGlQvv7WQP3+YXV7b0JJTtR1U3bzeRieS603KF4wUo+ZkJVenh8w==", "dev": true, "requires": { "@types/d3-path": "*" } }, "@types/d3-time": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-1.0.9.tgz", - "integrity": "sha512-m+D4NbQdDlTVaO7QgXAnatR3IDxQYDMBtRhgSCi5rs9R1LPq1y7/2aqa1FJ2IWjFm1mOV63swDxonnCDlHgHMA==", + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-1.0.10.tgz", + "integrity": "sha512-aKf62rRQafDQmSiv1NylKhIMmznsjRN+MnXRXTqHoqm0U/UZzVpdrtRnSIfdiLS616OuC1soYeX1dBg2n1u8Xw==", "dev": true }, "@types/d3-time-format": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@types/d3-time-format/-/d3-time-format-2.1.0.tgz", - "integrity": "sha512-/myT3I7EwlukNOX2xVdMzb8FRgNzRMpsZddwst9Ld/VFe6LyJyRp0s32l/V9XoUzk+Gqu56F/oGk6507+8BxrA==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@types/d3-time-format/-/d3-time-format-2.1.1.tgz", + "integrity": "sha512-tJSyXta8ZyJ52wDDHA96JEsvkbL6jl7wowGmuf45+fAkj5Y+SQOnz0N7/H68OWmPshPsAaWMQh+GAws44IzH3g==", "dev": true }, "@types/d3-timer": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@types/d3-timer/-/d3-timer-1.0.8.tgz", - "integrity": "sha512-AKUgQ/nljUFcUO2P3gK24weVI5XwUTdJvjoh8gJ0yxT4aJ+d7t2Or3TB+k9dEYl14BAjoj32D0ky+YzQSVszfg==", + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@types/d3-timer/-/d3-timer-1.0.9.tgz", + "integrity": "sha512-WvfJ3LFxBbWjqRGz9n7GJt08RrTHPJDVsIwwoCMROlqF+iDacYiAFjf9oqnq0mXpb2juA2N/qjKP+MKdal3YNQ==", "dev": true }, "@types/d3-transition": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@types/d3-transition/-/d3-transition-1.1.3.tgz", - "integrity": "sha512-1EukXNuVu/z2G1GZpZagzFJnie9C5zze17ox/vhTgGXNy46rYAm4UkhLLlUeeZ1ndq88k95SOeC8898RpKMLOQ==", + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/@types/d3-transition/-/d3-transition-1.1.6.tgz", + "integrity": "sha512-/F+O2r4oz4G9ATIH3cuSCMGphAnl7VDx7SbENEK0NlI/FE8Jx2oiIrv0uTrpg7yF/AmuWbqp7AGdEHAPIh24Gg==", "dev": true, "requires": { "@types/d3-selection": "*" } }, "@types/d3-voronoi": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/@types/d3-voronoi/-/d3-voronoi-1.1.8.tgz", - "integrity": "sha512-zqNhW7QsYQGlfOdrwPNPG3Wk64zUa4epKRurkJ/dVc6oeXrB+iTDt8sRZ0KZKOOXvvfa1dcdB0e45TZeLBiodQ==", + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/@types/d3-voronoi/-/d3-voronoi-1.1.9.tgz", + "integrity": "sha512-DExNQkaHd1F3dFPvGA/Aw2NGyjMln6E9QzsiqOcBgnE+VInYnFBHBBySbZQts6z6xD+5jTfKCP7M4OqMyVjdwQ==", "dev": true }, "@types/d3-zoom": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/@types/d3-zoom/-/d3-zoom-1.7.3.tgz", - "integrity": "sha512-Tz7+z4+Id0MxERw/ozinC5QHJmGLARs9Mpi/7VVfiR+9AHcFGe9q+fjQa30/oPNY8WPuCh5p5uuXmBYAJ3y91Q==", + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/@types/d3-zoom/-/d3-zoom-1.7.4.tgz", + "integrity": "sha512-5jnFo/itYhJeB2khO/lKe730kW/h2EbKMOvY0uNp3+7NdPm4w63DwPEMxifQZ7n902xGYK5DdU67FmToSoy4VA==", "dev": true, "requires": { "@types/d3-interpolate": "*", @@ -4448,16 +3372,10 @@ "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", "dev": true }, - "@types/events": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz", - "integrity": "sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g==", - "dev": true - }, "@types/file-saver": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@types/file-saver/-/file-saver-1.3.0.tgz", - "integrity": "sha512-fC12hKtEzVkrV/ZRcrmqvpHG/TMYDZtgpAmgMUA4F7KneDaQeFMwmPz8AfygKKJMqsdTi8bL+E+fciaaMLxUhg==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@types/file-saver/-/file-saver-1.3.1.tgz", + "integrity": "sha512-A+lNc0nnhtX3iTLEYd/DisKTZdNKTf1bN0aSfQD/fG8bQ6SfUe5u8Fm2ab8qQHaMY5GVZumAXLnYptwX+mmQgg==", "dev": true }, "@types/geojson": { @@ -4467,14 +3385,19 @@ "dev": true }, "@types/glob": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.1.tgz", - "integrity": "sha512-1Bh06cbWJUHMC97acuD6UMG29nMt0Aqz1vF3guLfG+kHHJhy3AyohZFFxYk2f7Q1SQIrNwvncxAE0N/9s70F2w==", - "dev": true, + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.2.tgz", + "integrity": "sha512-VgNIkxK+j7Nz5P7jvUZlRvhuPSmsEfS03b0alKcq5V/STUKAa3Plemsn5mrQUO7am6OErJ4rhGEGJbACclrtRA==", "requires": { - "@types/events": "*", "@types/minimatch": "*", "@types/node": "*" + }, + "dependencies": { + "@types/node": { + "version": "14.0.13", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.13.tgz", + "integrity": "sha512-rouEWBImiRaSJsVA+ITTFM6ZxibuAlTuNOCyxVbwreu6k6+ujs7DfnU9o+PShFhET78pMBl3eH+AGSI5eOTkPA==" + } } }, "@types/jasmine": { @@ -4484,14 +3407,19 @@ "dev": true }, "@types/jasminewd2": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/jasminewd2/-/jasminewd2-2.0.3.tgz", - "integrity": "sha512-hYDVmQZT5VA2kigd4H4bv7vl/OhlympwREUemqBdOqtrYTo5Ytm12a5W5/nGgGYdanGVxj0x/VhZ7J3hOg/YKg==", + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/@types/jasminewd2/-/jasminewd2-2.0.8.tgz", + "integrity": "sha512-d9p31r7Nxk0ZH0U39PTH0hiDlJ+qNVGjlt1ucOoTUptxb2v+Y5VMnsxfwN+i3hK4yQnqBi3FMmoMFcd1JHDxdg==", "dev": true, "requires": { "@types/jasmine": "*" } }, + "@types/json-schema": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.5.tgz", + "integrity": "sha512-7+2BITlgjgDhH0vvwZU/HZJVyk+2XUlvxXe8dFMedNX/aMkaOq++rMAFXc0tM7ij15QaWlbdQASBR9dihi+bDQ==" + }, "@types/lodash": { "version": "4.14.88", "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.88.tgz", @@ -4501,13 +3429,12 @@ "@types/minimatch": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", - "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==", - "dev": true + "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "12.12.32", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.32.tgz", - "integrity": "sha512-44/reuCrwiQEsXud3I5X3sqI5jIXAmHB5xoiyKUw965olNHF3IWKjBLKK3F9LOSUZmK+oDt8jmyO637iX+hMgA==", + "version": "12.12.47", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.47.tgz", + "integrity": "sha512-yzBInQFhdY8kaZmqoL2+3U5dSTMrKaYcb561VU+lDzAYvqt+2lojvBEy+hmpSNuXnPTx7m9+04CzWYOUqWME2A==", "dev": true }, "@types/normalize-package-data": { @@ -4517,10 +3444,9 @@ "dev": true }, "@types/q": { - "version": "0.0.32", - "resolved": "https://registry.npmjs.org/@types/q/-/q-0.0.32.tgz", - "integrity": "sha1-vShOV8hPEyXacCur/IKlMoGQwMU=", - "dev": true + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.4.tgz", + "integrity": "sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug==" }, "@types/resolve": { "version": "0.0.8", @@ -4538,33 +3464,35 @@ "dev": true }, "@types/selenium-webdriver": { - "version": "3.0.13", - "resolved": "https://registry.npmjs.org/@types/selenium-webdriver/-/selenium-webdriver-3.0.13.tgz", - "integrity": "sha512-rI0LGoMiZGUM+tjDakQpwZOvcmQoubiJ7hxqrYU12VRxBuGGvOThxrBOU/QmJKlKg1WG6FMzuvcEyLffvVSsmw==", + "version": "3.0.17", + "resolved": "https://registry.npmjs.org/@types/selenium-webdriver/-/selenium-webdriver-3.0.17.tgz", + "integrity": "sha512-tGomyEuzSC1H28y2zlW6XPCaDaXFaD6soTdb4GNdmte2qfHtrKqhy0ZFs4r/1hpazCfEZqeTSRLvSasmEx89uw==", "dev": true }, "@types/source-list-map": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz", - "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==", - "dev": true + "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==" }, "@types/webpack-sources": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-0.1.7.tgz", - "integrity": "sha512-XyaHrJILjK1VHVC4aVlKsdNN5KBTwufMb43cQs+flGxtPAf/1Qwl8+Q0tp5BwEGaI8D6XT1L+9bSWXckgkjTLw==", - "dev": true, + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-0.1.8.tgz", + "integrity": "sha512-JHB2/xZlXOjzjBB6fMOpH1eQAfsrpqVVIbneE0Rok16WXwFaznaI5vfg75U5WgGJm7V9W1c4xeRQDjX/zwvghA==", "requires": { "@types/node": "*", "@types/source-list-map": "*", "source-map": "^0.6.1" }, "dependencies": { + "@types/node": { + "version": "14.0.13", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.13.tgz", + "integrity": "sha512-rouEWBImiRaSJsVA+ITTFM6ZxibuAlTuNOCyxVbwreu6k6+ujs7DfnU9o+PShFhET78pMBl3eH+AGSI5eOTkPA==" + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" } } }, @@ -4578,7 +3506,6 @@ "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.8.5.tgz", "integrity": "sha512-aJMfngIZ65+t71C3y2nBBg5FFG0Okt9m0XEgWZ7Ywgn1oMAT8cNwx00Uv1cQyHtidq0Xn94R4TAywO+LCQ+ZAQ==", - "dev": true, "requires": { "@webassemblyjs/helper-module-context": "1.8.5", "@webassemblyjs/helper-wasm-bytecode": "1.8.5", @@ -4588,26 +3515,22 @@ "@webassemblyjs/floating-point-hex-parser": { "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.8.5.tgz", - "integrity": "sha512-9p+79WHru1oqBh9ewP9zW95E3XAo+90oth7S5Re3eQnECGq59ly1Ri5tsIipKGpiStHsUYmY3zMLqtk3gTcOtQ==", - "dev": true + "integrity": "sha512-9p+79WHru1oqBh9ewP9zW95E3XAo+90oth7S5Re3eQnECGq59ly1Ri5tsIipKGpiStHsUYmY3zMLqtk3gTcOtQ==" }, "@webassemblyjs/helper-api-error": { "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.8.5.tgz", - "integrity": "sha512-Za/tnzsvnqdaSPOUXHyKJ2XI7PDX64kWtURyGiJJZKVEdFOsdKUCPTNEVFZq3zJ2R0G5wc2PZ5gvdTRFgm81zA==", - "dev": true + "integrity": "sha512-Za/tnzsvnqdaSPOUXHyKJ2XI7PDX64kWtURyGiJJZKVEdFOsdKUCPTNEVFZq3zJ2R0G5wc2PZ5gvdTRFgm81zA==" }, "@webassemblyjs/helper-buffer": { "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.8.5.tgz", - "integrity": "sha512-Ri2R8nOS0U6G49Q86goFIPNgjyl6+oE1abW1pS84BuhP1Qcr5JqMwRFT3Ah3ADDDYGEgGs1iyb1DGX+kAi/c/Q==", - "dev": true + "integrity": "sha512-Ri2R8nOS0U6G49Q86goFIPNgjyl6+oE1abW1pS84BuhP1Qcr5JqMwRFT3Ah3ADDDYGEgGs1iyb1DGX+kAi/c/Q==" }, "@webassemblyjs/helper-code-frame": { "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.8.5.tgz", "integrity": "sha512-VQAadSubZIhNpH46IR3yWO4kZZjMxN1opDrzePLdVKAZ+DFjkGD/rf4v1jap744uPVU6yjL/smZbRIIJTOUnKQ==", - "dev": true, "requires": { "@webassemblyjs/wast-printer": "1.8.5" } @@ -4615,14 +3538,12 @@ "@webassemblyjs/helper-fsm": { "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.8.5.tgz", - "integrity": "sha512-kRuX/saORcg8se/ft6Q2UbRpZwP4y7YrWsLXPbbmtepKr22i8Z4O3V5QE9DbZK908dh5Xya4Un57SDIKwB9eow==", - "dev": true + "integrity": "sha512-kRuX/saORcg8se/ft6Q2UbRpZwP4y7YrWsLXPbbmtepKr22i8Z4O3V5QE9DbZK908dh5Xya4Un57SDIKwB9eow==" }, "@webassemblyjs/helper-module-context": { "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.8.5.tgz", "integrity": "sha512-/O1B236mN7UNEU4t9X7Pj38i4VoU8CcMHyy3l2cV/kIF4U5KoHXDVqcDuOs1ltkac90IM4vZdHc52t1x8Yfs3g==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.8.5", "mamacro": "^0.0.3" @@ -4631,14 +3552,12 @@ "@webassemblyjs/helper-wasm-bytecode": { "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.8.5.tgz", - "integrity": "sha512-Cu4YMYG3Ddl72CbmpjU/wbP6SACcOPVbHN1dI4VJNJVgFwaKf1ppeFJrwydOG3NDHxVGuCfPlLZNyEdIYlQ6QQ==", - "dev": true + "integrity": "sha512-Cu4YMYG3Ddl72CbmpjU/wbP6SACcOPVbHN1dI4VJNJVgFwaKf1ppeFJrwydOG3NDHxVGuCfPlLZNyEdIYlQ6QQ==" }, "@webassemblyjs/helper-wasm-section": { "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.8.5.tgz", "integrity": "sha512-VV083zwR+VTrIWWtgIUpqfvVdK4ff38loRmrdDBgBT8ADXYsEZ5mPQ4Nde90N3UYatHdYoDIFb7oHzMncI02tA==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.8.5", "@webassemblyjs/helper-buffer": "1.8.5", @@ -4650,7 +3569,6 @@ "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.8.5.tgz", "integrity": "sha512-aaCvQYrvKbY/n6wKHb/ylAJr27GglahUO89CcGXMItrOBqRarUMxWLJgxm9PJNuKULwN5n1csT9bYoMeZOGF3g==", - "dev": true, "requires": { "@xtuc/ieee754": "^1.2.0" } @@ -4659,7 +3577,6 @@ "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.8.5.tgz", "integrity": "sha512-plYUuUwleLIziknvlP8VpTgO4kqNaH57Y3JnNa6DLpu/sGcP6hbVdfdX5aHAV716pQBKrfuU26BJK29qY37J7A==", - "dev": true, "requires": { "@xtuc/long": "4.2.2" } @@ -4667,14 +3584,12 @@ "@webassemblyjs/utf8": { "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.8.5.tgz", - "integrity": "sha512-U7zgftmQriw37tfD934UNInokz6yTmn29inT2cAetAsaU9YeVCveWEwhKL1Mg4yS7q//NGdzy79nlXh3bT8Kjw==", - "dev": true + "integrity": "sha512-U7zgftmQriw37tfD934UNInokz6yTmn29inT2cAetAsaU9YeVCveWEwhKL1Mg4yS7q//NGdzy79nlXh3bT8Kjw==" }, "@webassemblyjs/wasm-edit": { "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.8.5.tgz", "integrity": "sha512-A41EMy8MWw5yvqj7MQzkDjU29K7UJq1VrX2vWLzfpRHt3ISftOXqrtojn7nlPsZ9Ijhp5NwuODuycSvfAO/26Q==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.8.5", "@webassemblyjs/helper-buffer": "1.8.5", @@ -4690,7 +3605,6 @@ "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.8.5.tgz", "integrity": "sha512-BCZBT0LURC0CXDzj5FXSc2FPTsxwp3nWcqXQdOZE4U7h7i8FqtFK5Egia6f9raQLpEKT1VL7zr4r3+QX6zArWg==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.8.5", "@webassemblyjs/helper-wasm-bytecode": "1.8.5", @@ -4703,7 +3617,6 @@ "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.8.5.tgz", "integrity": "sha512-HKo2mO/Uh9A6ojzu7cjslGaHaUU14LdLbGEKqTR7PBKwT6LdPtLLh9fPY33rmr5wcOMrsWDbbdCHq4hQUdd37Q==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.8.5", "@webassemblyjs/helper-buffer": "1.8.5", @@ -4715,7 +3628,6 @@ "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.8.5.tgz", "integrity": "sha512-pi0SYE9T6tfcMkthwcgCpL0cM9nRYr6/6fjgDtL6q/ZqKHdMWvxitRi5JcZ7RI4SNJJYnYNaWy5UUrHQy998lw==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.8.5", "@webassemblyjs/helper-api-error": "1.8.5", @@ -4729,7 +3641,6 @@ "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.8.5.tgz", "integrity": "sha512-daXC1FyKWHF1i11obK086QRlsMsY4+tIOKgBqI1lxAnkp9xe9YMcgOxm9kLe+ttjs5aWV2KKE1TWJCN57/Btsg==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.8.5", "@webassemblyjs/floating-point-hex-parser": "1.8.5", @@ -4743,7 +3654,6 @@ "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.8.5.tgz", "integrity": "sha512-w0U0pD4EhlnvRyeJzBqaVSJAo9w/ce7/WPogeXLzGkO6hzhr4GnQIZ4W4uUt5b9ooAaXPtnXlj0gzsXEOUNYMg==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.8.5", "@webassemblyjs/wast-parser": "1.8.5", @@ -4753,14 +3663,12 @@ "@xtuc/ieee754": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==" }, "@xtuc/long": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==" }, "@yarnpkg/lockfile": { "version": "1.1.0", @@ -4768,37 +3676,29 @@ "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", "dev": true }, + "JSONStream": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", + "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", + "dev": true, + "requires": { + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" + } + }, "abbrev": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz", - "integrity": "sha1-kbR5JYinc4wl813W9jdSovh3YTU=", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", "dev": true }, "accepts": { "version": "1.3.7", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", - "dev": true, "requires": { "mime-types": "~2.1.24", "negotiator": "0.6.2" - }, - "dependencies": { - "mime-db": { - "version": "1.42.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.42.0.tgz", - "integrity": "sha512-UbfJCR4UAVRNgMpfImz05smAXK7+c+ZntjaA26ANtkXLlOe947Aag5zdIcKQULAiF9Cq4WxBi9jUs5zkA84bYQ==", - "dev": true - }, - "mime-types": { - "version": "2.1.25", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.25.tgz", - "integrity": "sha512-5KhStqB5xpTAeGqKBAMgwaYMnQik7teQN4IAzC7npDv6kzeU6prfkR67bc87J1kWMPGkoaZSq1npmexMgkmEVg==", - "dev": true, - "requires": { - "mime-db": "1.42.0" - } - } } }, "accord": { @@ -4823,16 +3723,11 @@ "when": "^3.7.8" }, "dependencies": { - "uglify-js": { - "version": "2.8.29", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", - "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", - "dev": true, - "requires": { - "source-map": "~0.5.1", - "uglify-to-browserify": "~1.0.0", - "yargs": "~3.10.0" - } + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true }, "when": { "version": "3.7.8", @@ -4845,13 +3740,12 @@ "acorn": { "version": "6.4.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", - "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", - "dev": true + "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==" }, "adm-zip": { - "version": "0.4.13", - "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.13.tgz", - "integrity": "sha512-fERNJX8sOXfel6qCBCMPvZLzENBEhZTzKqg6vrOW5pvoEaQuJhRU4ndTAh6lHOxn1I6jnz2NHra56ZODM751uw==", + "version": "0.4.14", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.14.tgz", + "integrity": "sha512-/9aQCnQHF+0IiCl0qhXoK7qs//SwYE7zX8lsr/DNk1BRAHYxeLZPL4pguwK29gUEqasYQjqPtEpDRSWEkdHn9g==", "dev": true }, "after": { @@ -4861,114 +3755,52 @@ "dev": true }, "agent-base": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.0.tgz", - "integrity": "sha512-j1Q7cSCqN+AwrmDd+pzgqc0/NpC655x2bUf5ZjRIO77DcNBFmh+OgRNzF6OKdCC9RSCb19fGd99+bhXFdkRNqw==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz", + "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==", "dev": true, "requires": { - "debug": "4" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } + "es6-promisify": "^5.0.0" } }, "agentkeepalive": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.1.0.tgz", - "integrity": "sha512-CW/n1wxF8RpEuuiq6Vbn9S8m0VSYDMnZESqaJ6F2cWN9fY8rei2qaxweIaRgq+ek8TqfoFIsUjaGNKGGEHElSg==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-3.5.2.tgz", + "integrity": "sha512-e0L/HNe6qkQ7H19kTlRRqUibEAwDK5AFk6y3PtMsuut2VAH6+Q4xZml1tNDJD7kSAyqmbG/K08K5WEJYtUrSlQ==", "dev": true, "requires": { - "debug": "^4.1.0", - "depd": "^1.1.2", "humanize-ms": "^1.2.1" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } } }, "aggregate-error": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.1.tgz", "integrity": "sha512-quoaXsZ9/BLNae5yiNoUz+Nhkwz83GhWwtYFglcjEQB2NDHCIpApbqXxIFnm4Pq/Nvhrsq5sYJFyohrrxnTGAA==", - "dev": true, "requires": { "clean-stack": "^2.0.0", "indent-string": "^4.0.0" - }, - "dependencies": { - "indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true - } } }, "ajv": { "version": "6.12.0", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz", "integrity": "sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==", - "dev": true, "requires": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", "json-schema-traverse": "^0.4.1", "uri-js": "^4.2.2" - }, - "dependencies": { - "fast-deep-equal": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz", - "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - } } }, "ajv-errors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", - "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", - "dev": true + "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==" }, "ajv-keywords": { "version": "3.4.1", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.4.1.tgz", - "integrity": "sha512-RO1ibKvd27e6FEShVFfPALuHI3WjSVNeK5FIsmme/LYRNxjKuNj+Dt7bucLa6NdSv3JcVTyMlm9kGR84z1XpaQ==", - "dev": true + "integrity": "sha512-RO1ibKvd27e6FEShVFfPALuHI3WjSVNeK5FIsmme/LYRNxjKuNj+Dt7bucLa6NdSv3JcVTyMlm9kGR84z1XpaQ==" }, "align-text": { "version": "0.1.4", @@ -4995,8 +3827,7 @@ "alphanum-sort": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/alphanum-sort/-/alphanum-sort-1.0.2.tgz", - "integrity": "sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM=", - "dev": true + "integrity": "sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM=" }, "angular2-uuid": { "version": "1.1.1", @@ -5010,53 +3841,12 @@ "dev": true, "requires": { "string-width": "^3.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } } }, "ansi-colors": { "version": "3.2.4", "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.4.tgz", - "integrity": "sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==", - "dev": true + "integrity": "sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==" }, "ansi-cyan": { "version": "0.1.1", @@ -5088,8 +3878,7 @@ "ansi-html": { "version": "0.0.7", "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz", - "integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=", - "dev": true + "integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=" }, "ansi-red": { "version": "0.1.1", @@ -5103,14 +3892,12 @@ "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" }, "ansi-styles": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, "requires": { "color-convert": "^1.9.0" } @@ -5122,9 +3909,9 @@ "dev": true }, "ansy": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/ansy/-/ansy-1.0.13.tgz", - "integrity": "sha512-zO9+N/z1cEDQOjJSaqeUQTorTfl1sTfjx7qlQ/IMIE//UgDfmVqrRy9Aop+m0gFZe2+1VpqXw5PZXSbS/LQRVA==", + "version": "1.0.14", + "resolved": "https://registry.npmjs.org/ansy/-/ansy-1.0.14.tgz", + "integrity": "sha512-6EZU3oFiAFR5KdxMfBC7L9A5WtMSO9rXietMuQ0STnHx2n2qgrDld+7JkT2j9FHWRVOHekdH5nMs5Hry4oJzyg==", "dev": true, "optional": true, "requires": { @@ -5160,13 +3947,12 @@ "dev": true }, "anymatch": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", - "dev": true, + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" } }, "app-root-path": { @@ -5182,14 +3968,6 @@ "dev": true, "requires": { "buffer-equal": "^1.0.0" - }, - "dependencies": { - "buffer-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-1.0.0.tgz", - "integrity": "sha1-WWFrSYME1Var1GaWayLu2j7KX74=", - "dev": true - } } }, "append-transform": { @@ -5204,8 +3982,7 @@ "aproba": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" }, "archy": { "version": "1.0.0", @@ -5213,11 +3990,15 @@ "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", "dev": true }, + "arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==" + }, "argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, "requires": { "sprintf-js": "~1.0.2" } @@ -5235,8 +4016,7 @@ "arr-diff": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "dev": true + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" }, "arr-filter": { "version": "1.1.2", @@ -5250,8 +4030,7 @@ "arr-flatten": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", - "dev": true + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" }, "arr-map": { "version": "2.0.2", @@ -5265,8 +4044,7 @@ "arr-union": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", - "dev": true + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" }, "array-differ": { "version": "1.0.0", @@ -5289,8 +4067,7 @@ "array-flatten": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", - "dev": true + "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==" }, "array-initial": { "version": "1.1.0", @@ -5367,25 +4144,19 @@ } }, "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", - "dev": true, - "requires": { - "array-uniq": "^1.0.1" - } + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==" }, "array-uniq": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", - "dev": true + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" }, "array-unique": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" }, "arraybuffer.slice": { "version": "0.0.7", @@ -5402,13 +4173,12 @@ "asap": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=", - "dev": true + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" }, "asciify-pixel": { - "version": "1.2.12", - "resolved": "https://registry.npmjs.org/asciify-pixel/-/asciify-pixel-1.2.12.tgz", - "integrity": "sha512-fGNWJ6p/djfjlU4hqIs6LpoaVoTEATB1dZLRJ0EGoAycf4MWWzWCu8fLI3449JJC7XhDTJ5J0USKTKz7wkYZGw==", + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/asciify-pixel/-/asciify-pixel-1.2.13.tgz", + "integrity": "sha512-WzynlA81mEYVspO1i5lb+LuY3mh7AKguWTEYQjwp+zDTMEROuNt6T9MFZYBBC/SBgwji8nx6JA9MxRPLblJeSA==", "dev": true, "optional": true, "requires": { @@ -5421,9 +4191,9 @@ } }, "asciify-pixel-matrix": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/asciify-pixel-matrix/-/asciify-pixel-matrix-1.0.12.tgz", - "integrity": "sha512-huTyfgwdGbbvz7JoQFpuRiunoeW6wzcP69/vL+kT+QRiV09SpGxd7qozfKgd2PvgVi9kzYYZlcdYsiD7+lOrtQ==", + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/asciify-pixel-matrix/-/asciify-pixel-matrix-1.0.13.tgz", + "integrity": "sha512-x7SCpYX76K2Ano4nSEpTD0die9FD58HGlUVI2JA/xiIzjV15UCZ2BO+BMebj6UIiNjhroDd80eZT4at5pa78Bg==", "dev": true, "optional": true, "requires": { @@ -5432,27 +4202,34 @@ } }, "asn1": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", - "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=", - "dev": true + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "requires": { + "safer-buffer": "~2.1.0" + } }, "asn1.js": { "version": "4.10.1", "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", - "dev": true, "requires": { "bn.js": "^4.0.0", "inherits": "^2.0.1", "minimalistic-assert": "^1.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" + } } }, "assert": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", - "dev": true, "requires": { "object-assign": "^4.1.1", "util": "0.10.3" @@ -5461,14 +4238,12 @@ "inherits": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", - "dev": true + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" }, "util": { "version": "0.10.3", "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", - "dev": true, "requires": { "inherits": "2.0.1" } @@ -5478,21 +4253,18 @@ "assert-plus": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" }, "assign-symbols": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", - "dev": true + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" }, "assured": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/assured/-/assured-1.0.12.tgz", - "integrity": "sha512-QR2Tb3fTIHed2XQr9gukFxDI8BJOKbk02k2a86y+BAiOuHUNL0tPlRbnK84XfXVU/L4MQZQf9x+O391xlAYh8g==", + "version": "1.0.14", + "resolved": "https://registry.npmjs.org/assured/-/assured-1.0.14.tgz", + "integrity": "sha512-srUv3dc59TE0cAwERnbh9f5vIqjitF39dCSBB8C3cqnHKjYkEpKAPUouGcfpM489V+n6cw12Ipgx8AMd1FvYBw==", "dev": true, - "optional": true, "requires": { "noop6": "^1.0.1", "sliced": "^1.0.1" @@ -5511,45 +4283,34 @@ "dev": true }, "async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.2.tgz", - "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==", - "dev": true, + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", "requires": { - "lodash": "^4.17.11" + "lodash": "^4.17.14" } }, "async-done": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/async-done/-/async-done-1.3.1.tgz", - "integrity": "sha512-R1BaUeJ4PMoLNJuk+0tLJgjmEqVsdN118+Z8O+alhnQDQgy0kmD5Mqi0DNEmMx2LM0Ed5yekKu+ZXYvIHceicg==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/async-done/-/async-done-1.3.2.tgz", + "integrity": "sha512-uYkTP8dw2og1tu1nmza1n1CMW0qb8gWWlwqMmLb7MhBVs4BXrFziT6HXUd+/RlRA/i4H9AkofYloUbs1fwMqlw==", "dev": true, "requires": { "end-of-stream": "^1.1.0", "once": "^1.3.2", - "process-nextick-args": "^1.0.7", + "process-nextick-args": "^2.0.0", "stream-exhaust": "^1.0.1" - }, - "dependencies": { - "process-nextick-args": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", - "dev": true - } } }, "async-each": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", - "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=", - "dev": true + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", + "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==" }, "async-limiter": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", - "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", - "dev": true + "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==" }, "async-settle": { "version": "1.0.0", @@ -5572,29 +4333,28 @@ "dev": true }, "atob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.1.tgz", - "integrity": "sha1-ri1acpR38onWDdf5amMUoi3Wwio=", - "dev": true + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, "auth0-js": { - "version": "9.7.3", - "resolved": "https://registry.npmjs.org/auth0-js/-/auth0-js-9.7.3.tgz", - "integrity": "sha512-iZAqoN4EbsNCS/3VkFPNb4glTyj8hq57T7gcUF+XH8Rua7hBTUzpb101K9zqcdUIBilIdF9XBLCTJ4JGgZ/oFA==", + "version": "9.13.2", + "resolved": "https://registry.npmjs.org/auth0-js/-/auth0-js-9.13.2.tgz", + "integrity": "sha512-gWlf+X3XhCT9JboYpGviflv0pHcaHFPGtkLXiebyJohHDKddiu2rZkezp9kZHEoXqxhtNqgWuuaXkcla5JtnXg==", "requires": { - "base64-js": "^1.2.0", - "idtoken-verifier": "^1.2.0", + "base64-js": "^1.3.0", + "idtoken-verifier": "^2.0.2", "js-cookie": "^2.2.0", - "qs": "^6.4.0", - "superagent": "^3.8.2", - "url-join": "^1.1.0", - "winchan": "^0.2.0" + "qs": "^6.7.0", + "superagent": "^3.8.3", + "url-join": "^4.0.1", + "winchan": "^0.2.2" }, "dependencies": { - "url-join": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/url-join/-/url-join-1.1.0.tgz", - "integrity": "sha1-dBxsL0WWxIMNZxhGCSDQySIC3Hg=" + "qs": { + "version": "6.9.4", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.4.tgz", + "integrity": "sha512-A1kFqHekCTM7cz0udomYUoYNWjBebHm/5wzU/XqrBRBNWectVH0QIiN+NEcZ0Dte5hvzHwbr8+XQmguPhJ6WdQ==" } } }, @@ -5607,7 +4367,6 @@ "version": "9.7.4", "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.7.4.tgz", "integrity": "sha512-g0Ya30YrMBAEZk60lp+qfX5YQllG+S5W3GYCFvyHTvhOki0AEQJLPEcIuGRsqVwLi8FvXPVtwTGhfr38hVpm0g==", - "dev": true, "requires": { "browserslist": "^4.8.3", "caniuse-lite": "^1.0.30001020", @@ -5616,32 +4375,17 @@ "num2fraction": "^1.2.2", "postcss": "^7.0.26", "postcss-value-parser": "^4.0.2" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - } } }, "aws-sign2": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" }, "aws4": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.7.0.tgz", - "integrity": "sha512-32NDda82rhwD9/JBCCkB+MRYDp0oSvlo2IL6rQWA10PQi7tDUM3eqMSltXmY+Oyl/7N3P3qNtAlv7X0d9bI28w==", - "dev": true + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.10.0.tgz", + "integrity": "sha512-3YDiu347mtVtjpyV3u5kVqQLP242c06zwDOgpeRnybmXlYYsLbtTrUBUm8i8srONt+FWobl5aibnU1030PeeuA==" }, "axobject-query": { "version": "2.0.2", @@ -5700,7 +4444,6 @@ "version": "8.0.6", "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.0.6.tgz", "integrity": "sha512-4BmWKtBOBm13uoUwd08UwjZlaw3O9GWf456R9j+5YykFZ6LUIjIKLc0zEZf+hauxPOJs96C8k6FvYD09vWzhYw==", - "dev": true, "requires": { "find-cache-dir": "^2.0.0", "loader-utils": "^1.0.2", @@ -5712,7 +4455,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "dev": true, "requires": { "commondir": "^1.0.1", "make-dir": "^2.0.0", @@ -5723,7 +4465,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, "requires": { "minimist": "^1.2.0" } @@ -5732,7 +4473,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, "requires": { "big.js": "^5.2.2", "emojis-list": "^3.0.0", @@ -5742,10 +4482,9 @@ } }, "babel-plugin-dynamic-import-node": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.0.tgz", - "integrity": "sha512-o6qFkpeQEBxcqt0XYlWzAVxNCSCZdUgcR8IRlhD/8DylxjjO4foPcvTW0GGKa/cVt3rvxZ7o5ippJ+/0nvLhlQ==", - "dev": true, + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", + "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", "requires": { "object.assign": "^4.1.0" } @@ -5776,14 +4515,12 @@ "balanced-match": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" }, "base": { "version": "0.11.2", "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", - "dev": true, "requires": { "cache-base": "^1.0.1", "class-utils": "^0.3.5", @@ -5798,7 +4535,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, "requires": { "is-descriptor": "^1.0.0" } @@ -5807,7 +4543,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, "requires": { "kind-of": "^6.0.0" } @@ -5816,7 +4551,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, "requires": { "kind-of": "^6.0.0" } @@ -5825,7 +4559,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, "requires": { "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", @@ -5841,9 +4574,9 @@ "dev": true }, "base64-js": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz", - "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==" + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", + "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==" }, "base64id": { "version": "1.0.0", @@ -5854,15 +4587,12 @@ "batch": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", - "dev": true + "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=" }, "bcrypt-pbkdf": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz", - "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=", - "dev": true, - "optional": true, + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", "requires": { "tweetnacl": "^0.14.3" } @@ -5885,14 +4615,12 @@ "big.js": { "version": "5.2.2", "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==" }, "binary-extensions": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz", - "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=", - "dev": true + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.0.0.tgz", + "integrity": "sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow==" }, "binaryextensions": { "version": "1.0.1", @@ -5900,16 +4628,6 @@ "integrity": "sha1-HmN0iLNbWL2l9HdL+WpSEqjJB1U=", "dev": true }, - "bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", - "dev": true, - "optional": true, - "requires": { - "file-uri-to-path": "1.0.0" - } - }, "blob": { "version": "0.0.5", "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz", @@ -5928,20 +4646,17 @@ "bluebird": { "version": "3.7.2", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", - "dev": true + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" }, "bn.js": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", - "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", - "dev": true + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.1.2.tgz", + "integrity": "sha512-40rZaf3bUNKTVYu9sIeeEGOg7g14Yvnj9kH7b50EiwX0Q7A6umbvfI5tvHaOERH0XigqKkfLkFQxzb4e6CIXnA==" }, "body-parser": { "version": "1.19.0", "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", - "dev": true, "requires": { "bytes": "3.1.0", "content-type": "~1.0.4", @@ -5958,23 +4673,25 @@ "bytes": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", - "dev": true + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "requires": { - "safer-buffer": ">= 2.1.2 < 3" + "ms": "2.0.0" } }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, "qs": { "version": "6.7.0", "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", - "dev": true + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" } } }, @@ -5982,7 +4699,6 @@ "version": "3.5.0", "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz", "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", - "dev": true, "requires": { "array-flatten": "^2.1.0", "deep-equal": "^1.0.1", @@ -5995,8 +4711,7 @@ "boolbase": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", - "dev": true + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" }, "boxen": { "version": "4.2.0", @@ -6030,12 +4745,6 @@ "color-convert": "^2.0.1" } }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, "chalk": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", @@ -6061,6 +4770,12 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -6114,52 +4829,28 @@ "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } + "fill-range": "^7.0.1" } }, "brorand": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", - "dev": true + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" }, "browserify-aes": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "dev": true, "requires": { "buffer-xor": "^1.0.3", "cipher-base": "^1.0.0", @@ -6173,7 +4864,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", - "dev": true, "requires": { "browserify-aes": "^1.0.4", "browserify-des": "^1.0.0", @@ -6184,7 +4874,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", - "dev": true, "requires": { "cipher-base": "^1.0.1", "des.js": "^1.0.0", @@ -6196,52 +4885,74 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", - "dev": true, "requires": { "bn.js": "^4.1.0", "randombytes": "^2.0.1" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" + } } }, "browserify-sign": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", - "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", - "dev": true, + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.0.tgz", + "integrity": "sha512-hEZC1KEeYuoHRqhGhTy6gWrpJA3ZDjFWv0DE61643ZnOXAKJb3u7yWcrU0mMc9SwAqK1n7myPGndkp0dFG7NFA==", "requires": { - "bn.js": "^4.1.1", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.2", - "elliptic": "^6.0.0", - "inherits": "^2.0.1", - "parse-asn1": "^5.0.0" + "bn.js": "^5.1.1", + "browserify-rsa": "^4.0.1", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.5.2", + "inherits": "^2.0.4", + "parse-asn1": "^5.1.5", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + } } }, "browserify-zlib": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", - "dev": true, "requires": { "pako": "~1.0.5" } }, "browserslist": { - "version": "4.11.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.11.0.tgz", - "integrity": "sha512-WqEC7Yr5wUH5sg6ruR++v2SGOQYpyUdYYd4tZoAq1F7y+QXoLoYGXVbxhtaIqWmAJjtNTRjVD3HuJc1OXTel2A==", - "dev": true, + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.12.0.tgz", + "integrity": "sha512-UH2GkcEDSI0k/lRkuDSzFl9ZZ87skSy9w2XAn1MsZnL+4c4rqbBd3e82UWHbYDpztABrPBhZsTEeuxVfHppqDg==", "requires": { - "caniuse-lite": "^1.0.30001035", - "electron-to-chromium": "^1.3.380", - "node-releases": "^1.1.52", - "pkg-up": "^3.1.0" + "caniuse-lite": "^1.0.30001043", + "electron-to-chromium": "^1.3.413", + "node-releases": "^1.1.53", + "pkg-up": "^2.0.0" } }, "browserstack": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/browserstack/-/browserstack-1.5.1.tgz", - "integrity": "sha512-O8VMT64P9NOLhuIoD4YngyxBURefaSdR4QdhG8l6HZ9VxtU7jc3m6jLufFwKA5gaf7fetfB2TnRJnMxyob+heg==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/browserstack/-/browserstack-1.6.0.tgz", + "integrity": "sha512-HJDJ0TSlmkwnt9RZ+v5gFpa1XZTBYTj0ywvLwJ3241J7vMw2jAsGNVhKHtmCOyg+VxeLZyaibO9UL71AsUeDIw==", "dev": true, "requires": { "https-proxy-agent": "^2.2.1" @@ -6251,7 +4962,6 @@ "version": "4.9.2", "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", - "dev": true, "requires": { "base64-js": "^1.0.2", "ieee754": "^1.1.4", @@ -6274,6 +4984,12 @@ "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==", "dev": true }, + "buffer-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-1.0.0.tgz", + "integrity": "sha1-WWFrSYME1Var1GaWayLu2j7KX74=", + "dev": true + }, "buffer-fill": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", @@ -6281,16 +4997,14 @@ "dev": true }, "buffer-from": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.0.tgz", - "integrity": "sha512-c5mRlguI/Pe2dSZmpER62rSCu0ryKmWddzRYsuXc50U2/g8jMOulc31VZMa4mYx31U5xsmSOpDCgH88Vl9cDGQ==", - "dev": true + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" }, "buffer-indexof": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz", - "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==", - "dev": true + "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==" }, "buffer-shims": { "version": "1.0.0", @@ -6301,20 +5015,18 @@ "buffer-xor": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", - "dev": true + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" }, "builtin-modules": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.1.0.tgz", + "integrity": "sha512-k0KL0aWZuBt2lrxrcASWDfwOLMnodeQjodT/1SxEQAXsHANgo6ZC/VEaSEHCXt7aSTZ4/4H5LKa+tBXmW7Vtvw==", "dev": true }, "builtin-status-codes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", - "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", - "dev": true + "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=" }, "builtins": { "version": "1.0.3", @@ -6325,14 +5037,12 @@ "bytes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", - "dev": true + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" }, "cacache": { "version": "15.0.0", "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.0.0.tgz", "integrity": "sha512-L0JpXHhplbJSiDGzyJJnJCTL7er7NzbBgxzVqLswEb4bO91Zbv17OUMuUeu/q0ZwKn3V+1HM4wb9tO4eVE/K8g==", - "dev": true, "requires": { "chownr": "^1.1.2", "fs-minipass": "^2.0.0", @@ -6353,49 +5063,18 @@ "unique-filename": "^1.1.1" }, "dependencies": { - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "requires": { - "yallist": "^3.0.2" - } - }, "mkdirp": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.3.tgz", - "integrity": "sha512-6uCP4Qc0sWsgMLy1EOqqS/3rjDHOEnsStVr/4vtAIK2Y5i2kA7lFFejYrpIyiN9w0pYf4ckeCYT9f1r1P9KX5g==", - "dev": true + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" }, "rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, "requires": { "glob": "^7.1.3" } - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true } } }, @@ -6403,7 +5082,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", - "dev": true, "requires": { "collection-visit": "^1.0.0", "component-emitter": "^1.2.1", @@ -6440,6 +5118,12 @@ "pump": "^3.0.0" } }, + "http-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", + "dev": true + }, "lowercase-keys": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", @@ -6451,16 +5135,6 @@ "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.0.tgz", "integrity": "sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ==", "dev": true - }, - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } } } }, @@ -6468,7 +5142,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", "integrity": "sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ=", - "dev": true, "requires": { "callsites": "^2.0.0" } @@ -6477,7 +5150,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz", "integrity": "sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ=", - "dev": true, "requires": { "caller-callsite": "^2.0.0" } @@ -6491,14 +5163,12 @@ "callsites": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", - "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=", - "dev": true + "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=" }, "camelcase": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", - "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", - "dev": true + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" }, "camelcase-keys": { "version": "2.1.0", @@ -6522,7 +5192,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", - "dev": true, "requires": { "browserslist": "^4.0.0", "caniuse-lite": "^1.0.0", @@ -6531,10 +5200,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001038", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001038.tgz", - "integrity": "sha512-zii9quPo96XfOiRD4TrfYGs+QsGZpb2cGiMAzPjtf/hpFgB6zCPZgJb7I1+EATeMw/o+lG8FyRAnI+CWStHcaQ==", - "dev": true + "version": "1.0.30001083", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001083.tgz", + "integrity": "sha512-CnYJ27awX4h7yj5glfK7r1TOI13LBytpLzEgfj0s4mY75/F8pnQcYjL+oVpmS38FB59+vU0gscQ9D8tc+lIXvA==" }, "canonical-path": { "version": "1.0.0", @@ -6545,8 +5213,7 @@ "caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" }, "catharsis": { "version": "0.8.11", @@ -6558,9 +5225,9 @@ } }, "cb-buffer": { - "version": "2.1.7", - "resolved": "https://registry.npmjs.org/cb-buffer/-/cb-buffer-2.1.7.tgz", - "integrity": "sha512-bCzYKH74eYHOJuovmyEWidc+AWE/Nj7DvVfhcHiCv73Q4axcwtS2VSAq9xXCJdrXVS9e0wmb25jGfGRDzHBX9Q==", + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/cb-buffer/-/cb-buffer-2.1.8.tgz", + "integrity": "sha512-pwQvFviQlE0SvbbdnuY9l1oZzlxLSEsErQGa2RLlzlatNzGlwFmD5liyHnitg7a0hwySMGBzuO73VErwLZbj+w==", "dev": true, "optional": true }, @@ -6575,18 +5242,14 @@ } }, "cesium": { - "version": "1.67.0", - "resolved": "https://registry.npmjs.org/cesium/-/cesium-1.67.0.tgz", - "integrity": "sha512-vu/InLNtw1pV2FavfAB1c/BQGogg7LAx5GPu2hnGlSoSfb+hUyCh0YlW0kKyL/appAYgt1OtMCRaND2S7RqygQ==", - "requires": { - "esm": "^3.2.25" - } + "version": "1.70.1", + "resolved": "https://registry.npmjs.org/cesium/-/cesium-1.70.1.tgz", + "integrity": "sha512-SlRTgJFAi0o9Ln+LvZGBZWlco+yWDxC+g+Val6qufcsqeyOq+rrWNL9EtMgfIM2pPHURk9g2zPurqFSRUt2c5Q==" }, "chalk": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", - "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", - "dev": true, + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "requires": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", @@ -6600,36 +5263,29 @@ "dev": true }, "chokidar": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.0.3.tgz", - "integrity": "sha512-zW8iXYZtXMx4kux/nuZVXjkLP+CyIK5Al5FHnj1OgTKGZfp4Oy6/ymtMSKFv3GD8DviEmUPmJg9eFdJ/JzudMg==", - "dev": true, + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.0.tgz", + "integrity": "sha512-aXAaho2VJtisB/1fg1+3nlLJqGOuewTzQpd/Tz0yTg2R0e4IGtshYvtjowyEumcBv2z+y4+kc75Mz7j5xJskcQ==", "requires": { - "anymatch": "^2.0.0", - "async-each": "^1.0.0", - "braces": "^2.3.0", - "fsevents": "^1.1.2", - "glob-parent": "^3.1.0", - "inherits": "^2.0.1", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^2.1.1", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.0.0", - "upath": "^1.0.0" + "anymatch": "~3.1.1", + "braces": "~3.0.2", + "fsevents": "~2.1.2", + "glob-parent": "~5.1.0", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.4.0" } }, "chownr": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "dev": true + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" }, "chrome-trace-event": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz", "integrity": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==", - "dev": true, "requires": { "tslib": "^1.9.0" } @@ -6644,7 +5300,6 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", - "dev": true, "requires": { "inherits": "^2.0.1", "safe-buffer": "^5.0.1" @@ -6653,20 +5308,18 @@ "circular-dependency-plugin": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/circular-dependency-plugin/-/circular-dependency-plugin-5.2.0.tgz", - "integrity": "sha512-7p4Kn/gffhQaavNfyDFg7LS5S/UT1JAjyGd4UqR2+jzoYF02eDkj0Ec3+48TsIa4zghjLY87nQHIh/ecK9qLdw==", - "dev": true + "integrity": "sha512-7p4Kn/gffhQaavNfyDFg7LS5S/UT1JAjyGd4UqR2+jzoYF02eDkj0Ec3+48TsIa4zghjLY87nQHIh/ecK9qLdw==" }, "circular-json": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.5.4.tgz", - "integrity": "sha512-vnJA8KS0BfOihugYEUkLRcnmq21FbuivbxgzDLXNs3zIk4KllV4Mx4UuTzBXht9F00C7QfD1YqMXg1zP6EXpig==", + "version": "0.5.9", + "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.5.9.tgz", + "integrity": "sha512-4ivwqHpIFJZBuhN3g/pEcdbnGUywkBblloGbkglyloVjjR3uT6tieI89MVOfbP2tHX5sgb01FuLgAOzebNlJNQ==", "dev": true }, "class-utils": { "version": "0.3.6", "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", - "dev": true, "requires": { "arr-union": "^3.1.0", "define-property": "^0.2.5", @@ -6678,7 +5331,6 @@ "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, "requires": { "is-descriptor": "^0.1.0" } @@ -6705,8 +5357,7 @@ "clean-stack": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==" }, "cli-boxes": { "version": "2.2.0", @@ -6724,41 +5375,46 @@ } }, "cli-spinners": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.2.0.tgz", - "integrity": "sha512-tgU3fKwzYjiLEQgPMD9Jt+JjHVL9kW93FiIMX/l7rivvOD4/LL0Mf7gda3+4U2KJBloybwgj5KEoQgGRioMiKQ==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.3.0.tgz", + "integrity": "sha512-Xs2Hf2nzrvJMFKimOR7YR0QwZ8fc0u98kdtwN1eNAZzNQgH3vK2pXzff6GJtKh7S5hoJ87ECiAiZFS2fb5Ii2w==", "dev": true }, "cli-width": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", - "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz", + "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==", "dev": true }, "cliui": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", - "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", - "dev": true, + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", "requires": { - "center-align": "^0.1.1", - "right-align": "^0.1.1", - "wordwrap": "0.0.2" + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" }, "dependencies": { - "wordwrap": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", - "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", - "dev": true + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "requires": { + "ansi-regex": "^4.1.0" + } } } }, "clone": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.1.tgz", - "integrity": "sha1-0hfR6WERjjrJpLi7oyhVU79kfNs=", - "dev": true + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=" }, "clone-buffer": { "version": "1.0.0", @@ -6770,7 +5426,6 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", - "dev": true, "requires": { "is-plain-object": "^2.0.4", "kind-of": "^6.0.2", @@ -6787,15 +5442,15 @@ } }, "clone-stats": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz", - "integrity": "sha1-uI+UqCzzi4eR1YBG6kAprYjKmdE=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz", + "integrity": "sha1-s3gt/4u1R04Yuba/D9/ngvh3doA=", "dev": true }, "cloneable-readable": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/cloneable-readable/-/cloneable-readable-1.1.2.tgz", - "integrity": "sha512-Bq6+4t+lbM8vhTs/Bef5c5AdEMtapp/iFb6+s4/Hh9MVTt8OLKH7ZOOZSCT+Ys7hsHvqv0GuMPJ1lnQJVHvxpg==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/cloneable-readable/-/cloneable-readable-1.1.3.tgz", + "integrity": "sha512-2EF8zTQOxYq70Y4XKtorQupqF0m49MBz2/yf5Bj+MHjvpG3Hy7sImifnqD6UA+TKYxeSV+u6qqQPawN5UvnpKQ==", "dev": true, "requires": { "inherits": "^2.0.1", @@ -6803,29 +5458,14 @@ "readable-stream": "^2.3.5" } }, - "co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", - "dev": true - }, "coa": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz", "integrity": "sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==", - "dev": true, "requires": { "@types/q": "^1.5.1", "chalk": "^2.4.1", "q": "^1.1.2" - }, - "dependencies": { - "@types/q": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.2.tgz", - "integrity": "sha512-ce5d3q03Ex0sy4R14722Rmt6MT07Ua+k4FwDfdcToYJcMKNtRVQvJ6JCAPdAmAnbRb6CsX6aYb9m96NGod9uTw==", - "dev": true - } } }, "code-point-at": { @@ -6835,9 +5475,9 @@ "dev": true }, "codelyzer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/codelyzer/-/codelyzer-5.2.1.tgz", - "integrity": "sha512-awBZXFcJUyC5HMYXiHzjr3D24tww2l1D1OqtfA9vUhEtYr32a65A+Gblm/OvsO+HuKLYzn8EDMw1inSM3VbxWA==", + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/codelyzer/-/codelyzer-5.2.2.tgz", + "integrity": "sha512-jB4FZ1Sx7kZhvZVdf+N2BaKTdrrNZOL0Bj10RRfrhHrb3zEvXjJvvq298JPMJAiyiCS/v4zs1QlGU0ip7xGqeA==", "dev": true, "requires": { "app-root-path": "^2.2.1", @@ -6851,6 +5491,12 @@ "sprintf-js": "^1.1.2" }, "dependencies": { + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, "sprintf-js": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", @@ -6874,7 +5520,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", - "dev": true, "requires": { "map-visit": "^1.0.0", "object-visit": "^1.0.0" @@ -6884,32 +5529,28 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/color/-/color-3.1.2.tgz", "integrity": "sha512-vXTJhHebByxZn3lDvDJYw4lR5+uB3vuoHsuYA5AKuxRVn5wzzIfQKGLBmgdVRHKTJYeK5rvJcHnrd0Li49CFpg==", - "dev": true, "requires": { "color-convert": "^1.9.1", "color-string": "^1.5.2" } }, "color-convert": { - "version": "1.9.2", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.2.tgz", - "integrity": "sha512-3NUJZdhMhcdPn8vJ9v2UQJoH0qqoGUkYTgFEPZaPjEtwmmKUfNV46zZmgB2M5M4DCEQHMaCfWHCxiBflLm04Tg==", - "dev": true, + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "requires": { - "color-name": "1.1.1" + "color-name": "1.1.3" } }, "color-name": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.1.tgz", - "integrity": "sha1-SxQVMEz1ACjqgWQ2Q72C6gWANok=", - "dev": true + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" }, "color-string": { "version": "1.5.3", "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.5.3.tgz", "integrity": "sha512-dC2C5qeWoYkxki5UAXapdjqO672AM4vZuPGRQfO8b5HKuKGBbKWpITyDYN7TOFKvRW7kOgAn3746clDBMDJyQw==", - "dev": true, "requires": { "color-name": "^1.0.0", "simple-swizzle": "^0.2.2" @@ -6928,28 +5569,27 @@ "dev": true }, "combined-stream": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz", - "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", "requires": { "delayed-stream": "~1.0.0" } }, "commander": { - "version": "2.15.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz", - "integrity": "sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag==" + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" }, "commondir": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": true + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=" }, "compare-versions": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.4.0.tgz", - "integrity": "sha512-tK69D7oNXXqUW3ZNo/z7NXTEz22TCF0pTE+YF9cxvaAM9XnkLo1fV621xCLrRR6aevJlKxExkss0vWqUCUpqdg==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.6.0.tgz", + "integrity": "sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==", "dev": true }, "complex.js": { @@ -6964,9 +5604,9 @@ "dev": true }, "component-emitter": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", - "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=" + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" }, "component-inherit": { "version": "0.0.3", @@ -6978,24 +5618,14 @@ "version": "2.0.18", "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", - "dev": true, "requires": { "mime-db": ">= 1.43.0 < 2" - }, - "dependencies": { - "mime-db": { - "version": "1.43.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.43.0.tgz", - "integrity": "sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ==", - "dev": true - } } }, "compression": { "version": "1.7.4", "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", - "dev": true, "requires": { "accepts": "~1.3.5", "bytes": "3.0.0", @@ -7004,12 +5634,27 @@ "on-headers": "~1.0.2", "safe-buffer": "5.1.2", "vary": "~1.1.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } } }, "compute-size": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/compute-size/-/compute-size-1.0.11.tgz", - "integrity": "sha512-nFKo2Xfg3888TxAu6gWaPWkSA+KYMeVB0nE7jZHePQeZZmGsoy+DxZNHX13/LY5Bq5rKBzAcm2eLjLn49GDKYA==", + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/compute-size/-/compute-size-1.0.12.tgz", + "integrity": "sha512-AW4MrH8NaedlcuIG/jPg6HXa+Esm6iyafIkeLhiSogaoSNBOMtoUzh5HvJFqKjoM/I75liZ5ZsLAiwpjaHnJKw==", "dev": true, "optional": true, "requires": { @@ -7021,42 +5666,17 @@ "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" }, "concat-stream": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.2.tgz", - "integrity": "sha1-cIl4Yk2FavQaWnQd790mHadSwmY=", + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", "requires": { - "inherits": "~2.0.1", - "readable-stream": "~2.0.0", - "typedarray": "~0.0.5" - }, - "dependencies": { - "process-nextick-args": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" - }, - "readable-stream": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", - "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~0.10.x", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" - } + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" } }, "concat-with-sourcemaps": { @@ -7077,15 +5697,14 @@ } }, "concaveman": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/concaveman/-/concaveman-1.1.1.tgz", - "integrity": "sha1-bCSCWAslI874L8K+wAoEFebmgWI=", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/concaveman/-/concaveman-1.2.0.tgz", + "integrity": "sha512-OcqechF2/kubbffomKqjGEkb0ndlYhEbmyg/fxIGqdfYp5AZjD2Kl5hc97Hh3ngEuHU2314Z4KDbxL7qXGWrQQ==", "requires": { - "monotone-convex-hull-2d": "^1.0.1", "point-in-polygon": "^1.0.1", - "rbush": "^2.0.1", - "robust-orientation": "^1.1.3", - "tinyqueue": "^1.1.0" + "rbush": "^3.0.0", + "robust-predicates": "^2.0.4", + "tinyqueue": "^2.0.3" } }, "configstore": { @@ -7103,9 +5722,9 @@ }, "dependencies": { "make-dir": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.0.2.tgz", - "integrity": "sha512-rYKABKutXa6vXTXhoV18cBE7PaewPXHe/Bdq4v+ZLMhxbWApkFFplT0LcbMW+6BbjnQXzZ/sAvSE/JdguApG5w==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "dev": true, "requires": { "semver": "^6.0.0" @@ -7129,31 +5748,44 @@ "finalhandler": "1.1.2", "parseurl": "~1.3.3", "utils-merge": "1.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } } }, "connect-history-api-fallback": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", - "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==", - "dev": true + "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==" }, "console-browserify": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", - "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==", - "dev": true + "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==" }, "constants-browserify": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", - "dev": true + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=" }, "content-disposition": { "version": "0.5.3", "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", - "dev": true, "requires": { "safe-buffer": "5.1.2" } @@ -7161,26 +5793,25 @@ "content-type": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", - "dev": true + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" }, "convert-source-map": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", - "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=", - "dev": true + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", + "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", + "requires": { + "safe-buffer": "~5.1.1" + } }, "cookie": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", - "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==", - "dev": true + "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==" }, "cookie-signature": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", - "dev": true + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" }, "cookiejar": { "version": "2.1.2", @@ -7191,7 +5822,6 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", - "dev": true, "requires": { "aproba": "^1.1.1", "fs-write-stream-atomic": "^1.0.8", @@ -7199,13 +5829,22 @@ "mkdirp": "^0.5.1", "rimraf": "^2.5.4", "run-queue": "^1.0.0" + }, + "dependencies": { + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "requires": { + "glob": "^7.1.3" + } + } } }, "copy-descriptor": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", - "dev": true + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" }, "copy-props": { "version": "2.0.4", @@ -7218,180 +5857,98 @@ } }, "copy-webpack-plugin": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-5.1.1.tgz", - "integrity": "sha512-P15M5ZC8dyCjQHWwd4Ia/dm0SgVvZJMYeykVIVYXbGyqO4dWB5oyPHp9i7wjwo5LhtlhKbiBCdS2NvM07Wlybg==", - "dev": true, - "requires": { - "cacache": "^12.0.3", - "find-cache-dir": "^2.1.0", - "glob-parent": "^3.1.0", - "globby": "^7.1.1", - "is-glob": "^4.0.1", - "loader-utils": "^1.2.3", - "minimatch": "^3.0.4", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-6.0.2.tgz", + "integrity": "sha512-9Gm8X0c6eXlKnmltMPFCBeGOKjtcRIyTt4VaO3k1TkNgVTe5Ov2lYsYVuyLp0kp8DItO3apewflM+1GYgh6V2Q==", + "requires": { + "cacache": "^15.0.4", + "fast-glob": "^3.2.2", + "find-cache-dir": "^3.3.1", + "glob-parent": "^5.1.1", + "globby": "^11.0.1", + "loader-utils": "^2.0.0", "normalize-path": "^3.0.0", - "p-limit": "^2.2.1", - "schema-utils": "^1.0.0", - "serialize-javascript": "^2.1.2", - "webpack-log": "^2.0.0" + "p-limit": "^2.3.0", + "schema-utils": "^2.7.0", + "serialize-javascript": "^3.1.0", + "webpack-sources": "^1.4.3" }, "dependencies": { "cacache": { - "version": "12.0.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", - "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", - "dev": true, + "version": "15.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.0.4.tgz", + "integrity": "sha512-YlnKQqTbD/6iyoJvEY3KJftjrdBYroCbxxYXzhOzsFLWlp6KX4BOlEf4mTx0cMUfVaTS3ENL2QtDWeRYoGLkkw==", "requires": { - "bluebird": "^3.5.5", - "chownr": "^1.1.1", - "figgy-pudding": "^3.5.1", + "@npmcli/move-file": "^1.0.1", + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", "glob": "^7.1.4", - "graceful-fs": "^4.1.15", - "infer-owner": "^1.0.3", + "infer-owner": "^1.0.4", "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", + "minipass": "^3.1.1", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.2", + "mkdirp": "^1.0.3", + "p-map": "^4.0.0", "promise-inflight": "^1.0.1", - "rimraf": "^2.6.3", - "ssri": "^6.0.1", - "unique-filename": "^1.1.1", - "y18n": "^4.0.0" - } - }, - "find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" - } - }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", - "dev": true - }, - "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - }, - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "requires": { - "yallist": "^3.0.2" + "rimraf": "^3.0.2", + "ssri": "^8.0.0", + "tar": "^6.0.2", + "unique-filename": "^1.1.1" } }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true + "chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==" }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" }, - "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" + "p-try": "^2.0.0" } }, - "ssri": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", - "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", - "dev": true, + "p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", "requires": { - "figgy-pudding": "^3.5.1" + "aggregate-error": "^3.0.0" } }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" } } }, "core-js": { - "version": "2.5.7", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.7.tgz", - "integrity": "sha512-RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw==" + "version": "2.6.11", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", + "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==" }, "core-js-compat": { - "version": "3.6.4", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.6.4.tgz", - "integrity": "sha512-zAa3IZPvsJ0slViBQ2z+vgyyTuhd3MFn1rBQjZSKVEgB0UMYhUkCj9jJUVPgGTGqWvsBVmfnruXgTcNyTlEiSA==", - "dev": true, + "version": "3.6.5", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.6.5.tgz", + "integrity": "sha512-7ItTKOhOZbznhXAQ2g/slGg1PJV5zDO/WdkTwi7UEOJmkvsE32PWvx6mKtDjiMpjnR2CNf6BAD6sSxIlv7ptng==", "requires": { - "browserslist": "^4.8.3", + "browserslist": "^4.8.5", "semver": "7.0.0" }, "dependencies": { "semver": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true + "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==" } } }, @@ -7404,30 +5961,17 @@ "version": "5.2.1", "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", - "dev": true, "requires": { "import-fresh": "^2.0.0", "is-directory": "^0.3.1", "js-yaml": "^3.13.1", "parse-json": "^4.0.0" - }, - "dependencies": { - "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "dev": true, - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } - } } }, "couleurs": { - "version": "6.0.9", - "resolved": "https://registry.npmjs.org/couleurs/-/couleurs-6.0.9.tgz", - "integrity": "sha1-srKj7jfa5Rh1ye/SQ+x+eJSvvJ4=", + "version": "6.0.10", + "resolved": "https://registry.npmjs.org/couleurs/-/couleurs-6.0.10.tgz", + "integrity": "sha512-16ZvhVjVhEP75sMflsPtXcwbly+79os1zhBVcpRWNmnwifEbZChW+0URYING/A2ehBwp8i0pOXJYzdpiGO3Ivw==", "dev": true, "optional": true, "requires": { @@ -7441,17 +5985,22 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", - "dev": true, "requires": { "bn.js": "^4.1.0", "elliptic": "^6.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" + } } }, "create-hash": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "dev": true, "requires": { "cipher-base": "^1.0.1", "inherits": "^2.0.1", @@ -7464,7 +6013,6 @@ "version": "1.1.7", "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "dev": true, "requires": { "cipher-base": "^1.0.3", "create-hash": "^1.1.0", @@ -7478,20 +6026,25 @@ "version": "6.0.5", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dev": true, "requires": { "nice-try": "^1.0.4", "path-key": "^2.0.1", "semver": "^5.5.0", "shebang-command": "^1.2.0", "which": "^1.2.9" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + } } }, "crypto-browserify": { "version": "3.12.0", "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", - "dev": true, "requires": { "browserify-cipher": "^1.0.0", "browserify-sign": "^4.0.0", @@ -7521,7 +6074,6 @@ "version": "2.2.4", "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", - "dev": true, "requires": { "inherits": "^2.0.3", "source-map": "^0.6.1", @@ -7532,32 +6084,73 @@ "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" } } }, "css-color-names": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/css-color-names/-/css-color-names-0.0.4.tgz", - "integrity": "sha1-gIrcLnnPhHOAabZGyyDsJ762KeA=", - "dev": true + "integrity": "sha1-gIrcLnnPhHOAabZGyyDsJ762KeA=" }, "css-declaration-sorter": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-4.0.1.tgz", "integrity": "sha512-BcxQSKTSEEQUftYpBVnsH4SF05NTuBokb19/sBt6asXGKZ/6VP7PLG1CBCkFDYOnhXhPh0jMhO6xZ71oYHXHBA==", - "dev": true, "requires": { "postcss": "^7.0.1", "timsort": "^0.3.0" } }, + "css-loader": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-3.5.1.tgz", + "integrity": "sha512-0G4CbcZzQ9D1Q6ndOfjFuMDo8uLYMu5vc9Abs5ztyHcKvmil6GJrMiNjzzi3tQvUF+mVRuDg7bE6Oc0Prolgig==", + "requires": { + "camelcase": "^5.3.1", + "cssesc": "^3.0.0", + "icss-utils": "^4.1.1", + "loader-utils": "^1.2.3", + "normalize-path": "^3.0.0", + "postcss": "^7.0.27", + "postcss-modules-extract-imports": "^2.0.0", + "postcss-modules-local-by-default": "^3.0.2", + "postcss-modules-scope": "^2.2.0", + "postcss-modules-values": "^3.0.0", + "postcss-value-parser": "^4.0.3", + "schema-utils": "^2.6.5", + "semver": "^6.3.0" + }, + "dependencies": { + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", + "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, "css-parse": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-2.0.0.tgz", "integrity": "sha1-pGjuZnwW2BzPBcWMONKpfHgNv9Q=", - "dev": true, "requires": { "css": "^2.0.0" } @@ -7566,7 +6159,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz", "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==", - "dev": true, "requires": { "boolbase": "^1.0.0", "css-what": "^3.2.1", @@ -7577,59 +6169,23 @@ "css-select-base-adapter": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz", - "integrity": "sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==", - "dev": true + "integrity": "sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==" }, "css-selector-tokenizer": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.1.tgz", - "integrity": "sha512-xYL0AMZJ4gFzJQsHUKa5jiWWi2vH77WVNg7JYRyewwj6oPh4yb/y6Y9ZCw9dsj/9UauMhtuxR+ogQd//EdEVNA==", + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.2.tgz", + "integrity": "sha512-yj856NGuAymN6r8bn8/Jl46pR+OC3eEvAhfGYDUe7YPtTPAYrSSw4oAniZ9Y8T5B92hjhwTBLUen0/vKPxf6pw==", "dev": true, "requires": { - "cssesc": "^0.1.0", - "fastparse": "^1.1.1", - "regexpu-core": "^1.0.0" - }, - "dependencies": { - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true - }, - "regexpu-core": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-1.0.0.tgz", - "integrity": "sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs=", - "dev": true, - "requires": { - "regenerate": "^1.2.1", - "regjsgen": "^0.2.0", - "regjsparser": "^0.1.4" - } - }, - "regjsgen": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", - "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", - "dev": true - }, - "regjsparser": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", - "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", - "dev": true, - "requires": { - "jsesc": "~0.5.0" - } - } + "cssesc": "^3.0.0", + "fastparse": "^1.1.2", + "regexpu-core": "^4.6.0" } }, "css-tree": { "version": "1.0.0-alpha.37", "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.37.tgz", "integrity": "sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg==", - "dev": true, "requires": { "mdn-data": "2.0.4", "source-map": "^0.6.1" @@ -7638,16 +6194,14 @@ "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" } } }, "css-what": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.2.1.tgz", - "integrity": "sha512-WwOrosiQTvyms+Ti5ZC5vGEK0Vod3FTt1ca+payZqvKuGJF+dq7bG63DstxtN0dpm6FxY27a/zS3Wten+gEtGw==", - "dev": true + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.3.0.tgz", + "integrity": "sha512-pv9JPyatiPaQ6pf4OvD/dbfm0o5LviWmwxNWzblYf/1u9QZd0ihV+PMwy5jdQWQ3349kZmKEx9WXuSka2dM4cg==" }, "cssauron": { "version": "1.4.0", @@ -7659,16 +6213,14 @@ } }, "cssesc": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-0.1.0.tgz", - "integrity": "sha1-yBSQPkViM3GgR3tAEJqq++6t27Q=", - "dev": true + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==" }, "cssnano": { "version": "4.1.10", "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-4.1.10.tgz", "integrity": "sha512-5wny+F6H4/8RgNlaqab4ktc3e0/blKutmq8yNlBFXA//nSFFAqAngjNVRzUvCgYROULmZZUoosL/KSoZo5aUaQ==", - "dev": true, "requires": { "cosmiconfig": "^5.0.0", "cssnano-preset-default": "^4.0.7", @@ -7680,7 +6232,6 @@ "version": "4.0.7", "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-4.0.7.tgz", "integrity": "sha512-x0YHHx2h6p0fCl1zY9L9roD7rnlltugGu7zXSKQx6k2rYw0Hi3IqxcoAGF7u9Q5w1nt7vK0ulxV8Lo+EvllGsA==", - "dev": true, "requires": { "css-declaration-sorter": "^4.0.1", "cssnano-util-raw-cache": "^4.0.1", @@ -7717,20 +6268,17 @@ "cssnano-util-get-arguments": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/cssnano-util-get-arguments/-/cssnano-util-get-arguments-4.0.0.tgz", - "integrity": "sha1-7ToIKZ8h11dBsg87gfGU7UnMFQ8=", - "dev": true + "integrity": "sha1-7ToIKZ8h11dBsg87gfGU7UnMFQ8=" }, "cssnano-util-get-match": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/cssnano-util-get-match/-/cssnano-util-get-match-4.0.0.tgz", - "integrity": "sha1-wOTKB/U4a7F+xeUiULT1lhNlFW0=", - "dev": true + "integrity": "sha1-wOTKB/U4a7F+xeUiULT1lhNlFW0=" }, "cssnano-util-raw-cache": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/cssnano-util-raw-cache/-/cssnano-util-raw-cache-4.0.1.tgz", "integrity": "sha512-qLuYtWK2b2Dy55I8ZX3ky1Z16WYsx544Q0UWViebptpwn/xDBmog2TLg4f+DBMg1rJ6JDWtn96WHbOKDWt1WQA==", - "dev": true, "requires": { "postcss": "^7.0.0" } @@ -7738,14 +6286,12 @@ "cssnano-util-same-parent": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/cssnano-util-same-parent/-/cssnano-util-same-parent-4.0.1.tgz", - "integrity": "sha512-WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q==", - "dev": true + "integrity": "sha512-WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q==" }, "csso": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/csso/-/csso-4.0.3.tgz", "integrity": "sha512-NL3spysxUkcrOgnpsT4Xdl2aiEiBG6bXswAABQVHcMrfjjBisFOKwLDOmf4wf32aPdcJws1zds2B0Rg+jqMyHQ==", - "dev": true, "requires": { "css-tree": "1.0.0-alpha.39" }, @@ -7754,7 +6300,6 @@ "version": "1.0.0-alpha.39", "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.39.tgz", "integrity": "sha512-7UvkEYgBAHRG9Nt980lYxjsTrCyHFN53ky3wVsDkiMdVqylqRt+Zc+jm5qw7/qyOvN2dHSYtX0e4MbCCExSvnA==", - "dev": true, "requires": { "mdn-data": "2.0.6", "source-map": "^0.6.1" @@ -7763,14 +6308,12 @@ "mdn-data": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.6.tgz", - "integrity": "sha512-rQvjv71olwNHgiTbfPZFkJtjNMciWgswYeciZhtvWLO8bmX3TnhyA62I6sTWOyZssWHJJjY6/KiWwqQsWWsqOA==", - "dev": true + "integrity": "sha512-rQvjv71olwNHgiTbfPZFkJtjNMciWgswYeciZhtvWLO8bmX3TnhyA62I6sTWOyZssWHJJjY6/KiWwqQsWWsqOA==" }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" } } }, @@ -7796,9 +6339,9 @@ "dev": true }, "custom-return": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/custom-return/-/custom-return-1.0.10.tgz", - "integrity": "sha512-WF07K2QwOIb6+mHYmiFP7oAlbVL+fkNgCGvjMMFuiVn5HExz75HWOyXslk+GgzEF72JiDlih8MyD1WJB8SYw7w==", + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/custom-return/-/custom-return-1.0.11.tgz", + "integrity": "sha512-CM64m2bV2IQ1MiKRErXR3mRlIiFkIjkQGktTMVPXbmmKCZEiO/YGUlrg69/Gg2tGTSNv+Kyd3+bNJEJIlxhZbA==", "dev": true, "optional": true, "requires": { @@ -7808,22 +6351,22 @@ "cyclist": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", - "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", - "dev": true + "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=" }, "d": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", - "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", + "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", "dev": true, "requires": { - "es5-ext": "^0.10.9" + "es5-ext": "^0.10.50", + "type": "^1.0.1" } }, "d3": { - "version": "5.9.2", - "resolved": "https://registry.npmjs.org/d3/-/d3-5.9.2.tgz", - "integrity": "sha512-ydrPot6Lm3nTWH+gJ/Cxf3FcwuvesYQ5uk+j/kXEH/xbuYWYWTMAHTJQkyeuG8Y5WM5RSEYB41EctUrXQQytRQ==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/d3/-/d3-5.16.0.tgz", + "integrity": "sha512-4PL5hHaHwX4m7Zr1UapXW23apo6pexCgdetdJ5kTmADpG/7T9Gkxw0M0tf/pjoB63ezCCm0u5UaFYy2aMt0Mcw==", "requires": { "d3-array": "1", "d3-axis": "1", @@ -7859,9 +6402,9 @@ } }, "d3-array": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-1.2.1.tgz", - "integrity": "sha512-CyINJQ0SOUHojDdFDH4JEM0552vCR1utGyLHegJHyYH0JyCpSeTPxi4OBqHMA2jJZq4NH782LtaJWBImqI/HBw==" + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-1.2.4.tgz", + "integrity": "sha512-KHW6M86R+FUPYGb3R5XiYjXPq7VzwxZ22buHhAEVG5ztoEcZZMLov530mmccaqA1GghZArjQV46fuc8kUqhhHw==" }, "d3-axis": { "version": "1.0.12", @@ -7869,9 +6412,9 @@ "integrity": "sha512-ejINPfPSNdGFKEOAtnBtdkpr24c4d4jsei6Lg98mxf424ivoDP2956/5HDpIAtmHo85lqT4pruy+zEgvRUBqaQ==" }, "d3-brush": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/d3-brush/-/d3-brush-1.0.6.tgz", - "integrity": "sha512-lGSiF5SoSqO5/mYGD5FAeGKKS62JdA1EV7HPrU2b5rTX4qEJJtpjaGLJngjnkewQy7UnGstnFd3168wpf5z76w==", + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/d3-brush/-/d3-brush-1.1.5.tgz", + "integrity": "sha512-rEaJ5gHlgLxXugWjIkolTA0OyMvw8UWU1imYXy1v642XyyswmI1ybKOv05Ft+ewq+TFmdliD3VuK0pRp1VT/5A==", "requires": { "d3-dispatch": "1", "d3-drag": "1", @@ -7895,9 +6438,9 @@ "integrity": "sha512-ii0/r5f4sjKNTfh84Di+DpztYwqKhEyUlKoPrzUFfeSkWxjW49xU2QzO9qrPrNkpdI0XJkfzvmTu8V2Zylln6A==" }, "d3-color": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-1.2.3.tgz", - "integrity": "sha512-x37qq3ChOTLd26hnps36lexMRhNXEtVxZ4B25rL0DVdDsGQIJGB18S7y9XDwlDD6MD/ZBzITCf4JjGMM10TZkw==" + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-1.4.1.tgz", + "integrity": "sha512-p2sTHSLCJI2QKunbGb7ocOh7DgTAn8IrLx21QRc/BSnodXM4sv6aLQlnfpvehFMLZEfBc6g9pH9SWQccFYfJ9Q==" }, "d3-contour": { "version": "1.3.2", @@ -7908,23 +6451,23 @@ } }, "d3-dispatch": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-1.0.5.tgz", - "integrity": "sha512-vwKx+lAqB1UuCeklr6Jh1bvC4SZgbSqbkGBLClItFBIYH4vqDJCA7qfoy14lXmJdnBOdxndAMxjCbImJYW7e6g==" + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-1.0.6.tgz", + "integrity": "sha512-fVjoElzjhCEy+Hbn8KygnmMS7Or0a9sI2UzGwoB7cCtvI1XpVN9GpoYlnb3xt2YV66oXYb1fLJ8GMvP4hdU1RA==" }, "d3-drag": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/d3-drag/-/d3-drag-1.2.3.tgz", - "integrity": "sha512-8S3HWCAg+ilzjJsNtWW1Mutl74Nmzhb9yU6igspilaJzeZVFktmY6oO9xOh5TDk+BM2KrNFjttZNoJJmDnkjkg==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/d3-drag/-/d3-drag-1.2.5.tgz", + "integrity": "sha512-rD1ohlkKQwMZYkQlYVCrSFxsWPzI97+W+PaEIBNTMxRuxz9RF0Hi5nJWHGVJ3Om9d2fRTe1yOBINJyy/ahV95w==", "requires": { "d3-dispatch": "1", "d3-selection": "1" } }, "d3-dsv": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/d3-dsv/-/d3-dsv-1.1.1.tgz", - "integrity": "sha512-1EH1oRGSkeDUlDRbhsFytAXU6cAmXFzc52YUe6MRlPClmWb85MP1J5x+YJRzya4ynZWnbELdSAvATFW/MbxaXw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/d3-dsv/-/d3-dsv-1.2.0.tgz", + "integrity": "sha512-9yVlqvZcSOMhCYzniHE7EVUws7Fa1zgw+/EAV2BxJoG3ME19V6BQFBwI855XQDsxyOuG7NibqRMTtiF/Qup46g==", "requires": { "commander": "2", "iconv-lite": "0.4", @@ -7932,14 +6475,14 @@ } }, "d3-ease": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-1.0.5.tgz", - "integrity": "sha512-Ct1O//ly5y5lFM9YTdu+ygq7LleSgSE4oj7vUt9tPLHUi8VCV7QoizGpdWRWAwCO9LdYzIrQDg97+hGVdsSGPQ==" + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-1.0.6.tgz", + "integrity": "sha512-SZ/lVU7LRXafqp7XtIcBdxnWl8yyLpgOmzAk0mWBI9gXNzLDx5ybZgnRbH9dN/yY5tzVBqCQ9avltSnqVwessQ==" }, "d3-fetch": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/d3-fetch/-/d3-fetch-1.1.2.tgz", - "integrity": "sha512-S2loaQCV/ZeyTyIF2oP8D1K9Z4QizUzW7cWeAOAS4U88qOt3Ucf6GsmgthuYSdyB2HyEm4CeGvkQxWsmInsIVA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/d3-fetch/-/d3-fetch-1.2.0.tgz", + "integrity": "sha512-yC78NBVcd2zFAyR/HnUiBS7Lf6inSCoWcSxFfw8FYL7ydiqe80SazNwoffcqOfs95XaLo7yebsmQqDKSsXUtvA==", "requires": { "d3-dsv": "1" } @@ -7956,9 +6499,9 @@ } }, "d3-format": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-1.3.2.tgz", - "integrity": "sha512-Z18Dprj96ExragQ0DeGi+SYPQ7pPfRMtUXtsg/ChVIKNBCzjO8XYJvRTC1usblx52lqge56V5ect+frYTQc8WQ==" + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-1.4.4.tgz", + "integrity": "sha512-TWks25e7t8/cqctxCmxpUuzZN11QxIA7YrMbram94zMQ0PXjE4LVIMe/f6a4+xxL8HQ3OsAFULOINQi1pE62Aw==" }, "d3-geo": { "version": "1.7.1", @@ -7969,32 +6512,32 @@ } }, "d3-hierarchy": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/d3-hierarchy/-/d3-hierarchy-1.1.8.tgz", - "integrity": "sha512-L+GHMSZNwTpiq4rt9GEsNcpLa4M96lXMR8M/nMG9p5hBE0jy6C+3hWtyZMenPQdwla249iJy7Nx0uKt3n+u9+w==" + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/d3-hierarchy/-/d3-hierarchy-1.1.9.tgz", + "integrity": "sha512-j8tPxlqh1srJHAtxfvOUwKNYJkQuBFdM1+JAUfq6xqH5eAqf93L7oG1NVqDa4CpFZNvnNKtCYEUC8KY9yEn9lQ==" }, "d3-interpolate": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-1.3.2.tgz", - "integrity": "sha512-NlNKGopqaz9qM1PXh9gBF1KSCVh+jSFErrSlD/4hybwoNX/gt1d8CDbDW+3i+5UOHhjC6s6nMvRxcuoMVNgL2w==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-1.4.0.tgz", + "integrity": "sha512-V9znK0zc3jOPV4VD2zZn0sDhZU3WAE2bmlxdIwwQPPzPjvyLkd8B3JUVdS1IDUFDkWZ72c9qnv1GK2ZagTZ8EA==", "requires": { "d3-color": "1" } }, "d3-path": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-1.0.7.tgz", - "integrity": "sha512-q0cW1RpvA5c5ma2rch62mX8AYaiLX0+bdaSM2wxSU9tXjU4DNvkx9qiUvjkuWCj3p22UO/hlPivujqMiR9PDzA==" + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-1.0.9.tgz", + "integrity": "sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==" }, "d3-polygon": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/d3-polygon/-/d3-polygon-1.0.5.tgz", - "integrity": "sha512-RHhh1ZUJZfhgoqzWWuRhzQJvO7LavchhitSTHGu9oj6uuLFzYZVeBzaWTQ2qSO6bz2w55RMoOCf0MsLCDB6e0w==" + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/d3-polygon/-/d3-polygon-1.0.6.tgz", + "integrity": "sha512-k+RF7WvI08PC8reEoXa/w2nSg5AUMTi+peBD9cmFc+0ixHfbs4QmxxkarVal1IkVkgxVuk9JSHhJURHiyHKAuQ==" }, "d3-quadtree": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-1.0.6.tgz", - "integrity": "sha512-NUgeo9G+ENQCQ1LsRr2qJg3MQ4DJvxcDNCiohdJGHt5gRhBW6orIB5m5FJ9kK3HNL8g9F4ERVoBzcEwQBfXWVA==" + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-1.0.7.tgz", + "integrity": "sha512-RKPAeXnkC59IDGD0Wu5mANy0Q2V28L+fNe65pOCXVdVuTJS3WPKaJlFHer32Rbh9gIo9qMuJXio8ra4+YmIymA==" }, "d3-random": { "version": "1.1.2", @@ -8015,49 +6558,49 @@ } }, "d3-scale-chromatic": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/d3-scale-chromatic/-/d3-scale-chromatic-1.3.3.tgz", - "integrity": "sha512-BWTipif1CimXcYfT02LKjAyItX5gKiwxuPRgr4xM58JwlLocWbjPLI7aMEjkcoOQXMkYsmNsvv3d2yl/OKuHHw==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/d3-scale-chromatic/-/d3-scale-chromatic-1.5.0.tgz", + "integrity": "sha512-ACcL46DYImpRFMBcpk9HhtIyC7bTBR4fNOPxwVSl0LfulDAwyiHyPOTqcDG1+t5d4P9W7t/2NAuWu59aKko/cg==", "requires": { "d3-color": "1", "d3-interpolate": "1" } }, "d3-selection": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-1.4.0.tgz", - "integrity": "sha512-EYVwBxQGEjLCKF2pJ4+yrErskDnz5v403qvAid96cNdCMr8rmCYfY5RGzWz24mdIbxmDf6/4EAH+K9xperD5jg==" + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-1.4.1.tgz", + "integrity": "sha512-BTIbRjv/m5rcVTfBs4AMBLKs4x8XaaLkwm28KWu9S2vKNqXkXt2AH2Qf0sdPZHjFxcWg/YL53zcqAz+3g4/7PA==" }, "d3-shape": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-1.3.5.tgz", - "integrity": "sha512-VKazVR3phgD+MUCldapHD7P9kcrvPcexeX/PkMJmkUov4JM8IxsSg1DvbYoYich9AtdTsa5nNk2++ImPiDiSxg==", + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-1.3.7.tgz", + "integrity": "sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw==", "requires": { "d3-path": "1" } }, "d3-time": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-1.0.11.tgz", - "integrity": "sha512-Z3wpvhPLW4vEScGeIMUckDW7+3hWKOQfAWg/U7PlWBnQmeKQ00gCUsTtWSYulrKNA7ta8hJ+xXc6MHrMuITwEw==" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-1.1.0.tgz", + "integrity": "sha512-Xh0isrZ5rPYYdqhAVk8VLnMEidhz5aP7htAADH6MfzgmmicPkTo8LhkLxci61/lCB7n7UmE3bN0leRt+qvkLxA==" }, "d3-time-format": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-2.1.3.tgz", - "integrity": "sha512-6k0a2rZryzGm5Ihx+aFMuO1GgelgIz+7HhB4PH4OEndD5q2zGn1mDfRdNrulspOfR6JXkb2sThhDK41CSK85QA==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-2.2.3.tgz", + "integrity": "sha512-RAHNnD8+XvC4Zc4d2A56Uw0yJoM7bsvOlJR33bclxq399Rak/b9bhvu/InjxdWhPtkgU53JJcleJTGkNRnN6IA==", "requires": { "d3-time": "1" } }, "d3-timer": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-1.0.9.tgz", - "integrity": "sha512-rT34J5HnQUHhcLvhSB9GjCkN0Ddd5Y8nCwDBG2u6wQEeYxT/Lf51fTFFkldeib/sE/J0clIe0pnCfs6g/lRbyg==" + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-1.0.10.tgz", + "integrity": "sha512-B1JDm0XDaQC+uvo4DT79H0XmBskgS3l6Ve+1SBCfxgmtIb1AVrPIoqd+nPSv+loMX8szQ0sVUhGngL7D5QPiXw==" }, "d3-transition": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/d3-transition/-/d3-transition-1.2.0.tgz", - "integrity": "sha512-VJ7cmX/FPIPJYuaL2r1o1EMHLttvoIuZhhuAlRoOxDzogV8iQS6jYulDm3xEU3TqL80IZIhI551/ebmCMrkvhw==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/d3-transition/-/d3-transition-1.3.2.tgz", + "integrity": "sha512-sc0gRU4PFqZ47lPVHloMn9tlPcv8jxgOQg+0zjhfZXMQuvppjG6YuwdMBE0TuqCZjeJkLecku/l9R0JPcRhaDA==", "requires": { "d3-color": "1", "d3-dispatch": "1", @@ -8073,9 +6616,9 @@ "integrity": "sha1-Fodmfo8TotFYyAwUgMWinLDYlzw=" }, "d3-zoom": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/d3-zoom/-/d3-zoom-1.7.3.tgz", - "integrity": "sha512-xEBSwFx5Z9T3/VrwDkMt+mr0HCzv7XjpGURJ8lWmIC8wxe32L39eWHIasEe/e7Ox8MPU4p1hvH8PKN2olLzIBg==", + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/d3-zoom/-/d3-zoom-1.8.3.tgz", + "integrity": "sha512-VoLXTK4wvy1a0JpH2Il+F2CiOhVu7VRXWF5M/LroMIh3/zBAC3WAt7QoIvPibOavVo20hN6/37vwAsdBejLyKQ==", "requires": { "d3-dispatch": "1", "d3-drag": "1", @@ -8085,16 +6628,15 @@ } }, "damerau-levenshtein": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.5.tgz", - "integrity": "sha512-CBCRqFnpu715iPmw1KrdOrzRqbdFwQTwAWyyyYS42+iAgHCuXZ+/TdMgQkUENPomxEz9z1BEzuQU2Xw0kUuAgA==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.6.tgz", + "integrity": "sha512-JVrozIeElnj3QzfUIt8tB8YMluBJom4Vw9qTPpjGYQ9fYlB3D/rb6OordUxf3xeFB35LKWs0xqcO5U6ySvBtug==", "dev": true }, "dashdash": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, "requires": { "assert-plus": "^1.0.0" } @@ -8112,12 +6654,11 @@ "dev": true }, "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } }, "debuglog": { @@ -8129,8 +6670,7 @@ "decamelize": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" }, "decimal.js": { "version": "9.0.1", @@ -8140,8 +6680,7 @@ "decode-uri-component": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", - "dev": true + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" }, "decompress-response": { "version": "3.3.0", @@ -8153,9 +6692,17 @@ } }, "deep-equal": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", - "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=" + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", + "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", + "requires": { + "is-arguments": "^1.0.4", + "is-date-object": "^1.0.1", + "is-regex": "^1.0.4", + "object-is": "^1.0.1", + "object-keys": "^1.1.1", + "regexp.prototype.flags": "^1.2.0" + } }, "deep-extend": { "version": "0.6.0", @@ -8184,7 +6731,6 @@ "version": "4.2.0", "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-4.2.0.tgz", "integrity": "sha512-h6sMrVB1VMWVrW13mSc6ia/DwYYw5MN6+exNu1OaJeFac5aSAvwM7lZ0NVfTABuSkQelr4h5oebg3KB1XPdjgA==", - "dev": true, "requires": { "execa": "^1.0.0", "ip-regex": "^2.1.0" @@ -8237,11 +6783,10 @@ "dev": true }, "deffy": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/deffy/-/deffy-2.2.2.tgz", - "integrity": "sha1-CI9AkTy0cHhlP6b2l8IG4DRx1SM=", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/deffy/-/deffy-2.2.3.tgz", + "integrity": "sha512-c5JD8Z6V1aBWVzn1+aELL97R1pHCwEjXeU3hZXdigkZkxb9vhgFP162kAxGXl992TtAg0btwQyx7d54CqcQaXQ==", "dev": true, - "optional": true, "requires": { "typpy": "^2.0.0" } @@ -8250,7 +6795,6 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", - "dev": true, "requires": { "object-keys": "^1.0.12" } @@ -8259,7 +6803,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "dev": true, "requires": { "is-descriptor": "^1.0.2", "isobject": "^3.0.1" @@ -8269,7 +6812,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, "requires": { "kind-of": "^6.0.0" } @@ -8278,7 +6820,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, "requires": { "kind-of": "^6.0.0" } @@ -8287,7 +6828,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, "requires": { "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", @@ -8300,7 +6840,6 @@ "version": "4.1.1", "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz", "integrity": "sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==", - "dev": true, "requires": { "@types/glob": "^7.1.1", "globby": "^6.1.0", @@ -8311,11 +6850,18 @@ "rimraf": "^2.6.3" }, "dependencies": { + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "requires": { + "array-uniq": "^1.0.1" + } + }, "globby": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", - "dev": true, "requires": { "array-union": "^1.0.1", "glob": "^7.0.3", @@ -8327,64 +6873,21 @@ "pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" } } }, - "is-path-cwd": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", - "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", - "dev": true - }, - "is-path-in-cwd": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz", - "integrity": "sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==", - "dev": true, - "requires": { - "is-path-inside": "^2.1.0" - } - }, - "is-path-inside": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz", - "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==", - "dev": true, - "requires": { - "path-is-inside": "^1.0.2" - } - }, "p-map": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", - "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", - "dev": true + "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==" }, "rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, "requires": { "glob": "^7.1.3" - }, - "dependencies": { - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } } } } @@ -8402,8 +6905,7 @@ "depd": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", - "dev": true + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" }, "dependency-graph": { "version": "0.7.2", @@ -8415,7 +6917,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", - "dev": true, "requires": { "inherits": "^2.0.1", "minimalistic-assert": "^1.0.0" @@ -8424,8 +6925,7 @@ "destroy": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", - "dev": true + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" }, "detect-file": { "version": "1.0.0", @@ -8436,8 +6936,7 @@ "detect-node": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz", - "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==", - "dev": true + "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==" }, "dezalgo": { "version": "1.0.3", @@ -8456,29 +6955,33 @@ "dev": true }, "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==" }, "diffie-hellman": { "version": "5.0.3", "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", - "dev": true, "requires": { "bn.js": "^4.1.0", "miller-rabin": "^4.0.0", "randombytes": "^2.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" + } } }, "dir-glob": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.2.2.tgz", - "integrity": "sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==", - "dev": true, + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", "requires": { - "path-type": "^3.0.0" + "path-type": "^4.0.0" } }, "dltjs": { @@ -8509,14 +7012,12 @@ "dns-equal": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=", - "dev": true + "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=" }, "dns-packet": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.1.tgz", "integrity": "sha512-0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg==", - "dev": true, "requires": { "ip": "^1.1.0", "safe-buffer": "^5.0.1" @@ -8526,7 +7027,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz", "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=", - "dev": true, "requires": { "buffer-indexof": "^1.0.0" } @@ -8547,7 +7047,6 @@ "version": "0.2.2", "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", - "dev": true, "requires": { "domelementtype": "^2.0.1", "entities": "^2.0.0" @@ -8556,14 +7055,7 @@ "domelementtype": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.0.1.tgz", - "integrity": "sha512-5HOHUDsYZWV8FGWN0Njbr/Rn7f/eWSQi1v7+HsUVwXgn8nWWlL64zKDkS0n8ZmQ3mlWOMuXOnR+7Nx/5tMO5AQ==", - "dev": true - }, - "entities": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.0.tgz", - "integrity": "sha512-D9f7V0JSRwIxlRI2mjMqufDrRDnx8p+eEOz7aUM9SuvF8gsBzra0/6tbjl1m8eQHrZlYj6PxqE00hZ1SAIKPLw==", - "dev": true + "integrity": "sha512-5HOHUDsYZWV8FGWN0Njbr/Rn7f/eWSQi1v7+HsUVwXgn8nWWlL64zKDkS0n8ZmQ3mlWOMuXOnR+7Nx/5tMO5AQ==" } } }, @@ -8575,40 +7067,36 @@ "domain-browser": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", - "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", - "dev": true + "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==" }, "domelementtype": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", - "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", - "dev": true + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" }, "domutils": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", - "dev": true, "requires": { "dom-serializer": "0", "domelementtype": "1" } }, "dot-object": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/dot-object/-/dot-object-1.7.0.tgz", - "integrity": "sha512-X91KaxzQmhQvfokXCdM8EkJVDHe5HlffhT4eaS6CsLk8Nhs9ChA6KWmrt8kgCz5rmLKzoOEP2tmRK/kBvomFwg==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/dot-object/-/dot-object-1.9.0.tgz", + "integrity": "sha512-7MPN6y7XhAO4vM4eguj5+5HNKLjJYfkVG1ZR1Aput4Q4TR6SYeSjhpVQ77IzJHoSHffKbDxBC+48aCiiRurDPw==", "dev": true, "requires": { - "commander": "^2.10.0", - "glob": "^7.1.2" + "commander": "^2.20.0", + "glob": "^7.1.4" } }, "dot-prop": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.2.0.tgz", "integrity": "sha512-uEUyaDKoSQ1M4Oq8l45hSE26SnTxL6snNnqvK/VWx5wJhmff5z0FUVJDKDanor/6w3kzE3i7XZOk+7wC0EXr1A==", - "dev": true, "requires": { "is-obj": "^2.0.0" } @@ -8655,10 +7143,9 @@ "dev": true }, "duplexify": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.6.1.tgz", - "integrity": "sha512-vM58DwdnKmty+FSPzT14K9JXb90H+j5emaR4KYbr2KTIz00WHGbWOe5ghQTx233ZCLZtrGDALzKwcjEtSt35mA==", - "dev": true, + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", + "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", "requires": { "end-of-stream": "^1.0.0", "inherits": "^2.0.1", @@ -8677,37 +7164,33 @@ } }, "earcut": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/earcut/-/earcut-2.1.3.tgz", - "integrity": "sha512-AxdCdWUk1zzK/NuZ7e1ljj6IGC+VAdC3Qb7QQDsXpfNrc5IM8tL9nNXUmEGE6jRHTfZ10zhzRhtDmWVsR5pd3A==" + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/earcut/-/earcut-2.2.2.tgz", + "integrity": "sha512-eZoZPPJcUHnfRZ0PjLvx2qBordSiO8ofC3vt+qACLM95u+4DovnbYNpQtJh0DNsWj8RnxrQytD4WA8gj5cRIaQ==" }, "ecc-jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz", - "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=", - "dev": true, - "optional": true, + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", "requires": { - "jsbn": "~0.1.0" + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" } }, "ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", - "dev": true + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.390", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.390.tgz", - "integrity": "sha512-4RvbM5x+002gKI8sltkqWEk5pptn0UnzekUx8RTThAMPDSb8jjpm6SwGiSnEve7f85biyZl8DMXaipaCxDjXag==", - "dev": true + "version": "1.3.473", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.473.tgz", + "integrity": "sha512-smevlzzMNz3vMz6OLeeCq5HRWEj2AcgccNPYnAx4Usx0IOciq9DU36RJcICcS09hXoY7t7deRfVYKD14IrGb9A==" }, "elliptic": { "version": "6.5.2", "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.2.tgz", "integrity": "sha512-f4x70okzZbIQl/NSRLkI/+tteV/9WqL98zx+SQ69KbXxmVrmjwsNUPn/gYJJ0sHvEak24cZgHIPegRePAtA/xw==", - "dev": true, "requires": { "bn.js": "^4.4.0", "brorand": "^1.0.1", @@ -8716,41 +7199,43 @@ "inherits": "^2.0.1", "minimalistic-assert": "^1.0.0", "minimalistic-crypto-utils": "^1.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" + } } }, "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" }, "emojis-list": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", - "dev": true + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==" }, "encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", - "dev": true + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" }, "encoding": { "version": "0.1.12", "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", "dev": true, - "optional": true, "requires": { "iconv-lite": "~0.4.13" } }, "end-of-stream": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", - "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", - "dev": true, + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", "requires": { "once": "^1.4.0" } @@ -8784,6 +7269,12 @@ "ms": "2.0.0" } }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, "ws": { "version": "3.3.3", "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", @@ -8816,6 +7307,12 @@ "yeast": "0.1.2" }, "dependencies": { + "component-emitter": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", + "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", + "dev": true + }, "debug": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", @@ -8825,6 +7322,12 @@ "ms": "2.0.0" } }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, "ws": { "version": "3.3.3", "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", @@ -8855,7 +7358,6 @@ "version": "4.1.1", "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.1.tgz", "integrity": "sha512-98p2zE+rL7/g/DzMHMTF4zZlCgeVdJ7yr6xzEpJRYwFYrGi9ANdn5DnJURg6RpBkyk60XYDnWIv51VfIhfNGuA==", - "dev": true, "requires": { "graceful-fs": "^4.1.2", "memory-fs": "^0.5.0", @@ -8869,17 +7371,15 @@ "dev": true }, "entities": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", - "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", - "dev": true + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.3.tgz", + "integrity": "sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ==" }, "err": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/err/-/err-1.1.1.tgz", "integrity": "sha1-65KOLhGjFmSPeCgz0PlyWLpDwvg=", "dev": true, - "optional": true, "requires": { "typpy": "^2.2.0" } @@ -8894,58 +7394,40 @@ "version": "0.1.7", "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", - "dev": true, "requires": { "prr": "~1.0.1" } }, "error-ex": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz", - "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=", - "dev": true, + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "requires": { "is-arrayish": "^0.2.1" } }, "es-abstract": { - "version": "1.17.5", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.5.tgz", - "integrity": "sha512-BR9auzDbySxOcfog0tLECW8l28eRGpDpU3Dm3Hp4q/N+VtLTmyj4EUN088XZWQDW/hzj6sYRDXeOFsaAODKvpg==", - "dev": true, + "version": "1.17.6", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.6.tgz", + "integrity": "sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==", "requires": { "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", "has": "^1.0.3", "has-symbols": "^1.0.1", - "is-callable": "^1.1.5", - "is-regex": "^1.0.5", + "is-callable": "^1.2.0", + "is-regex": "^1.1.0", "object-inspect": "^1.7.0", "object-keys": "^1.1.1", "object.assign": "^4.1.0", - "string.prototype.trimleft": "^2.1.1", - "string.prototype.trimright": "^2.1.1" - }, - "dependencies": { - "has-symbols": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", - "dev": true - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - } + "string.prototype.trimend": "^1.0.1", + "string.prototype.trimstart": "^1.0.1" } }, "es-to-primitive": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "dev": true, "requires": { "is-callable": "^1.1.4", "is-date-object": "^1.0.1", @@ -8953,14 +7435,14 @@ } }, "es5-ext": { - "version": "0.10.46", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.46.tgz", - "integrity": "sha512-24XxRvJXNFwEMpJb3nOkiRJKRoupmjYmOPVlI65Qy2SrtxwOTB+g6ODjBKOtwEHbYrhWRty9xxOWLNdClT2djw==", + "version": "0.10.53", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", + "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", "dev": true, "requires": { "es6-iterator": "~2.0.3", - "es6-symbol": "~3.1.1", - "next-tick": "1" + "es6-symbol": "~3.1.3", + "next-tick": "~1.0.0" } }, "es6-iterator": { @@ -8975,10 +7457,9 @@ } }, "es6-promise": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.5.tgz", - "integrity": "sha512-n6wvpdE43VFtJq+lUDYDBFUwV8TZbuGXLV4D6wKafg13ldznKsyEvatubnmUe31zcvelSzOHF+XbaT+Bl9ObDg==", - "dev": true + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==" }, "es6-promisify": { "version": "5.0.0", @@ -8990,13 +7471,13 @@ } }, "es6-symbol": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", - "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", + "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", "dev": true, "requires": { - "d": "1", - "es5-ext": "~0.10.14" + "d": "^1.0.1", + "ext": "^1.1.2" } }, "es6-templates": { @@ -9010,14 +7491,14 @@ } }, "es6-weak-map": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.2.tgz", - "integrity": "sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8=", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz", + "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==", "dev": true, "requires": { "d": "1", - "es5-ext": "^0.10.14", - "es6-iterator": "^2.0.1", + "es5-ext": "^0.10.46", + "es6-iterator": "^2.0.3", "es6-symbol": "^3.1.1" } }, @@ -9030,8 +7511,7 @@ "escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", - "dev": true + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" }, "escape-latex": { "version": "1.0.3", @@ -9041,35 +7521,26 @@ "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" }, "eslint-scope": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", - "dev": true, "requires": { "esrecurse": "^4.1.0", "estraverse": "^4.1.1" } }, - "esm": { - "version": "3.2.25", - "resolved": "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz", - "integrity": "sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==" - }, "esprima": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" }, "esrecurse": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", - "dev": true, "requires": { "estraverse": "^4.1.0" } @@ -9077,8 +7548,7 @@ "estraverse": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" }, "estree-walker": { "version": "0.3.1", @@ -9087,34 +7557,29 @@ "dev": true }, "esutils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", - "dev": true + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" }, "etag": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", - "dev": true + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" }, "eventemitter3": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.0.tgz", - "integrity": "sha512-qerSRB0p+UDEssxTtm6EDKcE7W4OaoisfIMl4CngyEhjpYglocpNg6UEqCvemdGhosAsg4sO2dXJOdyBifPGCg==", - "dev": true + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", + "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==" }, "events": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/events/-/events-3.1.0.tgz", - "integrity": "sha512-Rv+u8MLHNOdMjTAFeT3nCjHn2aGlx435FP/sDHNaRhDEMwyI/aB22Kj2qIN8R0cw3z28psEQLYwxVKLsKrMgWg==", - "dev": true + "integrity": "sha512-Rv+u8MLHNOdMjTAFeT3nCjHn2aGlx435FP/sDHNaRhDEMwyI/aB22Kj2qIN8R0cw3z28psEQLYwxVKLsKrMgWg==" }, "eventsource": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.0.7.tgz", "integrity": "sha512-4Ln17+vVT0k8aWq+t/bF5arcS3EpT9gYtW66EPacdj/mAFevznsnyoHLPy2BA8gbIQeIHoPsvwmfBftfcG//BQ==", - "dev": true, "requires": { "original": "^1.0.0" } @@ -9123,7 +7588,6 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", - "dev": true, "requires": { "md5.js": "^1.3.4", "safe-buffer": "^5.1.1" @@ -9133,7 +7597,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", - "dev": true, "requires": { "cross-spawn": "^6.0.0", "get-stream": "^4.0.0", @@ -9154,7 +7617,6 @@ "version": "2.1.4", "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "dev": true, "requires": { "debug": "^2.3.3", "define-property": "^0.2.5", @@ -9165,11 +7627,18 @@ "to-regex": "^3.0.1" }, "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, "define-property": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, "requires": { "is-descriptor": "^0.1.0" } @@ -9178,10 +7647,14 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, "requires": { "is-extendable": "^0.1.0" } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" } } }, @@ -9198,7 +7671,6 @@ "version": "4.17.1", "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", - "dev": true, "requires": { "accepts": "~1.3.7", "array-flatten": "1.1.1", @@ -9235,13 +7707,41 @@ "array-flatten": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", - "dev": true + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, "qs": { "version": "6.7.0", "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" + } + } + }, + "ext": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", + "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", + "dev": true, + "requires": { + "type": "^2.0.0" + }, + "dependencies": { + "type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.0.0.tgz", + "integrity": "sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow==", "dev": true } } @@ -9255,7 +7755,6 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "dev": true, "requires": { "assign-symbols": "^1.0.0", "is-extendable": "^1.0.1" @@ -9265,7 +7764,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, "requires": { "is-plain-object": "^2.0.4" } @@ -9281,24 +7779,12 @@ "chardet": "^0.7.0", "iconv-lite": "^0.4.24", "tmp": "^0.0.33" - }, - "dependencies": { - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - } } }, "extglob": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "dev": true, "requires": { "array-unique": "^0.3.2", "define-property": "^1.0.0", @@ -9314,7 +7800,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, "requires": { "is-descriptor": "^1.0.0" } @@ -9323,7 +7808,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, "requires": { "is-extendable": "^0.1.0" } @@ -9332,7 +7816,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, "requires": { "kind-of": "^6.0.0" } @@ -9341,7 +7824,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, "requires": { "kind-of": "^6.0.0" } @@ -9350,7 +7832,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, "requires": { "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", @@ -9362,31 +7843,42 @@ "extsprintf": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" }, "fancy-log": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.2.tgz", - "integrity": "sha1-9BEl49hPLn2JpD0G2VjI94vha+E=", + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz", + "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==", "dev": true, "requires": { "ansi-gray": "^0.1.1", "color-support": "^1.1.3", + "parse-node-version": "^1.0.0", "time-stamp": "^1.0.0" } }, "fast-deep-equal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", - "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", - "dev": true + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "fast-glob": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.2.tgz", + "integrity": "sha512-UDV82o4uQyljznxwMxyVRJgZZt3O5wENYojjzbaGEGZgeOxkLFf+V4cnUD+krzb2F72E18RhamkMZ7AdeggF7A==", + "requires": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.0", + "merge2": "^1.3.0", + "micromatch": "^4.0.2", + "picomatch": "^2.2.1" + } }, "fast-json-stable-stringify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", - "dev": true + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" }, "fastparse": { "version": "1.1.2", @@ -9394,11 +7886,18 @@ "integrity": "sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==", "dev": true }, + "fastq": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.8.0.tgz", + "integrity": "sha512-SMIZoZdLh/fgofivvIkmknUXyPnvxRE3DhtZ5Me3Mrsk5gyPL42F0xr51TdRXskBxHfMp+07bcYzfsYEsSQA9Q==", + "requires": { + "reusify": "^1.0.4" + } + }, "faye-websocket": { "version": "0.10.0", "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", - "dev": true, "requires": { "websocket-driver": ">=0.5.1" } @@ -9406,8 +7905,7 @@ "figgy-pudding": { "version": "3.5.2", "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", - "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==", - "dev": true + "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==" }, "figures": { "version": "3.2.0", @@ -9422,7 +7920,6 @@ "version": "6.0.0", "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.0.0.tgz", "integrity": "sha512-/aMOAYEFXDdjG0wytpTL5YQLfZnnTmLNjn+AIrJ/6HVnTfDqLsVKUUwkDf4I4kgex36BvjuXEn/TX9B/1ESyqQ==", - "dev": true, "requires": { "loader-utils": "^2.0.0", "schema-utils": "^2.6.5" @@ -9433,13 +7930,6 @@ "resolved": "https://registry.npmjs.org/file-saver/-/file-saver-1.3.8.tgz", "integrity": "sha512-spKHSBQIxxS81N/O21WmuXA2F6wppUCsutpzenOeZzOCCJ5gEfcbqJP983IrpLXzYmXnMUa6J03SubcNPdKrlg==" }, - "file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", - "dev": true, - "optional": true - }, "fileset": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/fileset/-/fileset-2.0.3.tgz", @@ -9451,33 +7941,17 @@ } }, "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } + "to-regex-range": "^5.0.1" } }, "finalhandler": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", - "dev": true, "requires": { "debug": "2.6.9", "encodeurl": "~1.0.2", @@ -9486,6 +7960,21 @@ "parseurl": "~1.3.3", "statuses": "~1.5.0", "unpipe": "~1.0.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } } }, "find": { @@ -9501,7 +7990,6 @@ "version": "3.3.1", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz", "integrity": "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==", - "dev": true, "requires": { "commondir": "^1.0.1", "make-dir": "^3.0.2", @@ -9512,7 +8000,6 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, "requires": { "locate-path": "^5.0.0", "path-exists": "^4.0.0" @@ -9522,40 +8009,48 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, "requires": { "p-locate": "^4.1.0" } }, "make-dir": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.0.2.tgz", - "integrity": "sha512-rYKABKutXa6vXTXhoV18cBE7PaewPXHe/Bdq4v+ZLMhxbWApkFFplT0LcbMW+6BbjnQXzZ/sAvSE/JdguApG5w==", - "dev": true, + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "requires": { "semver": "^6.0.0" } }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "requires": { + "p-try": "^2.0.0" + } + }, "p-locate": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, "requires": { "p-limit": "^2.2.0" } }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" + }, "path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" }, "pkg-dir": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, "requires": { "find-up": "^4.0.0" } @@ -9563,8 +8058,7 @@ "semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" } } }, @@ -9585,41 +8079,134 @@ "dev": true }, "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "requires": { - "locate-path": "^3.0.0" + "locate-path": "^2.0.0" } }, "findup-sync": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz", - "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-3.0.0.tgz", + "integrity": "sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg==", "dev": true, "requires": { "detect-file": "^1.0.0", - "is-glob": "^3.1.0", + "is-glob": "^4.0.0", "micromatch": "^3.0.4", "resolve-dir": "^1.0.1" }, "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", "dev": true, "requires": { - "is-extglob": "^2.1.0" + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" } } } }, "fined": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fined/-/fined-1.1.0.tgz", - "integrity": "sha1-s33IRLdqL15wgeiE98CuNE8VNHY=", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fined/-/fined-1.2.0.tgz", + "integrity": "sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng==", "dev": true, "requires": { "expand-tilde": "^2.0.2", @@ -9629,10 +8216,19 @@ "parse-filepath": "^1.0.1" } }, + "first-chunk-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-2.0.0.tgz", + "integrity": "sha1-G97NuOCDwGZLkZRVgVd6Q6nzHXA=", + "dev": true, + "requires": { + "readable-stream": "^2.0.2" + } + }, "fixed-or-percent": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/fixed-or-percent/-/fixed-or-percent-1.0.10.tgz", - "integrity": "sha512-ePaOmX7WcQBpSohBuguScFIHJJ6dcw3QDbo/yr5Uiu2OtYxhAkiyD1/NCBBaMHKI/M7/5XITHY95JvepI4SeQg==", + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/fixed-or-percent/-/fixed-or-percent-1.0.11.tgz", + "integrity": "sha512-bevMkXzKCTwt/lyk3cGo3WEaHBUa4FrA35g2QXuBwVy9+blPfP7cJlIrJyiCSx5QPm6cUCn88XrnRHBgBHDRHA==", "dev": true, "optional": true, "requires": { @@ -9641,43 +8237,40 @@ } }, "flagged-respawn": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.0.tgz", - "integrity": "sha1-Tnmumy6zi/hrO7Vr8+ClaqX8q9c=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.1.tgz", + "integrity": "sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==", "dev": true }, "flatted": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.1.tgz", - "integrity": "sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", + "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", "dev": true }, "flush-write-stream": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.0.3.tgz", - "integrity": "sha512-calZMC10u0FMUqoiunI2AiGIIUtUIvifNwkHhNupZH4cbNnW1Itkoh/Nf5HFYmDrwWPjrUxpkZT0KhuCq0jmGw==", - "dev": true, + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", + "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", "requires": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.4" + "inherits": "^2.0.3", + "readable-stream": "^2.3.6" } }, "follow-redirects": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.6.1.tgz", - "integrity": "sha512-t2JCjbzxQpWvbhts3l6SH1DKzSrx8a+SsaVf4h6bG4kOXUuPYS/kg2Lr4gQSb7eemaHqJkOThF1BGyjlUkO1GQ==", - "dev": true, + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.11.0.tgz", + "integrity": "sha512-KZm0V+ll8PfBrKwMzdo5D13b1bur9Iq9Zd/RMmAoQQcl2PxxFml8cxXPaaPYVbV0RjNjq1CU7zIzAOqtUPudmA==", "requires": { - "debug": "=3.1.0" + "debug": "^3.0.0" }, "dependencies": { "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } } } @@ -9690,8 +8283,7 @@ "for-in": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", - "dev": true + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" }, "for-own": { "version": "1.0.0", @@ -9705,29 +8297,27 @@ "forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" }, "form-data": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz", - "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", "requires": { "asynckit": "^0.4.0", - "combined-stream": "1.0.6", + "combined-stream": "^1.0.6", "mime-types": "^2.1.12" } }, "formidable": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.2.1.tgz", - "integrity": "sha512-Fs9VRguL0gqGHkXS5GQiMCr1VhZBxz0JnJs4JmMp/2jL18Fmbzvv7vOFRU+U8TBkHEE/CX1qDXzJplVULgsLeg==" + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.2.2.tgz", + "integrity": "sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q==" }, "forwarded": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", - "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=", - "dev": true + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" }, "fraction.js": { "version": "4.0.8", @@ -9738,7 +8328,6 @@ "version": "0.2.1", "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", - "dev": true, "requires": { "map-cache": "^0.2.2" } @@ -9746,14 +8335,12 @@ "fresh": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", - "dev": true + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" }, "from2": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", - "dev": true, "requires": { "inherits": "^2.0.1", "readable-stream": "^2.0.0" @@ -9769,9 +8356,9 @@ } }, "fs-extra": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", - "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.2.tgz", + "integrity": "sha1-+RcExT0bRh+JNFKwwwfZmXZHq2s=", "dev": true, "requires": { "graceful-fs": "^4.1.2", @@ -9783,611 +8370,66 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "fs-mkdirp-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz", - "integrity": "sha1-C3gV/DIBxqaeFNuYzgmMFpNSWes=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "through2": "^2.0.3" - } - }, - "fs-write-stream-atomic": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", - "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "iferr": "^0.1.5", - "imurmurhash": "^0.1.4", - "readable-stream": "1 || 2" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "fsevents": { - "version": "1.2.12", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.12.tgz", - "integrity": "sha512-Ggd/Ktt7E7I8pxZRbGIs7vwqAPscSESMrCSkx2FtWeqmheJgCo2R74fTsZFCifr0VTPwqRpPv17+6b8Zp7th0Q==", - "dev": true, - "optional": true, - "requires": { - "bindings": "^1.5.0", - "nan": "^2.12.1", - "node-pre-gyp": "*" - }, - "dependencies": { - "abbrev": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "aproba": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "brace-expansion": { - "version": "1.1.11", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.1.4", - "bundled": true, - "dev": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "debug": { - "version": "3.2.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ms": "^2.1.1" - } - }, - "deep-extend": { - "version": "0.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "fs-minipass": { - "version": "1.2.7", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.6.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "gauge": { - "version": "2.7.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "glob": { - "version": "7.1.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "iconv-lite": { - "version": "0.4.24", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore-walk": { - "version": "3.0.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "bundled": true, - "dev": true, - "optional": true - }, - "ini": { - "version": "1.3.5", - "bundled": true, - "dev": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "bundled": true, - "dev": true, - "optional": true - }, - "minipass": { - "version": "2.9.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.3.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.9.0" - } - }, - "mkdirp": { - "version": "0.5.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "ms": { - "version": "2.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "needle": { - "version": "2.3.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "debug": "^3.2.6", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.14.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.1", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.2.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4.4.2" - } - }, - "nopt": { - "version": "4.0.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npm-normalize-package-bin": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "npm-packlist": { - "version": "1.4.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npmlog": { - "version": "4.1.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "osenv": { - "version": "0.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "process-nextick-args": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "rc": { - "version": "1.2.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - } - }, - "readable-stream": { - "version": "2.3.7", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "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" - } - }, - "rimraf": { - "version": "2.7.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "safer-buffer": { - "version": "2.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "sax": { - "version": "1.2.4", - "bundled": true, - "dev": true, - "optional": true - }, - "semver": { - "version": "5.7.1", - "bundled": true, - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "tar": { - "version": "4.4.13", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "chownr": "^1.1.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.8.6", - "minizlib": "^1.2.1", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.3" - } - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "wide-align": { - "version": "1.1.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "yallist": { - "version": "3.1.1", - "bundled": true, - "dev": true, - "optional": true - } + "requires": { + "minipass": "^3.0.0" + } + }, + "fs-mkdirp-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz", + "integrity": "sha1-C3gV/DIBxqaeFNuYzgmMFpNSWes=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "through2": "^2.0.3" + } + }, + "fs-write-stream-atomic": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", + "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", + "requires": { + "graceful-fs": "^4.1.2", + "iferr": "^0.1.5", + "imurmurhash": "^0.1.4", + "readable-stream": "1 || 2" } }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "fsevents": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", + "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", + "optional": true + }, "function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, "function.name": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/function.name/-/function.name-1.0.10.tgz", - "integrity": "sha512-IPRArugcDP5O1oRUl2H55GnLNq3CV26bG/dFzLx0AR2dhB/4nj9rIqh1NBdlK7bWlfggV1Q+Aq5Jxafr/+j4BQ==", + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/function.name/-/function.name-1.0.12.tgz", + "integrity": "sha512-C7Tu+rAFrWW5RjXqtKtXp2xOdCujq+4i8ZH3w0uz/xrYHBwXZrPt96x8cDAEHrIjeyEv/Jm6iDGyqupbaVQTlw==", "dev": true, - "optional": true, "requires": { "noop6": "^1.0.1" } }, + "genfun": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/genfun/-/genfun-5.0.0.tgz", + "integrity": "sha512-KGDOARWVga7+rnB3z9Sd2Letx515owfk0hSxHGuqjANb1M+x2bGZGqHLiozPsYMdM2OubeMni/Hpwmjq6qIUhA==", + "dev": true + }, "gensync": { "version": "1.0.0-beta.1", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz", - "integrity": "sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==", - "dev": true + "integrity": "sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==" }, "geojson": { "version": "0.5.0", @@ -10413,10 +8455,9 @@ } }, "get-caller-file": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz", - "integrity": "sha1-9wLmMSfn4jHBYKgMFVSstw1QR+U=", - "dev": true + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" }, "get-closest": { "version": "0.0.4", @@ -10433,34 +8474,19 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "dev": true, "requires": { "pump": "^3.0.0" - }, - "dependencies": { - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - } } }, "get-value": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", - "dev": true + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=" }, "getpass": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, "requires": { "assert-plus": "^1.0.0" } @@ -10471,10 +8497,9 @@ "integrity": "sha512-0YCjVpE3pS5XWlN3J4X7AiAx65+nqAI54LndtVFnQZB6G/FVLkZH8y8V6R3cIoOQR4pUdfwQGd1iwyoXHJ4Qfw==" }, "glob": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", - "dev": true, + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -10485,24 +8510,11 @@ } }, "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "dev": true, + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", + "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } + "is-glob": "^4.0.1" } }, "glob-stream": { @@ -10521,6 +8533,27 @@ "remove-trailing-separator": "^1.0.1", "to-absolute-glob": "^2.0.0", "unique-stream": "^2.0.2" + }, + "dependencies": { + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + } + }, + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } } }, "glob-watcher": { @@ -10535,6 +8568,212 @@ "is-negated-glob": "^1.0.0", "just-debounce": "^1.0.0", "object.defaults": "^1.1.0" + }, + "dependencies": { + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "dev": true, + "requires": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + } + }, + "binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "dev": true + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "chokidar": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", + "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", + "dev": true, + "requires": { + "anymatch": "^2.0.0", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "fsevents": "^1.2.7", + "glob-parent": "^3.1.0", + "inherits": "^2.0.3", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^3.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.2.1", + "upath": "^1.1.1" + }, + "dependencies": { + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + } + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "fsevents": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", + "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", + "dev": true, + "optional": true + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true, + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + }, + "readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + } } }, "global-dirs": { @@ -10573,35 +8812,25 @@ "globals": { "version": "11.12.0", "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==" }, "globby": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/globby/-/globby-7.1.1.tgz", - "integrity": "sha1-+yzP+UAfhgCUXfral0QMypcrhoA=", - "dev": true, + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.1.tgz", + "integrity": "sha512-iH9RmgwCmUJHi2z5o2l3eTtGBtXek1OYlHrbcxOYugyHLmAsZrPj43OtHThd62Buh/Vv6VyCBD2bdyWcGNQqoQ==", "requires": { - "array-union": "^1.0.1", - "dir-glob": "^2.0.0", - "glob": "^7.1.2", - "ignore": "^3.3.5", - "pify": "^3.0.0", - "slash": "^1.0.0" - }, - "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - } + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.1.1", + "ignore": "^5.1.4", + "merge2": "^1.3.0", + "slash": "^3.0.0" } }, "glogg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/glogg/-/glogg-1.0.1.tgz", - "integrity": "sha512-ynYqXLoluBKf9XGR1gA59yEJisIL7YHEH4xr3ZziHB5/yl4qWfaK8Js9jGe6gBGCSCKVqiyO30WnRZADvemUNw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/glogg/-/glogg-1.0.2.tgz", + "integrity": "sha512-5mwUoSuBk44Y4EshyiqcH95ZntbDdTQqA3QYSrxmzj28Ai0vXBGMH1ApSANH14j2sIRtqCEyg6PfsuP7ElOEDA==", "dev": true, "requires": { "sparkles": "^1.0.0" @@ -10632,14 +8861,32 @@ } }, "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "optional": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" + } + }, + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "optional": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" } + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true, + "optional": true } } }, @@ -10648,15 +8895,14 @@ "resolved": "https://registry.npmjs.org/gm-installed/-/gm-installed-1.0.9.tgz", "integrity": "sha512-VHuNQJLEBq7M/bA6zlF2JT3aX1REnMD7MD/xlcaUw9QV7enQUGFQWIfYr/EymVxWgj4n0lD/0siNoQ65fuq9PA==", "dev": true, - "optional": true, "requires": { "prgm-installed": "^1.0.1" } }, "gm-tools": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/gm-tools/-/gm-tools-1.0.10.tgz", - "integrity": "sha512-G+i6+0loC/4RdT/d9Fxr4gNb5zNVsLh2ebezzW/7yFp+2+t7KtLKtkXlD0ZMHeIsenlIMEhVsSb92zhO143Dyw==", + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/gm-tools/-/gm-tools-1.0.11.tgz", + "integrity": "sha512-cxS2i139+XfcfdoKKzbkaf98vSfEcnO8ziVqduV19Yg31h8KmJuHhzLF4pZXzKJW85RxITh62kcTLtks5mcekg==", "dev": true, "optional": true, "requires": { @@ -10687,20 +8933,19 @@ } }, "graceful-fs": { - "version": "4.1.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", - "dev": true + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", + "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==" }, "gulp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/gulp/-/gulp-4.0.0.tgz", - "integrity": "sha1-lXZsYB2t5Kd+0+eyttwDiBtZY2Y=", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/gulp/-/gulp-4.0.2.tgz", + "integrity": "sha512-dvEs27SCZt2ibF29xYgmnwwCYZxdxhQ/+LFWlbAW8y7jt68L/65402Lz3+CKy0Ov4rOs+NERmDq7YlZaDqUIfA==", "dev": true, "requires": { - "glob-watcher": "^5.0.0", - "gulp-cli": "^2.0.0", - "undertaker": "^1.0.0", + "glob-watcher": "^5.0.3", + "gulp-cli": "^2.2.0", + "undertaker": "^1.2.1", "vinyl-fs": "^3.0.0" }, "dependencies": { @@ -10730,22 +8975,16 @@ "wrap-ansi": "^2.0.0" } }, - "concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "dev": true }, "gulp-cli": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/gulp-cli/-/gulp-cli-2.0.1.tgz", - "integrity": "sha512-RxujJJdN8/O6IW2nPugl7YazhmrIEjmiVfPKrWt68r71UCaLKS71Hp0gpKT+F6qOUFtr7KqtifDKaAJPRVvMYQ==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/gulp-cli/-/gulp-cli-2.3.0.tgz", + "integrity": "sha512-zzGBl5fHo0EKSXsHzjspp3y5CONegCm8ErO5Qh0UzFzk2y4tMvzLWhoDokADbarfZRL2pGpRp7yt6gfJX4ph7A==", "dev": true, "requires": { "ansi-colors": "^1.0.1", @@ -10756,18 +8995,60 @@ "copy-props": "^2.0.1", "fancy-log": "^1.3.2", "gulplog": "^1.0.0", - "interpret": "^1.1.0", + "interpret": "^1.4.0", "isobject": "^3.0.1", - "liftoff": "^2.5.0", + "liftoff": "^3.1.0", "matchdep": "^2.0.0", "mute-stdout": "^1.0.0", "pretty-hrtime": "^1.0.0", "replace-homedir": "^1.0.0", "semver-greatest-satisfied-range": "^1.1.0", - "v8flags": "^3.0.1", + "v8flags": "^3.2.0", "yargs": "^7.1.0" } }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", + "dev": true + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "which-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", + "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", + "dev": true + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + } + }, "y18n": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", @@ -10775,9 +9056,9 @@ "dev": true }, "yargs": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz", - "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.1.tgz", + "integrity": "sha512-huO4Fr1f9PmiJJdll5kwoS2e4GqzGSsMT3PPMpOwoVkOK8ckqAewMTZyA6LXVQWflleb/Z8oPBEvNsMft0XE+g==", "dev": true, "requires": { "camelcase": "^3.0.0", @@ -10792,7 +9073,17 @@ "string-width": "^1.0.2", "which-module": "^1.0.0", "y18n": "^3.2.1", - "yargs-parser": "^5.0.0" + "yargs-parser": "5.0.0-security.0" + } + }, + "yargs-parser": { + "version": "5.0.0-security.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0-security.0.tgz", + "integrity": "sha512-T69y4Ps64LNesYxeYGYPvfoMTt/7y1XtfpIslUeK4um+9Hu7hlGoRtaDLvdXb7+/tfq4opVa2HRY5xGip022rQ==", + "dev": true, + "requires": { + "camelcase": "^3.0.0", + "object.assign": "^4.1.0" } } } @@ -10806,97 +9097,22 @@ "concat-with-sourcemaps": "^1.0.0", "through2": "^2.0.0", "vinyl": "^2.0.0" - }, - "dependencies": { - "clone-stats": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz", - "integrity": "sha1-s3gt/4u1R04Yuba/D9/ngvh3doA=", - "dev": true - }, - "replace-ext": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz", - "integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=", - "dev": true - }, - "vinyl": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.1.0.tgz", - "integrity": "sha1-Ah+cLPlR1rk5lDyJ617lrdT9kkw=", - "dev": true, - "requires": { - "clone": "^2.1.1", - "clone-buffer": "^1.0.0", - "clone-stats": "^1.0.0", - "cloneable-readable": "^1.0.0", - "remove-trailing-separator": "^1.0.1", - "replace-ext": "^1.0.0" - } - } } }, "gulp-git": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/gulp-git/-/gulp-git-2.7.0.tgz", - "integrity": "sha512-y7Jg8OklbArDv0oP1Eot1MwEGCoMYJh/fq+Gd3dIZp6PNkyzHrNfi3aWHtMd4K+KI0ZetuV/Ile9rftaEDGRgQ==", + "version": "2.10.1", + "resolved": "https://registry.npmjs.org/gulp-git/-/gulp-git-2.10.1.tgz", + "integrity": "sha512-qiXYYDXchMZU/AWAgtphi4zbJb/0gXgfPw7TlZwu/7qPS3Bdcc3zbVe1B0xY9S8on6RQTmWoi+KaTGACIXQeNg==", "dev": true, "requires": { "any-shell-escape": "^0.1.1", "fancy-log": "^1.3.2", "lodash.template": "^4.4.0", - "plugin-error": "^0.1.2", + "plugin-error": "^1.0.1", "require-dir": "^1.0.0", "strip-bom-stream": "^3.0.0", "through2": "^2.0.3", "vinyl": "^2.0.1" - }, - "dependencies": { - "clone-stats": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz", - "integrity": "sha1-s3gt/4u1R04Yuba/D9/ngvh3doA=", - "dev": true - }, - "lodash.template": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.4.0.tgz", - "integrity": "sha1-5zoDhcg1VZF0bgILmWecaQ5o+6A=", - "dev": true, - "requires": { - "lodash._reinterpolate": "~3.0.0", - "lodash.templatesettings": "^4.0.0" - } - }, - "lodash.templatesettings": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.1.0.tgz", - "integrity": "sha1-K01OlbpEDZFf8IvImeRVNmZxMxY=", - "dev": true, - "requires": { - "lodash._reinterpolate": "~3.0.0" - } - }, - "replace-ext": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz", - "integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=", - "dev": true - }, - "vinyl": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.1.0.tgz", - "integrity": "sha1-Ah+cLPlR1rk5lDyJ617lrdT9kkw=", - "dev": true, - "requires": { - "clone": "^2.1.1", - "clone-buffer": "^1.0.0", - "clone-stats": "^1.0.0", - "cloneable-readable": "^1.0.0", - "remove-trailing-separator": "^1.0.1", - "replace-ext": "^1.0.0" - } - } } }, "gulp-inline-ng2-template": { @@ -10914,15 +9130,6 @@ "through2": "~2.0.0" }, "dependencies": { - "async": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", - "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", - "dev": true, - "requires": { - "lodash": "^4.17.10" - } - }, "clone": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", @@ -10934,12 +9141,6 @@ "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", "dev": true - }, - "lodash": { - "version": "4.17.15", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", - "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", - "dev": true } } }, @@ -10997,12 +9198,62 @@ "through2": "^0.5.1" }, "dependencies": { + "arr-diff": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-1.1.0.tgz", + "integrity": "sha1-aHwydYFjWI/vfeezb6vklesaOZo=", + "dev": true, + "requires": { + "arr-flatten": "^1.0.1", + "array-slice": "^0.2.3" + } + }, + "arr-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz", + "integrity": "sha1-IPnqtexw9cfSFbEHexw5Fh0pLH0=", + "dev": true + }, + "array-slice": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz", + "integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=", + "dev": true + }, + "extend-shallow": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-1.1.4.tgz", + "integrity": "sha1-Gda/lN/AnXa6cR85uHLSH/TdkHE=", + "dev": true, + "requires": { + "kind-of": "^1.1.0" + } + }, "isarray": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", "dev": true }, + "kind-of": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-1.1.0.tgz", + "integrity": "sha1-FAo9LUGjbS78+pN3tiwk+ElaXEQ=", + "dev": true + }, + "plugin-error": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-0.1.2.tgz", + "integrity": "sha1-O5uzM1zPAPQl4HQ34ZJ2ln2kes4=", + "dev": true, + "requires": { + "ansi-cyan": "^0.1.1", + "ansi-red": "^0.1.1", + "arr-diff": "^1.0.1", + "arr-union": "^2.0.1", + "extend-shallow": "^1.1.2" + } + }, "readable-stream": { "version": "1.0.34", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", @@ -11040,13 +9291,13 @@ } }, "gulp-less": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/gulp-less/-/gulp-less-4.0.0.tgz", - "integrity": "sha512-cHSgNy6TEGpjuGkjBEhWBtt//YPxtw/Og4VQUlJ2w5izQOk1S+m1v98c4bAYsG79M944mv5x/Ct84RWiF8UvCw==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/gulp-less/-/gulp-less-4.0.1.tgz", + "integrity": "sha512-hmM2k0FfQp7Ptm3ZaqO2CkMX3hqpiIOn4OHtuSsCeFym63F7oWlEua5v6u1cIjVUKYsVIs9zPg9vbqTEb/udpA==", "dev": true, "requires": { "accord": "^0.29.0", - "less": "2.6.x || ^3.0.0", + "less": "2.6.x || ^3.7.1", "object-assign": "^4.0.1", "plugin-error": "^0.1.2", "replace-ext": "^1.0.0", @@ -11054,244 +9305,70 @@ "vinyl-sourcemaps-apply": "^0.2.0" }, "dependencies": { - "replace-ext": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz", - "integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=", - "dev": true - } - } - }, - "gulp-ngc": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/gulp-ngc/-/gulp-ngc-0.3.3.tgz", - "integrity": "sha512-0rqtPTLGteazwsktwt9K5ONtSzFRyOhXDy0U+X/QDZxeWImTWOzakvnHKV9LTqjhQ4yGMyYf9loLM5QKrgCO/Q==", - "dev": true, - "requires": { - "@angular/compiler-cli": ">=2.4.1", - "gulp": ">=3.9.1", - "gulp-util": ">=3.0.8", - "through2": ">=2.0.3" - }, - "dependencies": { - "ansi-colors": { + "arr-diff": { "version": "1.1.0", - "resolved": "http://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz", - "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==", - "dev": true, - "requires": { - "ansi-wrap": "^0.1.0" - } - }, - "camelcase": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", - "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", - "dev": true - }, - "cliui": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", - "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-1.1.0.tgz", + "integrity": "sha1-aHwydYFjWI/vfeezb6vklesaOZo=", "dev": true, "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wrap-ansi": "^2.0.0" + "arr-flatten": "^1.0.1", + "array-slice": "^0.2.3" } }, - "clone-stats": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz", - "integrity": "sha1-s3gt/4u1R04Yuba/D9/ngvh3doA=", + "arr-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz", + "integrity": "sha1-IPnqtexw9cfSFbEHexw5Fh0pLH0=", "dev": true }, - "concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, - "glob-stream": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-6.1.0.tgz", - "integrity": "sha1-cEXJlBOz65SIjYOrRtC0BMx73eQ=", - "dev": true, - "requires": { - "extend": "^3.0.0", - "glob": "^7.1.1", - "glob-parent": "^3.1.0", - "is-negated-glob": "^1.0.0", - "ordered-read-streams": "^1.0.0", - "pumpify": "^1.3.5", - "readable-stream": "^2.1.5", - "remove-trailing-separator": "^1.0.1", - "to-absolute-glob": "^2.0.0", - "unique-stream": "^2.0.2" - } - }, - "glob-watcher": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/glob-watcher/-/glob-watcher-5.0.3.tgz", - "integrity": "sha512-8tWsULNEPHKQ2MR4zXuzSmqbdyV5PtwwCaWSGQ1WwHsJ07ilNeN1JB8ntxhckbnpSHaf9dXFUHzIWvm1I13dsg==", - "dev": true, - "requires": { - "anymatch": "^2.0.0", - "async-done": "^1.2.0", - "chokidar": "^2.0.0", - "is-negated-glob": "^1.0.0", - "just-debounce": "^1.0.0", - "object.defaults": "^1.1.0" - } - }, - "gulp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/gulp/-/gulp-4.0.0.tgz", - "integrity": "sha1-lXZsYB2t5Kd+0+eyttwDiBtZY2Y=", - "dev": true, - "requires": { - "glob-watcher": "^5.0.0", - "gulp-cli": "^2.0.0", - "undertaker": "^1.0.0", - "vinyl-fs": "^3.0.0" - }, - "dependencies": { - "gulp-cli": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/gulp-cli/-/gulp-cli-2.0.1.tgz", - "integrity": "sha512-RxujJJdN8/O6IW2nPugl7YazhmrIEjmiVfPKrWt68r71UCaLKS71Hp0gpKT+F6qOUFtr7KqtifDKaAJPRVvMYQ==", - "dev": true, - "requires": { - "ansi-colors": "^1.0.1", - "archy": "^1.0.0", - "array-sort": "^1.0.0", - "color-support": "^1.1.3", - "concat-stream": "^1.6.0", - "copy-props": "^2.0.1", - "fancy-log": "^1.3.2", - "gulplog": "^1.0.0", - "interpret": "^1.1.0", - "isobject": "^3.0.1", - "liftoff": "^2.5.0", - "matchdep": "^2.0.0", - "mute-stdout": "^1.0.0", - "pretty-hrtime": "^1.0.0", - "replace-homedir": "^1.0.0", - "semver-greatest-satisfied-range": "^1.1.0", - "v8flags": "^3.0.1", - "yargs": "^7.1.0" - } - } - } - }, - "ordered-read-streams": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz", - "integrity": "sha1-d8DLN8QVJdZBZtmQ/61+xqDhNj4=", - "dev": true, - "requires": { - "readable-stream": "^2.0.1" - } - }, - "replace-ext": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz", - "integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=", + "array-slice": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz", + "integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=", "dev": true }, - "unique-stream": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.2.1.tgz", - "integrity": "sha1-WqADz76Uxf+GbE59ZouxxNuts2k=", - "dev": true, - "requires": { - "json-stable-stringify": "^1.0.0", - "through2-filter": "^2.0.0" - } - }, - "v8flags": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.1.1.tgz", - "integrity": "sha512-iw/1ViSEaff8NJ3HLyEjawk/8hjJib3E7pvG4pddVXfUg1983s3VGsiClDjhK64MQVDGqc1Q8r18S4VKQZS9EQ==", - "dev": true, - "requires": { - "homedir-polyfill": "^1.0.1" - } - }, - "vinyl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.2.0.tgz", - "integrity": "sha512-MBH+yP0kC/GQ5GwBqrTPTzEfiiLjta7hTtvQtbxBgTeSXsmKQRQecjibMbxIXzVT3Y9KJK+drOz1/k+vsu8Nkg==", - "dev": true, - "requires": { - "clone": "^2.1.1", - "clone-buffer": "^1.0.0", - "clone-stats": "^1.0.0", - "cloneable-readable": "^1.0.0", - "remove-trailing-separator": "^1.0.1", - "replace-ext": "^1.0.0" - } - }, - "vinyl-fs": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-3.0.3.tgz", - "integrity": "sha512-vIu34EkyNyJxmP0jscNzWBSygh7VWhqun6RmqVfXePrOwi9lhvRs//dOaGOTRUQr4tx7/zd26Tk5WeSVZitgng==", + "extend-shallow": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-1.1.4.tgz", + "integrity": "sha1-Gda/lN/AnXa6cR85uHLSH/TdkHE=", "dev": true, "requires": { - "fs-mkdirp-stream": "^1.0.0", - "glob-stream": "^6.1.0", - "graceful-fs": "^4.0.0", - "is-valid-glob": "^1.0.0", - "lazystream": "^1.0.0", - "lead": "^1.0.0", - "object.assign": "^4.0.4", - "pumpify": "^1.3.5", - "readable-stream": "^2.3.3", - "remove-bom-buffer": "^3.0.0", - "remove-bom-stream": "^1.2.0", - "resolve-options": "^1.1.0", - "through2": "^2.0.0", - "to-through": "^2.0.0", - "value-or-function": "^3.0.0", - "vinyl": "^2.0.0", - "vinyl-sourcemap": "^1.1.0" + "kind-of": "^1.1.0" } }, - "y18n": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", + "kind-of": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-1.1.0.tgz", + "integrity": "sha1-FAo9LUGjbS78+pN3tiwk+ElaXEQ=", "dev": true }, - "yargs": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz", - "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=", + "plugin-error": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-0.1.2.tgz", + "integrity": "sha1-O5uzM1zPAPQl4HQ34ZJ2ln2kes4=", "dev": true, "requires": { - "camelcase": "^3.0.0", - "cliui": "^3.2.0", - "decamelize": "^1.1.1", - "get-caller-file": "^1.0.1", - "os-locale": "^1.4.0", - "read-pkg-up": "^1.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^1.0.2", - "which-module": "^1.0.0", - "y18n": "^3.2.1", - "yargs-parser": "^5.0.0" + "ansi-cyan": "^0.1.1", + "ansi-red": "^0.1.1", + "arr-diff": "^1.0.1", + "arr-union": "^2.0.1", + "extend-shallow": "^1.1.2" } } } }, + "gulp-ngc": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/gulp-ngc/-/gulp-ngc-0.3.3.tgz", + "integrity": "sha512-0rqtPTLGteazwsktwt9K5ONtSzFRyOhXDy0U+X/QDZxeWImTWOzakvnHKV9LTqjhQ4yGMyYf9loLM5QKrgCO/Q==", + "dev": true, + "requires": { + "@angular/compiler-cli": ">=2.4.1", + "gulp": ">=3.9.1", + "gulp-util": ">=3.0.8", + "through2": ">=2.0.3" + } + }, "gulp-optimize-js": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/gulp-optimize-js/-/gulp-optimize-js-1.1.0.tgz", @@ -11305,9 +9382,9 @@ } }, "gulp-rename": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/gulp-rename/-/gulp-rename-1.3.0.tgz", - "integrity": "sha512-nEuZB7/9i0IZ8AXORTizl2QLP9tcC9uWc/s329zElBLJw1CfOhmMXBxwVlCRKjDyrWuhVP0uBKl61KeQ32TiCg==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/gulp-rename/-/gulp-rename-1.4.0.tgz", + "integrity": "sha512-swzbIGb/arEoFK89tPY58vg3Ok1bw+d35PfUNwWqdo7KM4jkmuGA78JiDNqR+JeZFaeeHnRg9N7aihX3YPmsyg==", "dev": true }, "gulp-replace": { @@ -11331,82 +9408,19 @@ } }, "gulp-shell": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/gulp-shell/-/gulp-shell-0.7.0.tgz", - "integrity": "sha512-rpMbI6+b9LZNLB+KkOeqWynLdqVtypy8v68spDVjvMg1cVaVhNQILYVXPvmeH/KtcrPv4JLmoEJeElEB6/IvcA==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/gulp-shell/-/gulp-shell-0.7.1.tgz", + "integrity": "sha512-5dKf1eJDdBiUS4LKCt4tm9IkDnWeXKGCKjQG5EJj/bVeVOisAPse5RLxccGh1OtfbzQdOWCywu936DTB8isZRw==", "dev": true, "requires": { - "async": "^2.6.2", "chalk": "^2.4.2", "fancy-log": "^1.3.3", "lodash.template": "^4.4.0", "plugin-error": "^1.0.1", - "through2": "^3.0.1" + "through2": "^3.0.1", + "tslib": "^1.9.3" }, "dependencies": { - "ansi-colors": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz", - "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==", - "dev": true, - "requires": { - "ansi-wrap": "^0.1.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "fancy-log": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz", - "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==", - "dev": true, - "requires": { - "ansi-gray": "^0.1.1", - "color-support": "^1.1.3", - "parse-node-version": "^1.0.0", - "time-stamp": "^1.0.0" - } - }, - "lodash.template": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.4.0.tgz", - "integrity": "sha1-5zoDhcg1VZF0bgILmWecaQ5o+6A=", - "dev": true, - "requires": { - "lodash._reinterpolate": "~3.0.0", - "lodash.templatesettings": "^4.0.0" - } - }, - "lodash.templatesettings": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.1.0.tgz", - "integrity": "sha1-K01OlbpEDZFf8IvImeRVNmZxMxY=", - "dev": true, - "requires": { - "lodash._reinterpolate": "~3.0.0" - } - }, - "plugin-error": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-1.0.1.tgz", - "integrity": "sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA==", - "dev": true, - "requires": { - "ansi-colors": "^1.0.1", - "arr-diff": "^4.0.0", - "arr-union": "^3.1.0", - "extend-shallow": "^3.0.2" - } - }, "through2": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.1.tgz", @@ -11463,17 +9477,73 @@ "supports-color": "^2.0.0" } }, + "clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", + "dev": true + }, + "clone-stats": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz", + "integrity": "sha1-uI+UqCzzi4eR1YBG6kAprYjKmdE=", + "dev": true + }, + "lodash.template": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-3.6.2.tgz", + "integrity": "sha1-+M3sxhaaJVvpCYrosMU9N4kx0U8=", + "dev": true, + "requires": { + "lodash._basecopy": "^3.0.0", + "lodash._basetostring": "^3.0.0", + "lodash._basevalues": "^3.0.0", + "lodash._isiterateecall": "^3.0.0", + "lodash._reinterpolate": "^3.0.0", + "lodash.escape": "^3.0.0", + "lodash.keys": "^3.0.0", + "lodash.restparam": "^3.0.0", + "lodash.templatesettings": "^3.0.0" + } + }, + "lodash.templatesettings": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz", + "integrity": "sha1-+zB4RHU7Zrnxr6VOJix0UwfbqOU=", + "dev": true, + "requires": { + "lodash._reinterpolate": "^3.0.0", + "lodash.escape": "^3.0.0" + } + }, "object-assign": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz", "integrity": "sha1-m+3VygiXlJvKR+f/QIBi1Un1h/I=", "dev": true }, + "replace-ext": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz", + "integrity": "sha1-KbvZIHinOfC8zitO5B6DeVNSKSQ=", + "dev": true + }, "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", "dev": true + }, + "vinyl": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.5.3.tgz", + "integrity": "sha1-sEVbOPxeDPMNQyUTLkYZcMIJHN4=", + "dev": true, + "requires": { + "clone": "^1.0.0", + "clone-stats": "^0.0.1", + "replace-ext": "0.0.1" + } } } }, @@ -11489,64 +9559,26 @@ "handle-thing": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", - "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", - "dev": true - }, - "handlebars": { - "version": "4.5.3", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.5.3.tgz", - "integrity": "sha512-3yPecJoJHK/4c6aZhSvxOyG4vJKDshV36VHp0iVCDVh7o9w2vwi3NSnL2MMPj3YdduqaBcu7cGbggJQM0br9xA==", - "dev": true, - "requires": { - "neo-async": "^2.6.0", - "optimist": "^0.6.1", - "source-map": "^0.6.1", - "uglify-js": "^3.1.4" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==" }, "har-schema": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" }, "har-validator": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", - "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", - "dev": true, + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", + "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", "requires": { - "ajv": "^5.1.0", + "ajv": "^6.5.5", "har-schema": "^2.0.0" - }, - "dependencies": { - "ajv": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", - "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", - "dev": true, - "requires": { - "co": "^4.6.0", - "fast-deep-equal": "^1.0.0", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.3.0" - } - } } }, "has": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, "requires": { "function-bind": "^1.1.1" } @@ -11577,12 +9609,6 @@ } } }, - "has-color": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", - "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=", - "dev": true - }, "has-cors": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz", @@ -11592,8 +9618,7 @@ "has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" }, "has-gulplog": { "version": "0.1.0", @@ -11605,16 +9630,14 @@ } }, "has-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", - "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", - "dev": true + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==" }, "has-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", - "dev": true, "requires": { "get-value": "^2.0.6", "has-values": "^1.0.0", @@ -11625,17 +9648,33 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", - "dev": true, "requires": { "is-number": "^3.0.0", "kind-of": "^4.0.0" }, "dependencies": { + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, "kind-of": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "dev": true, "requires": { "is-buffer": "^1.1.5" } @@ -11649,20 +9688,36 @@ "dev": true }, "hash-base": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", - "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", - "dev": true, + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + } } }, "hash.js": { "version": "1.1.7", "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "dev": true, "requires": { "inherits": "^2.0.3", "minimalistic-assert": "^1.0.1" @@ -11671,14 +9726,12 @@ "hex-color-regex": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/hex-color-regex/-/hex-color-regex-1.1.0.tgz", - "integrity": "sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ==", - "dev": true + "integrity": "sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ==" }, "hmac-drbg": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "dev": true, "requires": { "hash.js": "^1.0.3", "minimalistic-assert": "^1.0.0", @@ -11686,25 +9739,27 @@ } }, "homedir-polyfill": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz", - "integrity": "sha1-TCu8inWJmP7r9e1oWA921GdotLw=", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", + "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", "dev": true, "requires": { "parse-passwd": "^1.0.0" } }, "hosted-git-info": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.6.0.tgz", - "integrity": "sha512-lIbgIIQA3lz5XaB6vxakj6sDHADJiZadYEJB+FgA+C4nubM1NwcuvUr9EJPmnH1skZqpqUzWborWo8EIUi0Sdw==", - "dev": true + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.4.tgz", + "integrity": "sha512-4oT62d2jwSDBbLLFLZE+1vPuQ1h8p9wjrJ8Mqx5TjsyWmBMV5B13eJqn8pvluqubLf3cJPTfiYCIwNwDNmzScQ==", + "dev": true, + "requires": { + "lru-cache": "^5.1.1" + } }, "hpack.js": { "version": "2.1.6", "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", - "dev": true, "requires": { "inherits": "^2.0.1", "obuf": "^1.0.0", @@ -11715,63 +9770,63 @@ "hsl-regex": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/hsl-regex/-/hsl-regex-1.0.0.tgz", - "integrity": "sha1-1JMwx4ntgZ4nakwNJy3/owsY/m4=", - "dev": true + "integrity": "sha1-1JMwx4ntgZ4nakwNJy3/owsY/m4=" }, "hsla-regex": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/hsla-regex/-/hsla-regex-1.0.0.tgz", - "integrity": "sha1-wc56MWjIxmFAM6S194d/OyJfnDg=", - "dev": true + "integrity": "sha1-wc56MWjIxmFAM6S194d/OyJfnDg=" }, "html-comment-regex": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/html-comment-regex/-/html-comment-regex-1.1.2.tgz", - "integrity": "sha512-P+M65QY2JQ5Y0G9KKdlDpo0zK+/OHptU5AaBwUfAIDJZk1MYf32Frm84EcOytfJE0t5JvkAnKlmjsXDnWzCJmQ==", - "dev": true + "integrity": "sha512-P+M65QY2JQ5Y0G9KKdlDpo0zK+/OHptU5AaBwUfAIDJZk1MYf32Frm84EcOytfJE0t5JvkAnKlmjsXDnWzCJmQ==" }, "html-entities": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.2.1.tgz", - "integrity": "sha1-DfKTUfByEWNRXfueVUPl9u7VFi8=", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.3.1.tgz", + "integrity": "sha512-rhE/4Z3hIhzHAUKbW8jVcCyuT5oJCXXqhN/6mXXVCpzTmvJnoH2HL/bt3EZ6p55jbFJBeAe1ZNpL5BugLujxNA==" + }, + "html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", "dev": true }, "http-cache-semantics": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", - "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", + "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==", "dev": true }, "http-deceiver": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=", - "dev": true + "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=" }, "http-errors": { "version": "1.7.2", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", - "dev": true, "requires": { "depd": "~1.1.2", "inherits": "2.0.3", "setprototypeof": "1.1.1", "statuses": ">= 1.5.0 < 2", "toidentifier": "1.0.0" + }, + "dependencies": { + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + } } }, - "http-parser-js": { - "version": "0.4.10", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.10.tgz", - "integrity": "sha1-ksnBN0w1CF912zWexWzCV8u5P6Q=", - "dev": true - }, "http-proxy": { - "version": "1.18.0", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.0.tgz", - "integrity": "sha512-84I2iJM/n1d4Hdgc6y2+qY5mDaz2PUVjlg9znE9byl+q0uC3DeByqBGReQu5tpLK0TAqTIXScRUV+dg7+bUPpQ==", - "dev": true, + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", "requires": { "eventemitter3": "^4.0.0", "follow-redirects": "^1.0.0", @@ -11779,50 +9834,144 @@ } }, "http-proxy-agent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", - "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz", + "integrity": "sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg==", "dev": true, "requires": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" + "agent-base": "4", + "debug": "3.1.0" }, "dependencies": { "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", "dev": true, "requires": { - "ms": "^2.1.1" + "ms": "2.0.0" } }, "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", "dev": true } } }, - "http-proxy-middleware": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz", - "integrity": "sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q==", - "dev": true, - "requires": { - "http-proxy": "^1.17.0", - "is-glob": "^4.0.0", - "lodash": "^4.17.11", - "micromatch": "^3.1.10" - } - }, + "http-proxy-middleware": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz", + "integrity": "sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q==", + "requires": { + "http-proxy": "^1.17.0", + "is-glob": "^4.0.0", + "lodash": "^4.17.11", + "micromatch": "^3.1.10" + }, + "dependencies": { + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + } + } + }, "http-signature": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, "requires": { "assert-plus": "^1.0.0", "jsprim": "^1.2.2", @@ -11832,8 +9981,7 @@ "https-browserify": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", - "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", - "dev": true + "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=" }, "https-proxy-agent": { "version": "2.2.4", @@ -11845,15 +9993,6 @@ "debug": "^3.1.0" }, "dependencies": { - "agent-base": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz", - "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==", - "dev": true, - "requires": { - "es6-promisify": "^5.0.0" - } - }, "debug": { "version": "3.2.6", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", @@ -11862,12 +10001,6 @@ "requires": { "ms": "^2.1.1" } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true } } }, @@ -11881,42 +10014,60 @@ } }, "iconv-lite": { - "version": "0.4.23", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz", - "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "requires": { "safer-buffer": ">= 2.1.2 < 3" } }, + "icss-utils": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", + "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", + "requires": { + "postcss": "^7.0.14" + } + }, "idtoken-verifier": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/idtoken-verifier/-/idtoken-verifier-1.4.1.tgz", - "integrity": "sha512-BoJc00Gj37hrNlx7NYmd8uJFvvC9/FiWDKugDluP4JmgOGT/AfNlPfnRmi9fHEEqSatnIIr3WTyf0dlhHfSHnA==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/idtoken-verifier/-/idtoken-verifier-2.0.3.tgz", + "integrity": "sha512-X1izD2ZTMoo+2tw2RKVUvvCSw2B6UOCNMJ0bgHRH758LFTMwBf4JZfCZm61MPBaBW2CIuhkcSnKCZP6jXpSDmw==", "requires": { - "base64-js": "^1.2.0", - "crypto-js": "^3.1.9-1", - "jsbn": "^0.1.0", - "promise-polyfill": "^8.1.3", + "base64-js": "^1.3.0", + "crypto-js": "^3.2.1", + "es6-promise": "^4.2.8", + "jsbn": "^1.1.0", "unfetch": "^4.1.0", - "url-join": "^1.1.0" + "url-join": "^4.0.1" + }, + "dependencies": { + "crypto-js": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-3.3.0.tgz", + "integrity": "sha512-DIT51nX0dCfKltpRiXV+/TVZq+Qq2NgF4644+K7Ttnla7zEzqc+kjJyiB96BHNyUTBxyjzRcZYpUdZa+QAqi6Q==" + }, + "jsbn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", + "integrity": "sha1-sBMHyym2GKHtJux56RH4A8TaAEA=" + } } }, "ieee754": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.12.tgz", - "integrity": "sha512-GguP+DRY+pJ3soyIiGPTvdiVXjZ+DbXOxGpXn3eMvNW4x4irjqXm4wHKscC+TfxSJ0yw/S1F24tqdMNsMZTiLA==" + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", + "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==" }, "iferr": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", - "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", - "dev": true + "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=" }, "ignore": { - "version": "3.3.10", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", - "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==", - "dev": true + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==" }, "ignore-walk": { "version": "3.0.3", @@ -11946,13 +10097,12 @@ "version": "0.5.5", "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", "integrity": "sha1-Cd/Uq50g4p6xw+gLiZA3jfnjy5w=", - "dev": true, "optional": true }, "image-to-ascii": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/image-to-ascii/-/image-to-ascii-3.0.11.tgz", - "integrity": "sha512-6Kn1WcL9ICJW34tJ/l584KHxdbaIkc0mSw0+UheNcBHA6W3bZO0bD26WmTHiRZfWJIC+1Wis/GtMV9WBYcrrYQ==", + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/image-to-ascii/-/image-to-ascii-3.0.12.tgz", + "integrity": "sha512-uPm9iwXWTMdDj4ftQkQvvp2HO6a1Z3XtCVc5hfJbxe5mKozWGC+Jq9jDD/XzwhM+T25SJlYfVYEk+psbK2ruqw==", "dev": true, "optional": true, "requires": { @@ -11986,7 +10136,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-2.1.0.tgz", "integrity": "sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk=", - "dev": true, "requires": { "import-from": "^2.1.0" } @@ -11995,7 +10144,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=", - "dev": true, "requires": { "caller-path": "^2.0.0", "resolve-from": "^3.0.0" @@ -12005,7 +10153,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/import-from/-/import-from-2.1.0.tgz", "integrity": "sha1-M1238qev/VOqpHHUuAId7ja387E=", - "dev": true, "requires": { "resolve-from": "^3.0.0" } @@ -12020,7 +10167,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", - "dev": true, "requires": { "pkg-dir": "^3.0.0", "resolve-cwd": "^2.0.0" @@ -12029,23 +10175,17 @@ "imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=" }, "indent-string": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", - "dev": true, - "requires": { - "repeating": "^2.0.0" - } + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" }, "indexes-of": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", - "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", - "dev": true + "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=" }, "indexof": { "version": "0.0.1", @@ -12062,23 +10202,21 @@ "infer-owner": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "dev": true + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==" }, "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, "requires": { "once": "^1.3.0", "wrappy": "1" } }, "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, "ini": { "version": "1.3.5", @@ -12154,6 +10292,12 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -12201,23 +10345,21 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz", "integrity": "sha512-S1zBo1D6zcsyuC6PMmY5+55YMILQ9av8lotMx447Bq6SAgo/sDK6y6uUKmuYhW7eacnIhFfsPmCNYdDzsnnDCg==", - "dev": true, "requires": { "default-gateway": "^4.2.0", "ipaddr.js": "^1.9.0" } }, "interpret": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz", - "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ=", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", "dev": true }, "invariant": { "version": "2.2.4", "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dev": true, "requires": { "loose-envify": "^1.0.0" } @@ -12231,20 +10373,17 @@ "ip": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", - "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", - "dev": true + "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=" }, "ip-regex": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", - "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=", - "dev": true + "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=" }, "ipaddr.js": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "dev": true + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" }, "irregular-plurals": { "version": "1.4.0", @@ -12265,14 +10404,12 @@ "is-absolute-url": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-2.1.0.tgz", - "integrity": "sha1-UFMN+4T8yap9vnhS6Do3uTufKqY=", - "dev": true + "integrity": "sha1-UFMN+4T8yap9vnhS6Do3uTufKqY=" }, "is-accessor-descriptor": { "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "dev": true, "requires": { "kind-of": "^3.0.2" }, @@ -12281,48 +10418,39 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, "requires": { "is-buffer": "^1.1.5" } } } }, + "is-arguments": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz", + "integrity": "sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==" + }, "is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "dev": true + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" }, "is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "dev": true, + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", "requires": { - "binary-extensions": "^1.0.0" + "binary-extensions": "^2.0.0" } }, "is-buffer": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", - "dev": true - }, - "is-builtin-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", - "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", - "dev": true, - "requires": { - "builtin-modules": "^1.0.0" - } + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" }, "is-callable": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz", - "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==", - "dev": true + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.0.tgz", + "integrity": "sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==" }, "is-ci": { "version": "2.0.0", @@ -12337,7 +10465,6 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-color-stop/-/is-color-stop-1.1.0.tgz", "integrity": "sha1-z/9HGu5N1cnhWFmPvhKWe1za00U=", - "dev": true, "requires": { "css-color-names": "^0.0.4", "hex-color-regex": "^1.1.0", @@ -12351,7 +10478,6 @@ "version": "0.1.4", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "dev": true, "requires": { "kind-of": "^3.0.2" }, @@ -12360,7 +10486,6 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, "requires": { "is-buffer": "^1.1.5" } @@ -12370,14 +10495,12 @@ "is-date-object": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", - "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", - "dev": true + "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==" }, "is-descriptor": { "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, "requires": { "is-accessor-descriptor": "^0.1.6", "is-data-descriptor": "^0.1.4", @@ -12387,66 +10510,53 @@ "kind-of": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" } } }, "is-directory": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", - "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=", - "dev": true + "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=" }, "is-docker": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.0.0.tgz", - "integrity": "sha512-pJEdRugimx4fBMra5z2/5iRdZ63OhYV0vr0Dwm5+xtW4D1FvRkB8hamMIhnWfyJeDdyr/aa7BDyNbtG38VxgoQ==", - "dev": true + "integrity": "sha512-pJEdRugimx4fBMra5z2/5iRdZ63OhYV0vr0Dwm5+xtW4D1FvRkB8hamMIhnWfyJeDdyr/aa7BDyNbtG38VxgoQ==" }, "is-extendable": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", - "dev": true + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" }, "is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" }, "is-finite": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", - "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", + "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", + "dev": true }, "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" }, "is-glob": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.0.tgz", - "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", - "dev": true, + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", "requires": { "is-extglob": "^2.1.1" } }, "is-installed-globally": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.3.1.tgz", - "integrity": "sha512-oiEcGoQbGc+3/iijAijrK2qFpkNoNjsHOm/5V5iaeydyrS/hnwaRCEgH5cpW0P3T1lSjV5piB7S5b5lEugNLhg==", + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.3.2.tgz", + "integrity": "sha512-wZ8x1js7Ia0kecP/CHM/3ABkAmujX7WPvQk6uu3Fly/Mk44pySulQpnHG46OMjHGXApINnV4QhY3SWnECO2z5g==", "dev": true, "requires": { "global-dirs": "^2.0.1", @@ -12467,12 +10577,6 @@ "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", "dev": true }, - "is-lambda": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", - "integrity": "sha1-PZh3iZ5qU+/AFgUEzeFfgubwYdU=", - "dev": true - }, "is-module": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", @@ -12492,76 +10596,40 @@ "dev": true }, "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" }, "is-obj": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", - "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", - "dev": true - }, - "is-odd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-odd/-/is-odd-2.0.0.tgz", - "integrity": "sha512-OTiixgpZAT1M4NHgS5IguFp/Vz2VI3U7Goh4/HA1adtwyLtSBrxYlcSYkhpAE07s4fKEcjrFxyvtQBND4vFQyQ==", - "dev": true, - "requires": { - "is-number": "^4.0.0" - }, - "dependencies": { - "is-number": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", - "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", - "dev": true - } - } + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==" }, "is-path-cwd": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", - "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=", - "dev": true + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", + "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==" }, "is-path-in-cwd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz", - "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==", - "dev": true, + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz", + "integrity": "sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==", "requires": { - "is-path-inside": "^1.0.0" + "is-path-inside": "^2.1.0" } }, "is-path-inside": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", - "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", - "dev": true, + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz", + "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==", "requires": { - "path-is-inside": "^1.0.1" + "path-is-inside": "^1.0.2" } }, "is-percent": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/is-percent/-/is-percent-1.0.10.tgz", - "integrity": "sha512-VoXIX2gX2MpnqdHnDPt1/vOS5QUQxp+2eLDWbWYgYiqBcaSUFTwlhOLVI05eroilU8tbKkHkucBtSu/WaxsBkw==", + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/is-percent/-/is-percent-1.0.11.tgz", + "integrity": "sha512-m6MObeoJtPCkV92oTFMauPZAzYnabm/h/SRL8WtBvZGCkMD2VDlJ108ou7KDMb2bkDiDfHMexZYadopXK/A0mQ==", "dev": true, "optional": true, "requires": { @@ -12571,40 +10639,39 @@ "is-plain-obj": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", - "dev": true + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=" }, "is-plain-object": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, "requires": { "isobject": "^3.0.1" } }, - "is-promise": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", - "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", - "dev": true - }, "is-reference": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.1.4.tgz", - "integrity": "sha512-uJA/CDPO3Tao3GTrxYn6AwkM4nUPJiGGYu5+cB8qbC7WGFlrKZbiRo7SFKxUAEpFUfiHofWCXBUNhvYJMh+6zw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.2.0.tgz", + "integrity": "sha512-ZVxq+5TkOx6GQdnoMm2aRdCKADdcrOWXLGzGT+vIA8DMpqEJaRk5AL1bS80zJ2bjHunVmjdzfCt0e4BymIEqKQ==", "dev": true, "requires": { - "@types/estree": "0.0.39" + "@types/estree": "0.0.44" + }, + "dependencies": { + "@types/estree": { + "version": "0.0.44", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.44.tgz", + "integrity": "sha512-iaIVzr+w2ZJ5HkidlZ3EJM8VTZb2MJLCjw3V+505yVts0gRC4UMvjw0d1HPtGqI/HQC/KdsYtayfzl+AXY2R8g==", + "dev": true + } } }, "is-regex": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz", - "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==", - "dev": true, + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.0.tgz", + "integrity": "sha512-iI97M8KTWID2la5uYXlkbSDQIg4F6o1sYboZKKTDpnDQMLtUL86zxhgDet3Q2SriaYsyGqZ6Mn2SjbRKeLHdqw==", "requires": { - "has": "^1.0.3" + "has-symbols": "^1.0.1" } }, "is-relative": { @@ -12619,15 +10686,13 @@ "is-resolvable": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz", - "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==", - "dev": true + "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==" }, "is-ssh": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/is-ssh/-/is-ssh-1.3.0.tgz", - "integrity": "sha1-6+oRaaJhTaOSpjdANmw84EnY3/Y=", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/is-ssh/-/is-ssh-1.3.1.tgz", + "integrity": "sha512-0eRIASHZt1E68/ixClI8bp2YK2wmBPVWEismTs6M+M099jKgrzl/3E976zIbImSIob48N2/XGe9y7ZiYdImSlg==", "dev": true, - "optional": true, "requires": { "protocols": "^1.1.0" } @@ -12635,14 +10700,12 @@ "is-stream": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "dev": true + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" }, "is-svg": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-svg/-/is-svg-3.0.0.tgz", "integrity": "sha512-gi4iHK53LR2ujhLVVj+37Ykh9GLqYHX6JOVXbLAucaG/Cqw9xwdFOjDM2qeifLs1sF1npXXFvDu0r5HNgCMrzQ==", - "dev": true, "requires": { "html-comment-regex": "^1.1.0" } @@ -12651,24 +10714,14 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", - "dev": true, "requires": { "has-symbols": "^1.0.1" - }, - "dependencies": { - "has-symbols": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", - "dev": true - } } }, "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" }, "is-unc-path": { "version": "1.0.0", @@ -12694,14 +10747,15 @@ "is-windows": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "dev": true + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==" }, "is-wsl": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.1.1.tgz", - "integrity": "sha512-umZHcSrwlDHo2TGMXv0DZ8dIUGunZ2Iv68YZnrmCiBPkZ4aaOhtv7pXJKeki9k3qJ3RJr0cDyitcl5wEH3AYog==", - "dev": true + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "requires": { + "is-docker": "^2.0.0" + } }, "is-yarn-global": { "version": "0.3.0", @@ -12726,25 +10780,22 @@ "isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" }, "isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" }, "isstream": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" }, "istanbul-api": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/istanbul-api/-/istanbul-api-2.1.6.tgz", - "integrity": "sha512-x0Eicp6KsShG1k1rMgBAi/1GgY7kFGEBwQpw3PXGEmu+rBcBNhqU8g2DgY9mlepAsLPzrzrbqSgCGANnki4POA==", + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/istanbul-api/-/istanbul-api-2.1.7.tgz", + "integrity": "sha512-LYTOa2UrYFyJ/aSczZi/6lBykVMjCCvUmT64gOe+jPZFy4w6FYfPGqFT2IiQ2BxVHHDOvCD7qrIXb0EOh4uGWw==", "dev": true, "requires": { "async": "^2.6.2", @@ -12755,95 +10806,13 @@ "istanbul-lib-instrument": "^3.3.0", "istanbul-lib-report": "^2.0.8", "istanbul-lib-source-maps": "^3.0.6", - "istanbul-reports": "^2.2.4", + "istanbul-reports": "^2.2.5", "js-yaml": "^3.13.1", "make-dir": "^2.1.0", "minimatch": "^3.0.4", "once": "^1.4.0" }, "dependencies": { - "@babel/generator": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.4.4.tgz", - "integrity": "sha512-53UOLK6TVNqKxf7RUh8NE851EHRxOOeVXKbK2bivdb+iziMyk03Sr4eaE9OELCbyZAAafAKPDwF2TPUES5QbxQ==", - "dev": true, - "requires": { - "@babel/types": "^7.4.4", - "jsesc": "^2.5.1", - "lodash": "^4.17.11", - "source-map": "^0.5.0", - "trim-right": "^1.0.1" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.4.tgz", - "integrity": "sha512-Ro/XkzLf3JFITkW6b+hNxzZ1n5OQ80NvIUdmHspih1XAhtN3vPTuUFT4eQnela+2MaZ5ulH+iyP513KJrxbN7Q==", - "dev": true, - "requires": { - "@babel/types": "^7.4.4" - } - }, - "@babel/parser": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.4.4.tgz", - "integrity": "sha512-5pCS4mOsL+ANsFZGdvNLybx4wtqAZJ0MJjMHxvzI3bvIsz6sQvzW8XX92EYIkiPtIvcfG3Aj+Ir5VNyjnZhP7w==", - "dev": true - }, - "@babel/template": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.4.4.tgz", - "integrity": "sha512-CiGzLN9KgAvgZsnivND7rkA+AeJ9JB0ciPOD4U59GKbQP2iQl+olF1l76kJOupqidozfZ32ghwBEJDhnk9MEcw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.4.4", - "@babel/types": "^7.4.4" - } - }, - "@babel/traverse": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.4.4.tgz", - "integrity": "sha512-Gw6qqkw/e6AGzlyj9KnkabJX7VcubqPtkUQVAwkc0wUMldr3A/hezNB3Rc5eIvId95iSGkGIOe5hh1kMKf951A==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/generator": "^7.4.4", - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.4.4", - "@babel/parser": "^7.4.4", - "@babel/types": "^7.4.4", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.11" - } - }, - "@babel/types": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.4.4.tgz", - "integrity": "sha512-dOllgYdnEFOebhkKCjzSVFqw/PmmB8pH6RGOWkY4GsboQNd47b1fBThBSwlHAq9alF9vc1M3+6oqR47R50L0tQ==", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.11", - "to-fast-properties": "^2.0.0" - } - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "globals": { - "version": "11.11.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.11.0.tgz", - "integrity": "sha512-WHq43gS+6ufNOEqlrDBxVEbb8ntfXrfAUU2ZOpCxrBdGKW3gyv8mCxAfIBD0DroPKGrJ2eSsXsLtY9MPntsyTw==", - "dev": true - }, "istanbul-lib-coverage": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", @@ -12861,56 +10830,14 @@ "@babel/template": "^7.4.0", "@babel/traverse": "^7.4.3", "@babel/types": "^7.4.0", - "istanbul-lib-coverage": "^2.0.5", - "semver": "^6.0.0" - } - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, - "dependencies": { - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - } - } - }, - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true + "istanbul-lib-coverage": "^2.0.5", + "semver": "^6.0.0" + } }, "semver": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.0.0.tgz", - "integrity": "sha512-0UewU+9rFapKFnlbirLi3byoOuhrSsli/z/ihNnvM24vgF+8sNBiI1LZPBSH9wJKUwaUbw+s3hToDLCXkrghrQ==", - "dev": true - }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true } } @@ -12918,8 +10845,7 @@ "istanbul-lib-coverage": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", - "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", - "dev": true + "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==" }, "istanbul-lib-hook": { "version": "2.0.7", @@ -12931,73 +10857,20 @@ } }, "istanbul-lib-instrument": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.1.tgz", - "integrity": "sha512-imIchxnodll7pvQBYOqUu88EufLCU56LMeFPZZM/fJZ1irYcYdqroaV+ACK1Ila8ls09iEYArp+nqyC6lW1Vfg==", - "dev": true, + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", + "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", "requires": { "@babel/core": "^7.7.5", - "@babel/parser": "^7.7.5", - "@babel/template": "^7.7.4", - "@babel/traverse": "^7.7.4", "@istanbuljs/schema": "^0.1.2", "istanbul-lib-coverage": "^3.0.0", "semver": "^6.3.0" }, "dependencies": { - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "dev": true, - "requires": { - "@babel/highlight": "^7.8.3" - } - }, - "@babel/highlight": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz", - "integrity": "sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.9.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.9.4.tgz", - "integrity": "sha512-bC49otXX6N0/VYhgOMh4gnP26E9xnDZK3TmbNpxYzzz9BQLBosQwfyOe9/cXUU3txYhTzLCbcqd5c8y/OmCjHA==", - "dev": true - }, - "@babel/template": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz", - "integrity": "sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6" - } - }, - "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - }, "semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" } } }, @@ -13018,28 +10891,6 @@ "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", "dev": true }, - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - } - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - }, - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - }, "supports-color": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", @@ -13064,72 +10915,21 @@ "source-map": "^0.6.1" }, "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "glob": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", - "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, "istanbul-lib-coverage": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", "dev": true }, - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - } - }, - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - }, "rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", "dev": true, "requires": { "glob": "^7.1.3" } }, - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -13139,12 +10939,12 @@ } }, "istanbul-reports": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.4.tgz", - "integrity": "sha512-QCHGyZEK0bfi9GR215QSm+NJwFKEShbtc7tfbUdLAEzn3kKhLDDZqvljn8rPZM9v8CEOhzL1nlYoO4r1ryl67w==", + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.7.tgz", + "integrity": "sha512-uu1F/L1o5Y6LzPVSVZXNOoD/KXpJue9aeLRd0sM9uMXfZvzomB0WxVamWb5ue8kA2vVWEmW7EG+A5n3f1kqHKg==", "dev": true, "requires": { - "handlebars": "^4.1.2" + "html-escaper": "^2.0.0" } }, "istextorbinary": { @@ -13158,11 +10958,10 @@ } }, "iterate-object": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/iterate-object/-/iterate-object-1.3.2.tgz", - "integrity": "sha1-JOwVr/pdADnog5aVohwsrh9Ftms=", - "dev": true, - "optional": true + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/iterate-object/-/iterate-object-1.3.3.tgz", + "integrity": "sha512-DximWbkke36cnrSfNJv6bgcB2QOMV9PRD2FiowwzCoMsh8RupFLdbNIzWe+cVDWT+NIMNJgGlB1dGxP6kpzGtA==", + "dev": true }, "jasmine": { "version": "2.8.0", @@ -13222,7 +11021,6 @@ "version": "25.1.0", "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.1.0.tgz", "integrity": "sha512-ZHhHtlxOWSxCoNOKHGbiLzXnl42ga9CxDr27H36Qn+15pQZd3R/F24jrmjDelw9j/iHUIWMWs08/u2QN50HHOg==", - "dev": true, "requires": { "merge-stream": "^2.0.0", "supports-color": "^7.0.0" @@ -13231,14 +11029,12 @@ "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" }, "supports-color": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, "requires": { "has-flag": "^4.0.0" } @@ -13246,33 +11042,31 @@ } }, "js-cookie": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.0.tgz", - "integrity": "sha1-Gywnmm7s44ChIWi5JIUmWzWx7/s=" + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.1.tgz", + "integrity": "sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ==" }, "js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" }, "js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", - "dev": true, + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz", + "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==", "requires": { "argparse": "^1.0.7", "esprima": "^4.0.0" } }, "js2xmlparser": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-4.0.0.tgz", - "integrity": "sha512-WuNgdZOXVmBk5kUPMcTcVUpbGRzLfNkv7+7APq7WiDihpXVKrgxo6wwRpRl9OQeEBgKCVk9mR7RbzrnNWC8oBw==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-4.0.1.tgz", + "integrity": "sha512-KrPTolcw6RocpYjdC7pL7v62e55q7qOMHvLX1UCLc5AAS8qeJ6nukarEJAF2KL2PZxlbGueEbINqZR2bDe/gUw==", "dev": true, "requires": { - "xmlcreate": "^2.0.0" + "xmlcreate": "^2.0.3" } }, "jsbn": { @@ -13281,49 +11075,43 @@ "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" }, "jsdoc": { - "version": "3.6.3", - "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.3.tgz", - "integrity": "sha512-Yf1ZKA3r9nvtMWHO1kEuMZTlHOF8uoQ0vyo5eH7SQy5YeIiHM+B0DgKnn+X6y6KDYZcF7G2SPkKF+JORCXWE/A==", + "version": "3.6.4", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.4.tgz", + "integrity": "sha512-3G9d37VHv7MFdheviDCjUfQoIjdv4TC5zTTf5G9VODLtOnVS6La1eoYBDlbWfsRT3/Xo+j2MIqki2EV12BZfwA==", "dev": true, "requires": { - "@babel/parser": "^7.4.4", - "bluebird": "^3.5.4", + "@babel/parser": "^7.9.4", + "bluebird": "^3.7.2", "catharsis": "^0.8.11", "escape-string-regexp": "^2.0.0", - "js2xmlparser": "^4.0.0", + "js2xmlparser": "^4.0.1", "klaw": "^3.0.0", - "markdown-it": "^8.4.2", - "markdown-it-anchor": "^5.0.2", - "marked": "^0.7.0", - "mkdirp": "^0.5.1", + "markdown-it": "^10.0.0", + "markdown-it-anchor": "^5.2.7", + "marked": "^0.8.2", + "mkdirp": "^1.0.4", "requizzle": "^0.2.3", - "strip-json-comments": "^3.0.1", + "strip-json-comments": "^3.1.0", "taffydb": "2.6.2", - "underscore": "~1.9.1" + "underscore": "~1.10.2" }, "dependencies": { - "@babel/parser": { - "version": "7.7.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.7.3.tgz", - "integrity": "sha512-bqv+iCo9i+uLVbI0ILzKkvMorqxouI+GbV13ivcARXn9NNEabi2IEz912IgNpT/60BNXac5dgcfjb94NjsF33A==", - "dev": true - }, - "bluebird": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.1.tgz", - "integrity": "sha512-DdmyoGCleJnkbp3nkbxTLJ18rjDsE4yCggEwKNXkeV123sPNfOCYeDoeuOY+F2FrSjO1YXcTU+dsy96KMy+gcg==", - "dev": true - }, "escape-string-regexp": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", "dev": true }, + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true + }, "strip-json-comments": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz", - "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.0.tgz", + "integrity": "sha512-e6/d0eBu7gHtdCqFt0xJr642LdToM5/cN4Qb9DbHjVx1CP5RyeM+zH7pbecEmDv/lBqb0QH+6Uqq75rxFPkM0w==", "dev": true } } @@ -13331,8 +11119,7 @@ "jsesc": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==" }, "jshint-stylish": { "version": "2.2.1", @@ -13434,63 +11221,40 @@ "json-parse-better-errors": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "dev": true - }, - "json-parse-even-better-errors": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.2.0.tgz", - "integrity": "sha512-2tLgY7LRNZ9Hd6gmCuBG5/OjRHQpSgJQqJoYyLLOhUgn8LdOYrjaZLcxkWnDads+AD/haWWioPNziXQcgvQJ/g==", - "dev": true + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" }, "json-schema": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", - "dev": true + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" }, "json-schema-traverse": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", - "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", - "dev": true + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" }, - "json-stable-stringify": { + "json-stable-stringify-without-jsonify": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", - "dev": true, - "requires": { - "jsonify": "~0.0.0" - } + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true }, "json-stringify-safe": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" }, "json3": { "version": "3.3.3", "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.3.tgz", - "integrity": "sha512-c7/8mbUsKigAbLkD5B010BK4D9LZm7A1pNItkEwiUZRpIN66exu/e7YQWysGun+TRKaJp8MhemM+VkfWv42aCA==", - "dev": true + "integrity": "sha512-c7/8mbUsKigAbLkD5B010BK4D9LZm7A1pNItkEwiUZRpIN66exu/e7YQWysGun+TRKaJp8MhemM+VkfWv42aCA==" }, "json5": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.2.tgz", - "integrity": "sha512-MoUOQ4WdiN3yxhm7NEVJSJrieAo5hNSLQ5sj05OTRHPL9HOBy8u4Bu88jsC1jvqAdN+E1bJmsUcZH+1HQxliqQ==", - "dev": true, + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz", + "integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==", "requires": { "minimist": "^1.2.5" - }, - "dependencies": { - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - } } }, "jsonfile": { @@ -13502,12 +11266,6 @@ "graceful-fs": "^4.1.6" } }, - "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", - "dev": true - }, "jsonparse": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", @@ -13518,7 +11276,6 @@ "version": "1.4.1", "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "dev": true, "requires": { "assert-plus": "1.0.0", "extsprintf": "1.3.0", @@ -13527,56 +11284,15 @@ } }, "jszip": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.1.5.tgz", - "integrity": "sha512-5W8NUaFRFRqTOL7ZDDrx5qWHJyBXy6velVudIzQUSoqAAYqzSh2Z7/m0Rf1QbmQJccegD0r+YZxBjzqoBiEeJQ==", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.5.0.tgz", + "integrity": "sha512-WRtu7TPCmYePR1nazfrtuF216cIVon/3GWOvHS9QR5bIwSbnxtdpma6un3jyGGNhHsKCSzn5Ypk+EkDRvTGiFA==", "dev": true, "requires": { - "core-js": "~2.3.0", - "es6-promise": "~3.0.2", - "lie": "~3.1.0", + "lie": "~3.3.0", "pako": "~1.0.2", - "readable-stream": "~2.0.6" - }, - "dependencies": { - "core-js": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.3.0.tgz", - "integrity": "sha1-+rg/uwstjchfpjbEudNMdUIMbWU=", - "dev": true - }, - "es6-promise": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.0.2.tgz", - "integrity": "sha1-AQ1YWEI6XxGJeWZfRkhqlcbuK7Y=", - "dev": true - }, - "process-nextick-args": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", - "dev": true - }, - "readable-stream": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", - "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~0.10.x", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", - "dev": true - } + "readable-stream": "~2.3.6", + "set-immediate-shim": "~1.0.1" } }, "just-debounce": { @@ -13620,17 +11336,236 @@ "useragent": "2.3.0" }, "dependencies": { + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "dev": true, + "requires": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + }, + "dependencies": { + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + } + } + }, + "binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "dev": true + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + } + }, + "chokidar": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", + "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", + "dev": true, + "requires": { + "anymatch": "^2.0.0", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "fsevents": "^1.2.7", + "glob-parent": "^3.1.0", + "inherits": "^2.0.3", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^3.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.2.1", + "upath": "^1.1.1" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + } + }, + "fsevents": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", + "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", + "dev": true, + "optional": true + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true, + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + }, + "dependencies": { + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + } + }, + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + }, + "kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true + } + } + }, "mime": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.4.tgz", - "integrity": "sha512-LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA==", + "version": "2.4.6", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.6.tgz", + "integrity": "sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA==", "dev": true }, + "readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + } + }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } } } }, @@ -13645,12 +11580,12 @@ } }, "karma-coverage-istanbul-reporter": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-2.0.4.tgz", - "integrity": "sha512-xJS7QSQIVU6VK9HuJ/ieE5yynxKhjCCkd96NLY/BX/HXsx0CskU9JJiMQbd4cHALiddMwI4OWh1IIzeWrsavJw==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-2.0.6.tgz", + "integrity": "sha512-WFh77RI8bMIKdOvI/1/IBmgnM+Q7NOLhnwG91QJrM8lW+CIXCjTzhhUsT/svLvAkLmR10uWY4RyYbHMLkTglvg==", "dev": true, "requires": { - "istanbul-api": "^2.0.5", + "istanbul-api": "^2.1.6", "minimatch": "^3.0.4" } }, @@ -13664,16 +11599,15 @@ } }, "karma-jasmine-html-reporter": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-1.4.0.tgz", - "integrity": "sha512-0wxhwA8PLPpICZ4o2GRnPi67hf3JhfQm5WCB8nElh4qsE6wRNOTtrqooyBPNqI087Xr2SBhxLg5fU+BJ/qxRrw==", + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-1.5.4.tgz", + "integrity": "sha512-PtilRLno5O6wH3lDihRnz0Ba8oSn0YUJqKjjux1peoYGwo0AQqrWRbdWk/RLzcGlb+onTyXAnHl6M+Hu3UxG/Q==", "dev": true }, "karma-source-map-support": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/karma-source-map-support/-/karma-source-map-support-1.4.0.tgz", "integrity": "sha512-RsBECncGO17KAoJCYXjv+ckIz+Ii9NCi+9enk+rq6XC81ezYkb4/RHE6CTXdA7IOJqoF3wcaLfVG0CPmE5ca6A==", - "dev": true, "requires": { "source-map-support": "^0.5.5" } @@ -13690,14 +11624,12 @@ "killable": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz", - "integrity": "sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg==", - "dev": true + "integrity": "sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg==" }, "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", - "dev": true + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==" }, "klaw": { "version": "3.0.0", @@ -13718,9 +11650,9 @@ } }, "last-char": { - "version": "1.3.9", - "resolved": "https://registry.npmjs.org/last-char/-/last-char-1.3.9.tgz", - "integrity": "sha512-8jsWryUJCx06lnQCV+XjnHd4QxIvH3Flvzb9GDgA4iwkzj8VKl2iEP0IHrVJ+Ez1FWSt92BykXUDpn/f1CD+Mw==", + "version": "1.3.10", + "resolved": "https://registry.npmjs.org/last-char/-/last-char-1.3.10.tgz", + "integrity": "sha512-zhc7uLX5Sl0GK82ESHWpLPSmL21PSDeBkksExu+DgicmiNr0wv33oR3Nb8wT3Mxv3G15D5i1+atkUIKDR5Kvaw==", "dev": true, "optional": true }, @@ -13777,26 +11709,26 @@ } }, "less": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/less/-/less-3.0.4.tgz", - "integrity": "sha512-q3SyEnPKbk9zh4l36PGeW2fgynKu+FpbhiUNx/yaiBUQ3V0CbACCgb9FzYWcRgI2DJlP6eI4jc8XPrCTi55YcQ==", - "dev": true, + "version": "3.11.3", + "resolved": "https://registry.npmjs.org/less/-/less-3.11.3.tgz", + "integrity": "sha512-VkZiTDdtNEzXA3LgjQiC3D7/ejleBPFVvq+aRI9mIj+Zhmif5TvFPM244bT4rzkvOCvJ9q4zAztok1M7Nygagw==", "requires": { + "clone": "^2.1.2", "errno": "^0.1.1", "graceful-fs": "^4.1.2", "image-size": "~0.5.0", + "make-dir": "^2.1.0", "mime": "^1.4.1", - "mkdirp": "^0.5.0", "promise": "^7.1.1", "request": "^2.83.0", - "source-map": "~0.6.0" + "source-map": "~0.6.0", + "tslib": "^1.10.0" }, "dependencies": { "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, "optional": true } } @@ -13805,7 +11737,6 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-5.0.0.tgz", "integrity": "sha512-bquCU89mO/yWLaUq0Clk7qCsKhsF/TZpJUzETRvJa9KSVEL9SO3ovCvdEHISBhrC81OwC8QSVX7E0bzElZj9cg==", - "dev": true, "requires": { "clone": "^2.1.1", "loader-utils": "^1.1.0", @@ -13816,7 +11747,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, "requires": { "minimist": "^1.2.0" } @@ -13825,7 +11755,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, "requires": { "big.js": "^5.2.2", "emojis-list": "^3.0.0", @@ -13837,14 +11766,12 @@ "leven": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - "dev": true + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==" }, "levenary": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/levenary/-/levenary-1.1.1.tgz", "integrity": "sha512-mkAdOIt79FD6irqjYSs4rdbnlT5vRonMEvBVPVb3XmevfS8kgRXwfes0dhPdEtzTWD/1eNE/Bm/G1iRt6DcnQQ==", - "dev": true, "requires": { "leven": "^3.1.0" } @@ -13853,29 +11780,28 @@ "version": "2.1.4", "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-2.1.4.tgz", "integrity": "sha512-1Xq72fmPbTg5KofXs+yI5L4QqPFjQ6mZxoeI6D7gfiEDOtaEIk6PGrdLaej90bpDqKNHNxlQ/MW4tMAL6xMPJQ==", - "dev": true, "requires": { "@types/webpack-sources": "^0.1.5", "webpack-sources": "^1.2.0" } }, "lie": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/lie/-/lie-3.1.1.tgz", - "integrity": "sha1-mkNrLMd0bKWd56QfpGmz77dr2H4=", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", + "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", "dev": true, "requires": { "immediate": "~3.0.5" } }, "liftoff": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-2.5.0.tgz", - "integrity": "sha1-IAkpG7Mc6oYbvxCnwVooyvdcMew=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-3.1.0.tgz", + "integrity": "sha512-DlIPlJUkCV0Ips2zf2pJP0unEoT1kwYhiiPUGF3s/jtxTCjziNLoiVVh+jqWOWeFi6mmwQ5fNxvAUyPad4Dfog==", "dev": true, "requires": { "extend": "^3.0.0", - "findup-sync": "^2.0.0", + "findup-sync": "^3.0.0", "fined": "^1.0.1", "flagged-respawn": "^1.0.0", "is-plain-object": "^2.0.4", @@ -13917,6 +11843,15 @@ "strip-bom": "^2.0.0" }, "dependencies": { + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "^1.2.0" + } + }, "pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", @@ -13928,14 +11863,12 @@ "loader-runner": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", - "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", - "dev": true + "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==" }, "loader-utils": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz", "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==", - "dev": true, "requires": { "big.js": "^5.2.2", "emojis-list": "^3.0.0", @@ -13943,12 +11876,11 @@ } }, "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "requires": { - "p-locate": "^3.0.0", + "p-locate": "^2.0.0", "path-exists": "^3.0.0" } }, @@ -14034,8 +11966,7 @@ "lodash.clonedeep": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", - "dev": true + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=" }, "lodash.defaults": { "version": "4.2.0", @@ -14084,8 +12015,7 @@ "lodash.memoize": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=", - "dev": true + "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=" }, "lodash.merge": { "version": "4.6.2", @@ -14112,37 +12042,28 @@ "dev": true }, "lodash.template": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-3.6.2.tgz", - "integrity": "sha1-+M3sxhaaJVvpCYrosMU9N4kx0U8=", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz", + "integrity": "sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==", "dev": true, "requires": { - "lodash._basecopy": "^3.0.0", - "lodash._basetostring": "^3.0.0", - "lodash._basevalues": "^3.0.0", - "lodash._isiterateecall": "^3.0.0", "lodash._reinterpolate": "^3.0.0", - "lodash.escape": "^3.0.0", - "lodash.keys": "^3.0.0", - "lodash.restparam": "^3.0.0", - "lodash.templatesettings": "^3.0.0" + "lodash.templatesettings": "^4.0.0" } }, "lodash.templatesettings": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz", - "integrity": "sha1-+zB4RHU7Zrnxr6VOJix0UwfbqOU=", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz", + "integrity": "sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ==", "dev": true, "requires": { - "lodash._reinterpolate": "^3.0.0", - "lodash.escape": "^3.0.0" + "lodash._reinterpolate": "^3.0.0" } }, "lodash.uniq": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", - "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=", - "dev": true + "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=" }, "log-symbols": { "version": "3.0.0", @@ -14151,19 +12072,6 @@ "dev": true, "requires": { "chalk": "^2.4.2" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - } } }, "log4js": { @@ -14177,30 +12085,12 @@ "flatted": "^2.0.0", "rfdc": "^1.1.4", "streamroller": "^1.0.6" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } } }, "loglevel": { - "version": "1.6.7", - "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.7.tgz", - "integrity": "sha512-cY2eLFrQSAfVPhCgH1s7JI73tMbg9YC3v3+ZHVW67sBS7UxWzNEk/ZBbSfLykBWHp33dqqtOv82gjhKEi81T/A==", - "dev": true + "version": "1.6.8", + "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.8.tgz", + "integrity": "sha512-bsU7+gc9AJ2SqpzxwU3+1fedl8zAntbtC5XYlt3s2j1hJcn2PsXSmgN8TaLG/J1/2mod4+cE/3vNL70/c1RNCA==" }, "longest": { "version": "1.0.1", @@ -14212,7 +12102,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "dev": true, "requires": { "js-tokens": "^3.0.0 || ^4.0.0" } @@ -14234,19 +12123,24 @@ "dev": true }, "lru-cache": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.3.tgz", - "integrity": "sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA==", - "dev": true, + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" + "yallist": "^3.0.2" + }, + "dependencies": { + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + } } }, "lwip-pixels": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/lwip-pixels/-/lwip-pixels-1.1.8.tgz", - "integrity": "sha512-xHcZQZMcn+6QSJaZQwXf8DYqFpnEXtMoPm4uPNIPhuLgd0iuhrdiNpFIXI47rCDmJwwRMFNu2uJVYDcPaxh6zQ==", + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/lwip-pixels/-/lwip-pixels-1.1.9.tgz", + "integrity": "sha512-oczNiPLp3o0MUHGyAlBxxaNjgE7+wgd/Tk7J17VCQvfOrhJhwuorxGAjptCBjSAKGm5TspvVkcZfloXqDFuGOg==", "dev": true, "optional": true, "requires": { @@ -14258,18 +12152,16 @@ "resolved": "https://registry.npmjs.org/lwip2/-/lwip2-1.0.14.tgz", "integrity": "sha512-Oi6csNdNZrc3JmJ7occby0wnK63mCw4cCryyGy0UA7UZLHibg5QExMWy2Sj26vjtCiN8DrHJxisxYGnhUbZCrw==", "dev": true, - "optional": true, "requires": { "err": "^1.1.1", "gm-installed": "^1.0.0" } }, "lwipify": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/lwipify/-/lwipify-2.0.11.tgz", - "integrity": "sha512-pag6tA3TpZaKH8Z04rlKrmZ6qq5jGn/UQsN7t1wASIwFF9fwRKxwTU7Lsa831iQY91IeDrq2fQclKVhNF86G2g==", + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/lwipify/-/lwipify-2.0.12.tgz", + "integrity": "sha512-98gWnBT6BXCcja6DfR2JHj6UzGFugfREEHefTDjCtXnXRUpEPt3DKmOIgJ1hmIeNzKLHnTvU7oi6Uv8m6fVw7Q==", "dev": true, - "optional": true, "requires": { "lwip2": "^1.0.0", "noop6": "^1.0.1", @@ -14278,19 +12170,17 @@ } }, "magic-string": { - "version": "0.16.0", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.16.0.tgz", - "integrity": "sha1-lw67DacZMwEoX7GqZQ85vdgetFo=", - "dev": true, + "version": "0.25.7", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", + "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==", "requires": { - "vlq": "^0.2.1" + "sourcemap-codec": "^1.4.4" } }, "make-dir": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, "requires": { "pify": "^4.0.1", "semver": "^5.6.0" @@ -14299,79 +12189,74 @@ "semver": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" } } }, "make-error": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.5.tgz", - "integrity": "sha512-c3sIjNUow0+8swNwVpqoH4YCShKNFkMaw6oH1mNS2haDZQqkeZFlHS3dhoeEbKKmJB4vXpJucU6oH75aDYeE9g==", - "dev": true + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==" }, "make-fetch-happen": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-8.0.4.tgz", - "integrity": "sha512-hIFoqGq1db0QMiy/Atr/pI1Rs4rDV+ZdGSey2SQyF3KK3u1z4aj9mS5UdNnZkdQpA+H3pGn0J3KlEwsi2x4EqA==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-5.0.2.tgz", + "integrity": "sha512-07JHC0r1ykIoruKO8ifMXu+xEU8qOXDFETylktdug6vJDACnP+HKevOu3PXyNPzFyTSlz8vrBYlBO1JZRe8Cag==", "dev": true, "requires": { - "agentkeepalive": "^4.1.0", - "cacache": "^15.0.0", - "http-cache-semantics": "^4.0.4", - "http-proxy-agent": "^4.0.1", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", + "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.3", "lru-cache": "^5.1.1", - "minipass": "^3.0.0", - "minipass-collect": "^1.0.2", - "minipass-fetch": "^1.1.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.2", + "mississippi": "^3.0.0", + "node-fetch-npm": "^2.0.2", "promise-retry": "^1.1.1", - "socks-proxy-agent": "^5.0.0", - "ssri": "^8.0.0" + "socks-proxy-agent": "^4.0.0", + "ssri": "^6.0.0" }, "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "cacache": { + "version": "12.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", + "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", "dev": true, "requires": { - "ms": "^2.1.1" + "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" } }, - "https-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", - "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", "dev": true, "requires": { - "agent-base": "6", - "debug": "4" + "glob": "^7.1.3" } }, - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "ssri": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", + "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", "dev": true, "requires": { - "yallist": "^3.0.2" + "figgy-pudding": "^3.5.1" } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true } } }, @@ -14387,8 +12272,7 @@ "mamacro": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/mamacro/-/mamacro-0.0.3.tgz", - "integrity": "sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA==", - "dev": true + "integrity": "sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA==" }, "map-age-cleaner": { "version": "0.1.3", @@ -14402,13 +12286,12 @@ "map-cache": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", - "dev": true + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" }, "map-o": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/map-o/-/map-o-2.0.8.tgz", - "integrity": "sha1-muh1oEd7ksCuJbBIKEvJnJdXrhY=", + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/map-o/-/map-o-2.0.9.tgz", + "integrity": "sha512-oYdT5amkNO06ZS/+x6qQ6SAz+/k9lByczvBZn8RKnwzWOb9FDlb1NCwBTtjOmloeh4sOuxkxeGf0s2ruSUieEg==", "dev": true, "optional": true, "requires": { @@ -14431,60 +12314,190 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", - "dev": true, "requires": { "object-visit": "^1.0.0" } }, "markdown-it": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.2.tgz", - "integrity": "sha512-GcRz3AWTqSUphY3vsUqQSFMbgR38a4Lh3GWlHRh/7MRwz8mcu9n2IO7HOh+bXHrR9kOPDl5RNCaEsrneb+xhHQ==", + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-10.0.0.tgz", + "integrity": "sha512-YWOP1j7UbDNz+TumYP1kpwnP0aEa711cJjrAQrzd0UXlbJfc5aAq0F/PZHjiioqDC1NKgvIMX+o+9Bk7yuM2dg==", "dev": true, "requires": { "argparse": "^1.0.7", - "entities": "~1.1.1", + "entities": "~2.0.0", "linkify-it": "^2.0.0", "mdurl": "^1.0.1", "uc.micro": "^1.0.5" } }, - "markdown-it-anchor": { - "version": "5.2.5", - "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-5.2.5.tgz", - "integrity": "sha512-xLIjLQmtym3QpoY9llBgApknl7pxAcN3WDRc2d3rwpl+/YvDZHPmKscGs+L6E05xf2KrCXPBvosWt7MZukwSpQ==", - "dev": true - }, - "marked": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/marked/-/marked-0.7.0.tgz", - "integrity": "sha512-c+yYdCZJQrsRjTPhUx7VKkApw9bwDkNbHUKo1ovgcfDjb2kc8rLuRbIFyXL5WOEUwzSSKo3IXpph2K6DqB/KZg==", - "dev": true - }, - "matchdep": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/matchdep/-/matchdep-2.0.0.tgz", - "integrity": "sha1-xvNINKDY28OzfCfui7yyfHd1WC4=", - "dev": true, - "requires": { - "findup-sync": "^2.0.0", - "micromatch": "^3.0.4", - "resolve": "^1.4.0", - "stack-trace": "0.0.10" - } + "markdown-it-anchor": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-5.3.0.tgz", + "integrity": "sha512-/V1MnLL/rgJ3jkMWo84UR+K+jF1cxNG1a+KwqeXqTIJ+jtA8aWSHuigx8lTzauiIjBDbwF3NcWQMotd0Dm39jA==", + "dev": true + }, + "marked": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/marked/-/marked-0.8.2.tgz", + "integrity": "sha512-EGwzEeCcLniFX51DhTpmTom+dSA/MG/OBUDjnWtHbEnjAH180VzUeAw+oE4+Zv+CoYBWyRlYOTR0N8SO9R1PVw==", + "dev": true + }, + "matchdep": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/matchdep/-/matchdep-2.0.0.tgz", + "integrity": "sha1-xvNINKDY28OzfCfui7yyfHd1WC4=", + "dev": true, + "requires": { + "findup-sync": "^2.0.0", + "micromatch": "^3.0.4", + "resolve": "^1.4.0", + "stack-trace": "0.0.10" + }, + "dependencies": { + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "findup-sync": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz", + "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=", + "dev": true, + "requires": { + "detect-file": "^1.0.0", + "is-glob": "^3.1.0", + "micromatch": "^3.0.4", + "resolve-dir": "^1.0.1" + } + }, + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + } + } + }, + "material-community-components": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/material-community-components/-/material-community-components-6.0.1.tgz", + "integrity": "sha512-b+rXw6RyNdcpP8wKeR/tVotp62Yqo2jLdXgjlKjY9kKBTPUMkstfMwFgxU9d1ReKnpSx8Q8Kjyw62R1cbqlXvg==" }, "mathjs": { - "version": "5.4.2", - "resolved": "https://registry.npmjs.org/mathjs/-/mathjs-5.4.2.tgz", - "integrity": "sha512-jN6SLsaRvihxgRoq4+5/Tbw/mVe71W0kCxZA2TdpNRR+MHJGow/TsRrU5B6uXd7lYNWxiVeubn+F5d3mLtxARw==", + "version": "5.10.3", + "resolved": "https://registry.npmjs.org/mathjs/-/mathjs-5.10.3.tgz", + "integrity": "sha512-ySjg30BC3dYjQm73ILZtwcWzFJde0VU6otkXW/57IjjuYRa3Qaf0Kb8pydEuBZYtqW2OxreAtsricrAmOj3jIw==", "requires": { "complex.js": "2.0.11", - "decimal.js": "10.0.2", + "decimal.js": "10.2.0", "escape-latex": "1.2.0", "fraction.js": "4.0.12", "javascript-natural-sort": "0.7.1", "seed-random": "2.2.0", - "tiny-emitter": "2.0.2", + "tiny-emitter": "2.1.0", "typed-function": "1.1.0" }, "dependencies": { @@ -14494,9 +12507,9 @@ "integrity": "sha512-6IArJLApNtdg1P1dFtn3dnyzoZBEF0MwMnrfF1exSBRpZYoy4yieMkpZhQDC0uwctw48vii0CFVyHfpgZ/DfGw==" }, "decimal.js": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.0.2.tgz", - "integrity": "sha512-qL5tUTXAWjB5cSBfm0V2a4jO5FaDLumCfwc/0f7WaTOT3WU8pIeq2HHrd98eXHtbey4qFWlaPzfml1JWIoO9TQ==" + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.2.0.tgz", + "integrity": "sha512-vDPw+rDgn3bZe1+F/pyEwb1oMG2XTlRVgAa6B4KccTEpYgF8w6eQllVbQcfIJnZyvzFtFpxnpGtx8dd7DJp/Rw==" }, "escape-latex": { "version": "1.2.0", @@ -14508,6 +12521,11 @@ "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.0.12.tgz", "integrity": "sha512-8Z1K0VTG4hzYY7kA/1sj4/r1/RWLBD3xwReT/RCrUCbzPszjNQCCsy3ktkU/eaEqX3MYa4pY37a52eiBlPMlhA==" }, + "tiny-emitter": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.1.0.tgz", + "integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==" + }, "typed-function": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/typed-function/-/typed-function-1.1.0.tgz", @@ -14519,7 +12537,6 @@ "version": "1.3.5", "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", - "dev": true, "requires": { "hash-base": "^3.0.0", "inherits": "^2.0.1", @@ -14529,8 +12546,7 @@ "mdn-data": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz", - "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==", - "dev": true + "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==" }, "mdurl": { "version": "1.0.1", @@ -14541,8 +12557,7 @@ "media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", - "dev": true + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" }, "mem": { "version": "4.3.0", @@ -14559,7 +12574,6 @@ "version": "0.5.0", "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", - "dev": true, "requires": { "errno": "^0.1.3", "readable-stream": "^2.0.1" @@ -14586,14 +12600,12 @@ "merge-descriptors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", - "dev": true + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" }, "merge-source-map": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz", "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==", - "dev": true, "requires": { "source-map": "^0.6.1" }, @@ -14601,16 +12613,19 @@ "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" } } }, "merge-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" + }, + "merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==" }, "methods": { "version": "1.1.2", @@ -14623,34 +12638,28 @@ "integrity": "sha1-+5FYjnjJACVnI5XLQLJffNatGCk=" }, "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" + "braces": "^3.0.1", + "picomatch": "^2.0.5" } }, "miller-rabin": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", - "dev": true, "requires": { "bn.js": "^4.0.0", "brorand": "^1.0.1" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" + } } }, "mime": { @@ -14659,16 +12668,16 @@ "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" }, "mime-db": { - "version": "1.33.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", - "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==" + "version": "1.44.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", + "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==" }, "mime-types": { - "version": "2.1.18", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", - "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", + "version": "2.1.27", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", + "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", "requires": { - "mime-db": "~1.33.0" + "mime-db": "1.44.0" } }, "mimic-fn": { @@ -14687,7 +12696,6 @@ "version": "0.9.0", "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.9.0.tgz", "integrity": "sha512-lp3GeY7ygcgAmVIcRPBVhIkf8Us7FZjA+ILpal44qLdSu11wmjKQ3d9k15lfD7pO4esu9eUIAW7qiYIBppv40A==", - "dev": true, "requires": { "loader-utils": "^1.1.0", "normalize-url": "1.9.1", @@ -14699,7 +12707,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, "requires": { "minimist": "^1.2.0" } @@ -14708,7 +12715,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, "requires": { "big.js": "^5.2.2", "emojis-list": "^3.0.0", @@ -14719,7 +12725,6 @@ "version": "1.9.1", "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-1.9.1.tgz", "integrity": "sha1-LMDWazHqIwNkWENuNiDYWVTGbDw=", - "dev": true, "requires": { "object-assign": "^4.0.1", "prepend-http": "^1.0.0", @@ -14731,7 +12736,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, "requires": { "ajv": "^6.1.0", "ajv-errors": "^1.0.0", @@ -14743,101 +12747,54 @@ "minimalistic-assert": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" }, "minimalistic-crypto-utils": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", - "dev": true + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" }, "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, "requires": { "brace-expansion": "^1.1.7" } }, "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" }, "minipass": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.1.tgz", - "integrity": "sha512-UFqVihv6PQgwj8/yTGvl9kPz7xIAY+R5z6XYjRInD3Gk3qx6QGSD6zEcpeG4Dy/lQnv1J6zv8ejV90hyYIKf3w==", - "dev": true, + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.3.tgz", + "integrity": "sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg==", "requires": { "yallist": "^4.0.0" - }, - "dependencies": { - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } } }, "minipass-collect": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "dev": true, "requires": { "minipass": "^3.0.0" } }, - "minipass-fetch": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-1.2.1.tgz", - "integrity": "sha512-ssHt0dkljEDaKmTgQ04DQgx2ag6G2gMPxA5hpcsoeTbfDgRf2fC2gNSRc6kISjD7ckCpHwwQvXxuTBK8402fXg==", - "dev": true, - "requires": { - "encoding": "^0.1.12", - "minipass": "^3.1.0", - "minipass-pipeline": "^1.2.2", - "minipass-sized": "^1.0.3", - "minizlib": "^2.0.0" - } - }, "minipass-flush": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-json-stream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", - "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", - "dev": true, "requires": { - "jsonparse": "^1.3.1", "minipass": "^3.0.0" } }, "minipass-pipeline": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.2.tgz", - "integrity": "sha512-3JS5A2DKhD2g0Gg8x3yamO0pj7YeKGwVlDS90pF++kxptwx/F+B//roxf9SqYil5tQo65bijy+dAuAFZmYOouA==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-sized": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", - "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", - "dev": true, + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.3.tgz", + "integrity": "sha512-cFOknTvng5vqnwOpDsZTWhNll6Jf8o2x+/diplafmxpuIymAjzoOolZG0VvQf3V2HgqzJNhnuKHYp2BqDgz8IQ==", "requires": { "minipass": "^3.0.0" } @@ -14846,25 +12803,15 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.0.tgz", "integrity": "sha512-EzTZN/fjSvifSX0SlqUERCN39o6T40AMarPbv0MrarSFtIITCBh7bi+dU8nxGFHuqs9jdIAeoYoKuQAAASsPPA==", - "dev": true, "requires": { "minipass": "^3.0.0", "yallist": "^4.0.0" - }, - "dependencies": { - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } } }, "mississippi": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", - "dev": true, "requires": { "concat-stream": "^1.5.0", "duplexify": "^3.4.2", @@ -14876,25 +12823,12 @@ "pumpify": "^1.3.3", "stream-each": "^1.1.0", "through2": "^2.0.0" - }, - "dependencies": { - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - } } }, "mixin-deep": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", - "dev": true, "requires": { "for-in": "^1.0.2", "is-extendable": "^1.0.1" @@ -14904,7 +12838,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, "requires": { "is-plain-object": "^2.0.4" } @@ -14912,40 +12845,22 @@ } }, "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "dev": true, + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", "requires": { - "minimist": "0.0.8" - }, - "dependencies": { - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", - "dev": true - } + "minimist": "^1.2.5" } }, "moment": { - "version": "2.22.2", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.22.2.tgz", - "integrity": "sha1-PCV/mDn8DpP/UxSWMiOeuQeD/2Y=" - }, - "monotone-convex-hull-2d": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/monotone-convex-hull-2d/-/monotone-convex-hull-2d-1.0.1.tgz", - "integrity": "sha1-R/Xa6t88Sv03dkuqGqh4ekDu4Iw=", - "requires": { - "robust-orientation": "^1.1.3" - } + "version": "2.26.0", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.26.0.tgz", + "integrity": "sha512-oIixUO+OamkUkwjhAVE18rAMfRJNsNe/Stid/gwHSOfHrOtw9EhAY2AHvdKZ/k/MggcYELFCJz/Sn2pL8b8JMw==" }, "move-concurrently": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", - "dev": true, "requires": { "aproba": "^1.1.1", "copy-concurrently": "^1.0.0", @@ -14953,18 +12868,27 @@ "mkdirp": "^0.5.1", "rimraf": "^2.5.4", "run-queue": "^1.0.3" + }, + "dependencies": { + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "requires": { + "glob": "^7.1.3" + } + } } }, "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" }, "multicast-dns": { "version": "6.2.3", "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.3.tgz", "integrity": "sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==", - "dev": true, "requires": { "dns-packet": "^1.3.1", "thunky": "^1.0.2" @@ -14973,8 +12897,7 @@ "multicast-dns-service-types": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz", - "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=", - "dev": true + "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=" }, "multipipe": { "version": "0.1.2", @@ -14997,25 +12920,16 @@ "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", "dev": true }, - "nan": { - "version": "2.14.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", - "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", - "dev": true, - "optional": true - }, "nanomatch": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.9.tgz", - "integrity": "sha512-n8R9bS8yQ6eSXaV6jHUpKzD8gLsin02w1HSFiegwrs9E098Ylhw5jdyKPaYqvHknHaSCKTPp7C8dGCQ0q9koXA==", - "dev": true, + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", "requires": { "arr-diff": "^4.0.0", "array-unique": "^0.3.2", "define-property": "^2.0.2", "extend-shallow": "^3.0.2", "fragment-cache": "^0.2.1", - "is-odd": "^2.0.0", "is-windows": "^1.0.2", "kind-of": "^6.0.2", "object.pick": "^1.3.0", @@ -15027,14 +12941,12 @@ "negotiator": { "version": "0.6.2", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", - "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", - "dev": true + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" }, "neo-async": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.0.tgz", - "integrity": "sha512-MFh0d/Wa7vkKO3Y3LlacqAEeHK0mckVqzDieUKTT+KGxi+zIpeVsFxymkIiRpbpDziHc290Xr9A1O4Om7otoRA==", - "dev": true + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", + "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==" }, "next-tick": { "version": "1.0.0", @@ -15043,18 +12955,18 @@ "dev": true }, "ng-packagr": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/ng-packagr/-/ng-packagr-9.1.0.tgz", - "integrity": "sha512-783WCTa+qQl8QQefQ3n8cDzYF3PpsQUnY87SwuXIxaJ1p8NjBq/3vCZmTiI3AXzDZFhRacbCqghtaJGU1qcFrQ==", + "version": "9.1.5", + "resolved": "https://registry.npmjs.org/ng-packagr/-/ng-packagr-9.1.5.tgz", + "integrity": "sha512-biuNfM15uLkCW+Vvj8bnuwjX37oX7j5icGm+l71FhM6ydlEl+Cl7PdFXpy9rrIlKFYlYRiPiiiWazGwVGn1icQ==", "dev": true, "requires": { "@rollup/plugin-commonjs": "^11.0.2", "@rollup/plugin-json": "^4.0.0", "@rollup/plugin-node-resolve": "^7.1.0", "ajv": "^6.10.2", - "autoprefixer": "^9.6.5", - "browserslist": "^4.7.0", - "chalk": "^3.0.0", + "autoprefixer": "^9.7.6", + "browserslist": "^4.12.0", + "chalk": "^4.0.0", "chokidar": "^3.2.1", "clean-css": "^4.1.11", "commander": "^4.0.0", @@ -15067,8 +12979,8 @@ "postcss-url": "^8.0.0", "read-pkg-up": "^5.0.0", "rimraf": "^3.0.0", - "rollup": "2.2.0", - "rollup-plugin-sourcemaps": "^0.5.0", + "rollup": "2.7.5", + "rollup-plugin-sourcemaps": "^0.6.0", "rxjs": "^6.5.0", "sass": "^1.23.0", "stylus": "^0.54.7", @@ -15076,167 +12988,135 @@ "update-notifier": "^4.0.0" }, "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "binary-extensions": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.0.0.tgz", - "integrity": "sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow==", - "dev": true - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "autoprefixer": { + "version": "9.8.0", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.0.tgz", + "integrity": "sha512-D96ZiIHXbDmU02dBaemyAg53ez+6F5yZmapmgKcjm35yEe1uVDYI8hGW3VYoGRaG290ZFf91YxHrR518vC0u/A==", "dev": true, "requires": { - "fill-range": "^7.0.1" + "browserslist": "^4.12.0", + "caniuse-lite": "^1.0.30001061", + "chalk": "^2.4.2", + "normalize-range": "^0.1.2", + "num2fraction": "^1.2.2", + "postcss": "^7.0.30", + "postcss-value-parser": "^4.1.0" + }, + "dependencies": { + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "postcss": { + "version": "7.0.32", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.32.tgz", + "integrity": "sha512-03eXong5NLnNCD05xscnGKGDZ98CyzoqPSMjOe6SuoQY7Z2hIj0Ld1g/O/UQRuOle2aRtiIRDg9tDcTGAkLfKw==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "dependencies": { + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + } } }, "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", "dev": true, "requires": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" - } - }, - "chokidar": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.1.tgz", - "integrity": "sha512-4QYCEWOcK3OJrxwvyyAOxFuhpvOVCYkr33LPfFNBjAD/w3sEzWsp2BUOkI4l9bHvWioAd0rc6NlHUOEaWkTeqg==", - "dev": true, - "requires": { - "anymatch": "~3.1.1", - "braces": "~3.0.2", - "fsevents": "~2.1.2", - "glob-parent": "~5.1.0", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.3.0" - } - }, - "clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", - "dev": true - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "commander": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", - "dev": true - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "fs-extra": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.0.0.tgz", - "integrity": "sha512-pmEYSk3vYsG/bF651KPUXZ+hvjpgWYw/Gc7W9NFUe3ZVLczKKWIij3IKpOrQcdw4TILtibFslZ0UmR8Vvzig4g==", - "dev": true, - "requires": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^1.0.0" - } - }, - "fsevents": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", - "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", - "dev": true, - "optional": true + }, + "dependencies": { + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } }, - "glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "requires": { - "is-glob": "^4.0.1" + "color-name": "~1.1.4" } }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", "dev": true }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "dev": true, "requires": { - "binary-extensions": "^2.0.0" + "locate-path": "^3.0.0" } }, - "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "fs-extra": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.0.1.tgz", + "integrity": "sha512-h2iAoN838FqAFJY2/qVpzFXy+EBxfVE220PalAqQLDVsFOHLJrZvut5puAbCdNv6WJk+B8ihI+k0c7JK5erwqQ==", "dev": true, "requires": { - "is-extglob": "^2.1.1" + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^1.0.0" } }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, "jsonfile": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.0.1.tgz", @@ -15247,40 +13127,38 @@ "universalify": "^1.0.0" } }, - "less": { - "version": "3.11.1", - "resolved": "https://registry.npmjs.org/less/-/less-3.11.1.tgz", - "integrity": "sha512-tlWX341RECuTOvoDIvtFqXsKj072hm3+9ymRBe76/mD6O5ZZecnlAOVDlWAleF2+aohFrxNidXhv2773f6kY7g==", + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "dev": true, "requires": { - "clone": "^2.1.2", - "errno": "^0.1.1", - "graceful-fs": "^4.1.2", - "image-size": "~0.5.0", - "mime": "^1.4.1", - "mkdirp": "^0.5.0", - "promise": "^7.1.1", - "request": "^2.83.0", - "source-map": "~0.6.0", - "tslib": "^1.10.0" + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" } }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" + "p-try": "^2.0.0" } }, - "normalize-path": { + "p-locate": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true }, "parse-json": { @@ -15295,12 +13173,6 @@ "lines-and-columns": "^1.1.6" } }, - "path-parse": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", - "dev": true - }, "read-pkg": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", @@ -15323,53 +13195,10 @@ "read-pkg": "^5.0.0" } }, - "readdirp": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.3.0.tgz", - "integrity": "sha512-zz0pAkSPOXXm1viEwygWIPSPkcBYjW1xU5j/JBh5t9bGCJwa6f9+BJa6VaB2g+b55yVrmXzqkyLf4xaWYM0IkQ==", - "dev": true, - "requires": { - "picomatch": "^2.0.7" - } - }, - "resolve": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.1.tgz", - "integrity": "sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w==", - "dev": true, - "requires": { - "path-parse": "^1.0.6" - } - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - }, - "dependencies": { - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } - } - }, "rollup": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.2.0.tgz", - "integrity": "sha512-iAu/j9/WJ0i+zT0sAMuQnsEbmOKzdQ4Yxu5rbPs9aUCyqveI1Kw3H4Fi9NWfCOpb8luEySD2lDyFWL9CrLE8iw==", + "version": "2.7.5", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.7.5.tgz", + "integrity": "sha512-xQSM8uzhgtF6tTnTVEvOQThrcG3LPUP3T/4l4EukzDp0kbTY1QRDuXjiwtYzs9odKj9Bj/PccRG6viFfS7DmCQ==", "dev": true, "requires": { "fsevents": "~2.1.2" @@ -15379,26 +13208,7 @@ "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "optional": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } + "dev": true }, "type-fest": { "version": "0.6.0", @@ -15415,9 +13225,9 @@ } }, "ngx-bootstrap": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/ngx-bootstrap/-/ngx-bootstrap-5.5.0.tgz", - "integrity": "sha512-BJeghbkKFQl49sg3GIYQyjvwaHn64xFOsinBVD8HWKOVpRJSnuafrjXByGDtfq35jGY4R+7iBLksM1IYLUPshg==" + "version": "5.6.2", + "resolved": "https://registry.npmjs.org/ngx-bootstrap/-/ngx-bootstrap-5.6.2.tgz", + "integrity": "sha512-6YHXtdXkGH3w0NQoaUgNYAcrj064Lv5RTO284ha/hvpNTrh55yQz2cVh0VvwBk3MjyY2tdmLH4SuCJDszYdYiw==" }, "ngx-color-picker": { "version": "9.1.0", @@ -15425,9 +13235,9 @@ "integrity": "sha512-ViYBfXb4IL1UbM15LaZHYqHyHPYVEKg+rZB1GWSLqXVuDol3Cgt38D8XfOcivVAO60CziQ77k3ThDo31T6wC6A==" }, "ngx-device-detector": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/ngx-device-detector/-/ngx-device-detector-1.4.1.tgz", - "integrity": "sha512-yzbN0XDOP4OrRbjY6vFQ09i1DEwp4za85r7CU80mFvQup09QtSNVW4fgv/1EFmWMK6QxbAuD1LL35fOS5+02JA==", + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/ngx-device-detector/-/ngx-device-detector-1.4.5.tgz", + "integrity": "sha512-e3OlUKPrg+hoichpn/wx+C/YicUfdR6SIFo6848Nv5JbpLaMDvEgqsJsQjSGP2phKSnFIsOsDKHBb8iGfZfDLw==", "requires": { "tslib": "^1.9.0" } @@ -15440,20 +13250,28 @@ "nice-try": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", - "dev": true + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" + }, + "node-fetch-npm": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/node-fetch-npm/-/node-fetch-npm-2.0.4.tgz", + "integrity": "sha512-iOuIQDWDyjhv9qSDrj9aq/klt6F9z1p2otB3AV7v3zBDcL/x+OfGsvGQZZCcMZbUf4Ujw1xGNQkjvGnVT22cKg==", + "dev": true, + "requires": { + "encoding": "^0.1.11", + "json-parse-better-errors": "^1.0.0", + "safe-buffer": "^5.1.1" + } }, "node-forge": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.9.0.tgz", - "integrity": "sha512-7ASaDa3pD+lJ3WvXFsxekJQelBKRpne+GOVbLbtHYdd7pFspyeuJHnWfLplGf3SwKGbfs/aYl5V/JCIaHVUKKQ==", - "dev": true + "integrity": "sha512-7ASaDa3pD+lJ3WvXFsxekJQelBKRpne+GOVbLbtHYdd7pFspyeuJHnWfLplGf3SwKGbfs/aYl5V/JCIaHVUKKQ==" }, "node-libs-browser": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", - "dev": true, "requires": { "assert": "^1.1.1", "browserify-zlib": "^0.2.0", @@ -15483,16 +13301,14 @@ "punycode": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" } } }, "node-releases": { - "version": "1.1.53", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.53.tgz", - "integrity": "sha512-wp8zyQVwef2hpZ/dJH7SfSrIPD6YoJz6BDQDpGEkcA0s3LpAQoxBIYmfIq6QAhC1DhwsyCgTaTTcONwX8qzCuQ==", - "dev": true + "version": "1.1.58", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.58.tgz", + "integrity": "sha512-NxBudgVKiRh/2aPWMgPR7bPTX0VPmGx5QBwCtdHitnqFE5/O8DeBXuIMH1nwNnw/aMo6AjOrpsHzfY3UbUJ7yg==" }, "node-sass-tilde-importer": { "version": "1.0.2", @@ -15503,53 +13319,11 @@ "find-parent-dir": "^0.3.0" } }, - "nomnom": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/nomnom/-/nomnom-1.8.1.tgz", - "integrity": "sha1-IVH3Ikcrp55Qp2/BJbuMjy5Nwqc=", - "dev": true, - "requires": { - "chalk": "~0.4.0", - "underscore": "~1.6.0" - }, - "dependencies": { - "ansi-styles": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", - "integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=", - "dev": true - }, - "chalk": { - "version": "0.4.0", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", - "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", - "dev": true, - "requires": { - "ansi-styles": "~1.0.0", - "has-color": "~0.1.0", - "strip-ansi": "~0.1.0" - } - }, - "strip-ansi": { - "version": "0.1.1", - "resolved": "http://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", - "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=", - "dev": true - }, - "underscore": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", - "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=", - "dev": true - } - } - }, "noop6": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/noop6/-/noop6-1.0.7.tgz", - "integrity": "sha1-lnZ78gWLpZyoy5FVk0fdyAI5+o4=", - "dev": true, - "optional": true + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/noop6/-/noop6-1.0.8.tgz", + "integrity": "sha512-+Al5csMVc40I8xRfJsyBcN1IbpyvebOuQmMfxdw+AL6ECELey12ANgNTRhMfTwNIDU4W9W0g8EHLcsb3+3qPFA==", + "dev": true }, "nopt": { "version": "3.0.6", @@ -15561,42 +13335,50 @@ } }, "normalize-package-data": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", - "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dev": true, "requires": { "hosted-git-info": "^2.1.4", - "is-builtin-module": "^1.0.0", + "resolve": "^1.10.0", "semver": "2 || 3 || 4 || 5", "validate-npm-package-license": "^3.0.1" + }, + "dependencies": { + "hosted-git-info": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", + "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", + "dev": true + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + } } }, "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" }, "normalize-range": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", - "dev": true + "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=" }, "normalize-url": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-3.3.0.tgz", - "integrity": "sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg==", - "dev": true + "integrity": "sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg==" }, "now-and-later": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/now-and-later/-/now-and-later-2.0.0.tgz", - "integrity": "sha1-vGHLtFbXnLMiB85HygUTb/Ln1u4=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/now-and-later/-/now-and-later-2.0.1.tgz", + "integrity": "sha512-KGvQ0cB70AQfg107Xvs/Fbu+dGmZoTRJp2TaPwcwQm3/7PteUyN2BCgk8KBMPGBUXZdVwyWS8fDCGFygBm19UQ==", "dev": true, "requires": { "once": "^1.3.2" @@ -15618,14 +13400,6 @@ "dev": true, "requires": { "semver": "^7.1.1" - }, - "dependencies": { - "semver": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", - "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==", - "dev": true - } } }, "npm-normalize-package-bin": { @@ -15643,66 +13417,17 @@ "hosted-git-info": "^3.0.2", "semver": "^7.0.0", "validate-npm-package-name": "^3.0.0" - }, - "dependencies": { - "hosted-git-info": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.4.tgz", - "integrity": "sha512-4oT62d2jwSDBbLLFLZE+1vPuQ1h8p9wjrJ8Mqx5TjsyWmBMV5B13eJqn8pvluqubLf3cJPTfiYCIwNwDNmzScQ==", - "dev": true, - "requires": { - "lru-cache": "^5.1.1" - } - }, - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "requires": { - "yallist": "^3.0.2" - } - }, - "semver": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", - "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==", - "dev": true - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - } } }, "npm-packlist": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-2.1.1.tgz", - "integrity": "sha512-95TSDvGwujIhqfSpIiRRLodEF+y6mJMopuZdahoGzqtRDFZXGav46S0p6ngeWaiAkb5R72w6eVARhzej0HvZeQ==", + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.8.tgz", + "integrity": "sha512-5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A==", "dev": true, "requires": { - "glob": "^7.1.6", - "ignore-walk": "^3.0.3", - "npm-bundled": "^1.1.1", + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1", "npm-normalize-package-bin": "^1.0.1" - }, - "dependencies": { - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } } }, "npm-pick-manifest": { @@ -15714,45 +13439,51 @@ "npm-install-checks": "^4.0.0", "npm-package-arg": "^8.0.0", "semver": "^7.0.0" - }, - "dependencies": { - "semver": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", - "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==", - "dev": true - } } }, "npm-registry-fetch": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-8.0.0.tgz", - "integrity": "sha512-975WwLvZjX97y9UWWQ8nAyr7bw02s9xKPHqvEm5T900LQsB1HXb8Gb9ebYtCBLSX+K8gSOrO5KS/9yV/naLZmQ==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-4.0.4.tgz", + "integrity": "sha512-6jb34hX/iYNQebqWUHtU8YF6Cjb1H6ouTFPClYsyiW6lpFkljTpdeftm53rRojtja1rKAvKNIIiTS5Sjpw4wsA==", "dev": true, "requires": { - "@npmcli/ci-detect": "^1.0.0", + "JSONStream": "^1.3.4", + "bluebird": "^3.5.1", + "figgy-pudding": "^3.4.1", "lru-cache": "^5.1.1", - "make-fetch-happen": "^8.0.2", - "minipass": "^3.0.0", - "minipass-fetch": "^1.1.2", - "minipass-json-stream": "^1.0.1", - "minizlib": "^2.0.0", - "npm-package-arg": "^8.0.0" + "make-fetch-happen": "^5.0.0", + "npm-package-arg": "^6.1.0", + "safe-buffer": "^5.2.0" }, "dependencies": { - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "hosted-git-info": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", + "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", + "dev": true + }, + "npm-package-arg": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-6.1.1.tgz", + "integrity": "sha512-qBpssaL3IOZWi5vEKUKW0cO7kzLeT+EQO9W8RsLOZf76KF9E/K9+wH0C7t06HXPpaH8WH5xF1MExLuCwbTqRUg==", "dev": true, "requires": { - "yallist": "^3.0.2" + "hosted-git-info": "^2.7.1", + "osenv": "^0.1.5", + "semver": "^5.6.0", + "validate-npm-package-name": "^3.0.0" } }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true } } @@ -15761,7 +13492,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", - "dev": true, "requires": { "path-key": "^2.0.0" } @@ -15770,7 +13500,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", - "dev": true, "requires": { "boolbase": "~1.0.0" } @@ -15784,8 +13513,7 @@ "num2fraction": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", - "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", - "dev": true + "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=" }, "number-is-nan": { "version": "1.0.1", @@ -15794,15 +13522,14 @@ "dev": true }, "oauth-sign": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", - "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=", - "dev": true + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==" }, "obj-def": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/obj-def/-/obj-def-1.0.6.tgz", - "integrity": "sha1-d1ThcohJwvk00f3SvnL+Yn7LWxQ=", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/obj-def/-/obj-def-1.0.7.tgz", + "integrity": "sha512-ahx1PnGDpovRglgczxsKtoYhPhrhYEG1rs3WklAHMTk29DyStqsrGDVISOIGZLF+ewK4m5CFZNuZXIXRQwZUMg==", "dev": true, "optional": true, "requires": { @@ -15824,7 +13551,6 @@ "version": "0.1.0", "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", - "dev": true, "requires": { "copy-descriptor": "^0.1.0", "define-property": "^0.2.5", @@ -15835,7 +13561,6 @@ "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, "requires": { "is-descriptor": "^0.1.0" } @@ -15844,7 +13569,6 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, "requires": { "is-buffer": "^1.1.5" } @@ -15854,20 +13578,26 @@ "object-inspect": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", - "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==", - "dev": true + "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==" + }, + "object-is": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.2.tgz", + "integrity": "sha512-5lHCz+0uufF6wZ7CRFWJN3hp8Jqblpgve06U5CMQ3f//6iDjPr2PEo9MWCjEssDsa+UZEL4PkFpr+BMop6aKzQ==", + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } }, "object-keys": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.12.tgz", - "integrity": "sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag==", - "dev": true + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" }, "object-visit": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", - "dev": true, "requires": { "isobject": "^3.0.0" } @@ -15876,7 +13606,6 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", - "dev": true, "requires": { "define-properties": "^1.1.2", "function-bind": "^1.1.1", @@ -15900,7 +13629,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz", "integrity": "sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg==", - "dev": true, "requires": { "define-properties": "^1.1.3", "es-abstract": "^1.17.0-next.1" @@ -15920,7 +13648,6 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", - "dev": true, "requires": { "isobject": "^3.0.1" } @@ -15939,7 +13666,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.1.tgz", "integrity": "sha512-WTa54g2K8iu0kmS/us18jEmdv1a4Wi//BZ/DTVYEcH0XhLM5NYdpDHja3gt57VrZLcNAO2WGA+KpWsDBaHt6eA==", - "dev": true, "requires": { "define-properties": "^1.1.3", "es-abstract": "^1.17.0-next.1", @@ -15950,24 +13676,37 @@ "obuf": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", - "dev": true + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==" }, "ol": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ol/-/ol-5.3.0.tgz", - "integrity": "sha512-UrOJGNI5XdYfE9n43RJdsMq25SjI4nIi5Kf0kxi+q6vEknzeRxM/wgYf8FMs7Ss3URuIbsKmetW9dVMOYB/DkQ==", + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/ol/-/ol-5.3.3.tgz", + "integrity": "sha512-7eU4x8YMduNcED1D5wI+AMWDRe7/1HmGfsbV+kFFROI9RNABU/6n4osj6Q3trZbxxKnK2DSRIjIRGwRHT/Z+Ww==", "requires": { "pbf": "3.1.0", "pixelworks": "1.1.0", "rbush": "2.0.2" + }, + "dependencies": { + "quickselect": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-1.1.1.tgz", + "integrity": "sha512-qN0Gqdw4c4KGPsBOQafj6yj/PA6c/L63f6CaZ/DCF/xF4Esu3jVmKLUDYxghFx8Kb/O7y9tI7x2RjTSXwdK1iQ==" + }, + "rbush": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/rbush/-/rbush-2.0.2.tgz", + "integrity": "sha512-XBOuALcTm+O/H8G90b6pzu6nX6v2zCKiFG4BJho8a+bY6AER6t8uQUZdi5bomQc0AprCWhEGa7ncAbbRap0bRA==", + "requires": { + "quickselect": "^1.0.1" + } + } } }, "on-finished": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "dev": true, "requires": { "ee-first": "1.1.1" } @@ -15975,22 +13714,20 @@ "on-headers": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", - "dev": true + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==" }, "once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, "requires": { "wrappy": "1" } }, "one-by-one": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/one-by-one/-/one-by-one-3.2.6.tgz", - "integrity": "sha1-M+Pelthw+alL3LY/ontRcAvhESs=", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/one-by-one/-/one-by-one-3.2.7.tgz", + "integrity": "sha512-EFE5hyHMGPcesACi1tT6HRmMK23Q74ujX2gjhfGD9qMkz7CxD1AJd5TmBHIEEzuL7h7hKwWh9n9hJ5ClQJnO/Q==", "dev": true, "optional": true, "requires": { @@ -16011,7 +13748,6 @@ "version": "7.0.3", "resolved": "https://registry.npmjs.org/open/-/open-7.0.3.tgz", "integrity": "sha512-sP2ru2v0P290WFfv49Ap8MF6PkzGNnGlAwHweB4WR4mr5d2d0woiCluUeJ218w7/+PmoBy9JmYgD5A4mLcWOFA==", - "dev": true, "requires": { "is-docker": "^2.0.0", "is-wsl": "^2.1.1" @@ -16021,7 +13757,6 @@ "version": "5.5.0", "resolved": "https://registry.npmjs.org/opn/-/opn-5.5.0.tgz", "integrity": "sha512-PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA==", - "dev": true, "requires": { "is-wsl": "^1.1.0" }, @@ -16029,8 +13764,7 @@ "is-wsl": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=" } } }, @@ -16049,12 +13783,6 @@ "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=", "dev": true - }, - "wordwrap": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", - "dev": true } } }, @@ -16094,12 +13822,69 @@ "wrap-ansi": "^2.0.0" } }, + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "magic-string": { + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.16.0.tgz", + "integrity": "sha1-lw67DacZMwEoX7GqZQ85vdgetFo=", + "dev": true, + "requires": { + "vlq": "^0.2.1" + } + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", + "dev": true + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "which-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", + "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", + "dev": true + }, "window-size": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.2.0.tgz", "integrity": "sha1-tDFbtCFKPXBY6+7okuE/ok2YsHU=", "dev": true }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + } + }, "y18n": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", @@ -16236,7 +14021,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/original/-/original-1.0.2.tgz", "integrity": "sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg==", - "dev": true, "requires": { "url-parse": "^1.4.3" } @@ -16244,7 +14028,12 @@ "os-browserify": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", + "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=" + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", "dev": true }, "os-locale": { @@ -16268,6 +14057,16 @@ "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", "dev": true }, + "osenv": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", + "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", + "dev": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, "p-cancelable": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", @@ -16283,8 +14082,7 @@ "p-finally": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", - "dev": true + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=" }, "p-is-promise": { "version": "2.1.0", @@ -16293,28 +14091,25 @@ "dev": true }, "p-limit": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.2.tgz", - "integrity": "sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ==", - "dev": true, + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "requires": { - "p-try": "^2.0.0" + "p-try": "^1.0.0" } }, "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "requires": { - "p-limit": "^2.0.0" + "p-limit": "^1.1.0" } }, "p-map": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", - "dev": true, "requires": { "aggregate-error": "^3.0.0" } @@ -16323,16 +14118,14 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-3.0.1.tgz", "integrity": "sha512-XE6G4+YTTkT2a0UWb2kjZe8xNwf8bIbnqpc/IS/idOBVhyves0mK5OJgeocjx7q5pvX/6m23xuzVPYT1uGM73w==", - "dev": true, "requires": { "retry": "^0.12.0" } }, "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=" }, "package-json": { "version": "6.5.0", @@ -16355,65 +14148,123 @@ } }, "pacote": { - "version": "11.1.4", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-11.1.4.tgz", - "integrity": "sha512-eUGJvSSpWFZKn3z8gig/HgnBmUl6gIWByIIaHzSyEr3tOWX0w8tFEADXtpu8HGv5E0ShCeTP6enRq8iHKCHSvw==", + "version": "9.5.12", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-9.5.12.tgz", + "integrity": "sha512-BUIj/4kKbwWg4RtnBncXPJd15piFSVNpTzY0rysSr3VnMowTYgkGKcaHrbReepAkjTr8lH2CVWRi58Spg2CicQ==", "dev": true, "requires": { - "@npmcli/git": "^2.0.1", - "@npmcli/installed-package-contents": "^1.0.5", - "@npmcli/promise-spawn": "^1.1.0", - "cacache": "^15.0.0", - "chownr": "^1.1.4", - "fs-minipass": "^2.1.0", + "bluebird": "^3.5.3", + "cacache": "^12.0.2", + "chownr": "^1.1.2", + "figgy-pudding": "^3.5.1", + "get-stream": "^4.1.0", + "glob": "^7.1.3", "infer-owner": "^1.0.4", "lru-cache": "^5.1.1", - "minipass": "^3.0.1", - "minipass-fetch": "^1.2.1", - "mkdirp": "^1.0.3", - "npm-package-arg": "^8.0.1", - "npm-packlist": "^2.1.0", - "npm-pick-manifest": "^6.0.0", - "npm-registry-fetch": "^8.0.0", + "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.4.0", + "npm-normalize-package-bin": "^1.0.0", + "npm-package-arg": "^6.1.0", + "npm-packlist": "^1.1.12", + "npm-pick-manifest": "^3.0.0", + "npm-registry-fetch": "^4.0.0", + "osenv": "^0.1.5", "promise-inflight": "^1.0.1", "promise-retry": "^1.1.1", - "read-package-json-fast": "^1.1.3", - "rimraf": "^2.7.1", - "semver": "^7.1.3", - "ssri": "^8.0.0", - "tar": "^6.0.1", - "which": "^2.0.2" + "protoduck": "^5.0.1", + "rimraf": "^2.6.2", + "safe-buffer": "^5.1.2", + "semver": "^5.6.0", + "ssri": "^6.0.1", + "tar": "^4.4.10", + "unique-filename": "^1.1.1", + "which": "^1.3.1" }, "dependencies": { - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "cacache": { + "version": "12.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", + "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", "dev": true, "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "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" } }, - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "fs-minipass": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz", + "integrity": "sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==", "dev": true, "requires": { - "yallist": "^3.0.2" + "minipass": "^2.6.0" } }, - "mkdirp": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.3.tgz", - "integrity": "sha512-6uCP4Qc0sWsgMLy1EOqqS/3rjDHOEnsStVr/4vtAIK2Y5i2kA7lFFejYrpIyiN9w0pYf4ckeCYT9f1r1P9KX5g==", + "hosted-git-info": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", + "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", "dev": true }, + "minipass": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", + "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "minizlib": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz", + "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==", + "dev": true, + "requires": { + "minipass": "^2.9.0" + } + }, + "npm-package-arg": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-6.1.1.tgz", + "integrity": "sha512-qBpssaL3IOZWi5vEKUKW0cO7kzLeT+EQO9W8RsLOZf76KF9E/K9+wH0C7t06HXPpaH8WH5xF1MExLuCwbTqRUg==", + "dev": true, + "requires": { + "hosted-git-info": "^2.7.1", + "osenv": "^0.1.5", + "semver": "^5.6.0", + "validate-npm-package-name": "^3.0.0" + } + }, + "npm-pick-manifest": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-3.0.2.tgz", + "integrity": "sha512-wNprTNg+X5nf+tDi+hbjdHhM4bX+mKqv6XmPh7B5eG+QY9VARfQPfCEH013H5GqfNj6ee8Ij2fg8yk0mzps1Vw==", + "dev": true, + "requires": { + "figgy-pudding": "^3.5.1", + "npm-package-arg": "^6.0.0", + "semver": "^5.4.1" + } + }, "rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", @@ -16424,18 +14275,33 @@ } }, "semver": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", - "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==", + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "ssri": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", + "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", "dev": true, "requires": { - "isexe": "^2.0.0" + "figgy-pudding": "^3.5.1" + } + }, + "tar": { + "version": "4.4.13", + "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.13.tgz", + "integrity": "sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA==", + "dev": true, + "requires": { + "chownr": "^1.1.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.8.6", + "minizlib": "^1.2.1", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.2", + "yallist": "^3.0.3" } }, "yallist": { @@ -16447,16 +14313,14 @@ } }, "pako": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.7.tgz", - "integrity": "sha512-3HNK5tW4x8o5mO8RuHZp3Ydw9icZXx0RANAOMzlMzx7LVXhMJ4mo3MOBpzyd7r/+RUu8BmndP47LXT+vzjtWcQ==", - "dev": true + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" }, "parallel-transform": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", - "dev": true, "requires": { "cyclist": "^1.0.1", "inherits": "^2.0.3", @@ -16467,7 +14331,6 @@ "version": "5.1.5", "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz", "integrity": "sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ==", - "dev": true, "requires": { "asn1.js": "^4.0.0", "browserify-aes": "^1.0.0", @@ -16489,12 +14352,12 @@ } }, "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true, + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", "requires": { - "error-ex": "^1.2.0" + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" } }, "parse-node-version": { @@ -16514,7 +14377,6 @@ "resolved": "https://registry.npmjs.org/parse-url/-/parse-url-1.3.11.tgz", "integrity": "sha1-V8FUKKuKiSsfQ4aWRccR0OFEtVQ=", "dev": true, - "optional": true, "requires": { "is-ssh": "^1.3.0", "protocols": "^1.4.0" @@ -16523,8 +14385,7 @@ "parse5": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz", - "integrity": "sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==", - "dev": true + "integrity": "sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==" }, "parseqs": { "version": "0.0.5", @@ -16547,56 +14408,47 @@ "parseurl": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "dev": true + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" }, "pascalcase": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", - "dev": true + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" }, "path-browserify": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", - "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", - "dev": true + "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==" }, "path-dirname": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", - "dev": true + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=" }, "path-exists": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" }, "path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" }, "path-is-inside": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", - "dev": true + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=" }, "path-key": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=" }, "path-parse": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz", - "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=", - "dev": true + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" }, "path-root": { "version": "0.1.1", @@ -16616,25 +14468,12 @@ "path-to-regexp": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=", - "dev": true + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" }, "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "dev": true, - "requires": { - "pify": "^3.0.0" - }, - "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - } - } + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" }, "pbf": { "version": "3.1.0", @@ -16646,10 +14485,9 @@ } }, "pbkdf2": { - "version": "3.0.17", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz", - "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", - "dev": true, + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.1.tgz", + "integrity": "sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg==", "requires": { "create-hash": "^1.1.2", "create-hmac": "^1.1.4", @@ -16659,69 +14497,62 @@ } }, "percent-value": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/percent-value/-/percent-value-1.0.7.tgz", - "integrity": "sha1-Mp/DBAw6PnY4tIEKA0sGUrBKm0k=", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/percent-value/-/percent-value-1.0.8.tgz", + "integrity": "sha512-y1395VKB5HtEODNMTKsLJIQndfdN4u4D5Cw9wPbkK5F1AjjYIqJO6F3owrfc0ejRb/Xj1fRK3wwGg2ei+4ynXg==", "dev": true, "optional": true }, "performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" }, "picomatch": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", - "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", - "dev": true + "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==" }, "pify": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" }, "pinkie": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "dev": true + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" }, "pinkie-promise": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "dev": true, "requires": { "pinkie": "^2.0.0" } }, "pixel-bg": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/pixel-bg/-/pixel-bg-1.0.8.tgz", - "integrity": "sha1-JCkmScUFZlWPvwMIkPaRnhQ2bFg=", + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/pixel-bg/-/pixel-bg-1.0.9.tgz", + "integrity": "sha512-Tf5lY9SCT6xquaxykKB8y+WLeRZs9Nz/RG8dr7W2a9BMR/JwbGc2tcrv+2+d8iCP6UipM5FY62wuXHhjdqtk4w==", "dev": true, - "optional": true, "requires": { "pixel-class": "^1.0.0" } }, "pixel-class": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/pixel-class/-/pixel-class-1.0.7.tgz", - "integrity": "sha1-kEqFjx1KDMAy1GGh5H57wOx97yM=", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/pixel-class/-/pixel-class-1.0.8.tgz", + "integrity": "sha512-tvT5sqSCn/UGLNl/0g6vtto4QzDF9BTEDR57m3cHhMdSgxQp15FYRm3nel4fwCWwjgp23s0sG+p7PMyOiyLIKg==", "dev": true, - "optional": true, "requires": { "deffy": "^2.2.1" } }, "pixel-white-bg": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/pixel-white-bg/-/pixel-white-bg-1.0.7.tgz", - "integrity": "sha1-DPvFs4XkzY5dozZi+Ja8mVg5lYc=", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/pixel-white-bg/-/pixel-white-bg-1.0.8.tgz", + "integrity": "sha512-CFuUeb/aDv8ocGgjxpmPNsorfVRQyCbPGZ6cuXqT7ylHp26MA3j1s92Oy5zVSj9HAc3Ax9iEX7k5CK5O1SKXtw==", "dev": true, "optional": true, "requires": { @@ -16737,69 +14568,78 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", - "dev": true, "requires": { "find-up": "^3.0.0" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" + } } }, "pkg-up": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz", - "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==", - "dev": true, + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz", + "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=", "requires": { - "find-up": "^3.0.0" + "find-up": "^2.1.0" } }, "plugin-error": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-0.1.2.tgz", - "integrity": "sha1-O5uzM1zPAPQl4HQ34ZJ2ln2kes4=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-1.0.1.tgz", + "integrity": "sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA==", "dev": true, "requires": { - "ansi-cyan": "^0.1.1", - "ansi-red": "^0.1.1", - "arr-diff": "^1.0.1", - "arr-union": "^2.0.1", - "extend-shallow": "^1.1.2" + "ansi-colors": "^1.0.1", + "arr-diff": "^4.0.0", + "arr-union": "^3.1.0", + "extend-shallow": "^3.0.2" }, "dependencies": { - "arr-diff": { + "ansi-colors": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-1.1.0.tgz", - "integrity": "sha1-aHwydYFjWI/vfeezb6vklesaOZo=", - "dev": true, - "requires": { - "arr-flatten": "^1.0.1", - "array-slice": "^0.2.3" - } - }, - "arr-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz", - "integrity": "sha1-IPnqtexw9cfSFbEHexw5Fh0pLH0=", - "dev": true - }, - "array-slice": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz", - "integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=", - "dev": true - }, - "extend-shallow": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-1.1.4.tgz", - "integrity": "sha1-Gda/lN/AnXa6cR85uHLSH/TdkHE=", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz", + "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==", "dev": true, "requires": { - "kind-of": "^1.1.0" + "ansi-wrap": "^0.1.0" } - }, - "kind-of": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-1.1.0.tgz", - "integrity": "sha1-FAo9LUGjbS78+pN3tiwk+ElaXEQ=", - "dev": true } } }, @@ -16872,10 +14712,9 @@ "integrity": "sha1-1Ztk6P7kHElFiqyCtWcYxZV7Kvc=" }, "portfinder": { - "version": "1.0.25", - "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.25.tgz", - "integrity": "sha512-6ElJnHBbxVA1XSLgBp7G1FiCkQdlqGzuF7DswL5tcea+E8UpuvPU7beVAjjRwCioTS9ZluNbu+ZyRvgTsmqEBg==", - "dev": true, + "version": "1.0.26", + "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.26.tgz", + "integrity": "sha512-Xi7mKxJHHMI3rIUrnm/jjUgwhbYMkp/XKEcZX3aG4BrumLpq3nmoQMX+ClYnDZnZ/New7IatC1no5RX0zo1vXQ==", "requires": { "async": "^2.6.2", "debug": "^3.1.1", @@ -16886,69 +14725,36 @@ "version": "3.2.6", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, "requires": { "ms": "^2.1.1" } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true } } }, "posix-character-classes": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", - "dev": true + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=" }, "postcss": { "version": "7.0.27", "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", - "dev": true, "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", "supports-color": "^6.1.0" }, "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" }, "supports-color": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, "requires": { "has-flag": "^3.0.0" } @@ -16959,7 +14765,6 @@ "version": "7.0.2", "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-7.0.2.tgz", "integrity": "sha512-rofZFHUg6ZIrvRwPeFktv06GdbDYLcGqh9EwiMutZg+a0oePCCw1zHOEiji6LCpyRcjTREtPASuUqeAvYlEVvQ==", - "dev": true, "requires": { "postcss": "^7.0.27", "postcss-selector-parser": "^6.0.2", @@ -16970,7 +14775,6 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-4.0.3.tgz", "integrity": "sha512-WyQFAdDZpExQh32j0U0feWisZ0dmOtPl44qYmJKkq9xFWY3p+4qnRzCHeNrkeRhwPHz9bQ3mo0/yVkaply0MNw==", - "dev": true, "requires": { "browserslist": "^4.0.0", "color": "^3.0.0", @@ -16982,8 +14786,7 @@ "postcss-value-parser": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" } } }, @@ -16991,7 +14794,6 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-4.0.1.tgz", "integrity": "sha512-Kisdo1y77KUC0Jmn0OXU/COOJbzM8cImvw1ZFsBgBgMgb1iL23Zs/LXRe3r+EZqM3vGYKdQ2YJVQ5VkJI+zEJQ==", - "dev": true, "requires": { "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" @@ -17000,8 +14802,7 @@ "postcss-value-parser": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" } } }, @@ -17009,7 +14810,6 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-4.0.2.tgz", "integrity": "sha512-RJutN259iuRf3IW7GZyLM5Sw4GLTOH8FmsXBnv8Ab/Tc2k4SR4qbV4DNbyyY4+Sjo362SyDmW2DQ7lBSChrpkg==", - "dev": true, "requires": { "postcss": "^7.0.0" } @@ -17018,7 +14818,6 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-4.0.2.tgz", "integrity": "sha512-ZNQfR1gPNAiXZhgENFfEglF93pciw0WxMkJeVmw8eF+JZBbMD7jp6C67GqJAXVZP2BWbOztKfbsdmMp/k8c6oQ==", - "dev": true, "requires": { "postcss": "^7.0.0" } @@ -17027,7 +14826,6 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz", "integrity": "sha512-B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w==", - "dev": true, "requires": { "postcss": "^7.0.0" } @@ -17036,7 +14834,6 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-4.0.1.tgz", "integrity": "sha512-IYY2bEDD7g1XM1IDEsUT4//iEYCxAmP5oDSFMVU/JVvT7gh+l4fmjciLqGgwjdWpQIdb0Che2VX00QObS5+cTg==", - "dev": true, "requires": { "postcss": "^7.0.0" } @@ -17045,7 +14842,6 @@ "version": "12.0.1", "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-12.0.1.tgz", "integrity": "sha512-3Gti33dmCjyKBgimqGxL3vcV8w9+bsHwO5UrBawp796+jdardbcFl4RP5w/76BwNL7aGzpKstIfF9I+kdE8pTw==", - "dev": true, "requires": { "postcss": "^7.0.1", "postcss-value-parser": "^3.2.3", @@ -17056,8 +14852,7 @@ "postcss-value-parser": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" } } }, @@ -17065,7 +14860,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-2.1.0.tgz", "integrity": "sha512-4pV3JJVPLd5+RueiVVB+gFOAa7GWc25XQcMp86Zexzke69mKf6Nx9LRcQywdz7yZI9n1udOxmLuAwTBypypF8Q==", - "dev": true, "requires": { "cosmiconfig": "^5.0.0", "import-cwd": "^2.0.0" @@ -17075,7 +14869,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-3.0.0.tgz", "integrity": "sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA==", - "dev": true, "requires": { "loader-utils": "^1.1.0", "postcss": "^7.0.0", @@ -17087,7 +14880,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, "requires": { "minimist": "^1.2.0" } @@ -17096,7 +14888,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, "requires": { "big.js": "^5.2.2", "emojis-list": "^3.0.0", @@ -17107,7 +14898,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, "requires": { "ajv": "^6.1.0", "ajv-errors": "^1.0.0", @@ -17120,7 +14910,6 @@ "version": "4.0.11", "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz", "integrity": "sha512-alx/zmoeXvJjp7L4mxEMjh8lxVlDFX1gqWHzaaQewwMZiVhLo42TEClKaeHbRf6J7j82ZOdTJ808RtN0ZOZwvw==", - "dev": true, "requires": { "css-color-names": "0.0.4", "postcss": "^7.0.0", @@ -17131,8 +14920,7 @@ "postcss-value-parser": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" } } }, @@ -17140,7 +14928,6 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-4.0.3.tgz", "integrity": "sha512-U7e3r1SbvYzO0Jr3UT/zKBVgYYyhAz0aitvGIYOYK5CPmkNih+WDSsS5tvPrJ8YMQYlEMvsZIiqmn7HdFUaeEQ==", - "dev": true, "requires": { "browserslist": "^4.0.0", "caniuse-api": "^3.0.0", @@ -17154,7 +14941,6 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", - "dev": true, "requires": { "dot-prop": "^5.2.0", "indexes-of": "^1.0.1", @@ -17167,7 +14953,6 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-4.0.2.tgz", "integrity": "sha512-j85oO6OnRU9zPf04+PZv1LYIYOprWm6IA6zkXkrJXyRveDEuQggG6tvoy8ir8ZwjLxLuGfNkCZEQG7zan+Hbtg==", - "dev": true, "requires": { "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" @@ -17176,8 +14961,7 @@ "postcss-value-parser": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" } } }, @@ -17185,7 +14969,6 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-4.0.2.tgz", "integrity": "sha512-qKPfwlONdcf/AndP1U8SJ/uzIJtowHlMaSioKzebAXSG4iJthlWC9iSWznQcX4f66gIWX44RSA841HTHj3wK+Q==", - "dev": true, "requires": { "cssnano-util-get-arguments": "^4.0.0", "is-color-stop": "^1.0.0", @@ -17196,8 +14979,7 @@ "postcss-value-parser": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" } } }, @@ -17205,7 +14987,6 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-4.0.2.tgz", "integrity": "sha512-G7eWyzEx0xL4/wiBBJxJOz48zAKV2WG3iZOqVhPet/9geefm/Px5uo1fzlHu+DOjT+m0Mmiz3jkQzVHe6wxAWg==", - "dev": true, "requires": { "alphanum-sort": "^1.0.0", "browserslist": "^4.0.0", @@ -17218,8 +14999,7 @@ "postcss-value-parser": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" } } }, @@ -17227,7 +15007,6 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-4.0.2.tgz", "integrity": "sha512-D5S1iViljXBj9kflQo4YutWnJmwm8VvIsU1GeXJGiG9j8CIg9zs4voPMdQDUmIxetUOh60VilsNzCiAFTOqu3g==", - "dev": true, "requires": { "alphanum-sort": "^1.0.0", "has": "^1.0.0", @@ -17239,7 +15018,6 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", - "dev": true, "requires": { "dot-prop": "^5.2.0", "indexes-of": "^1.0.1", @@ -17248,11 +15026,47 @@ } } }, + "postcss-modules-extract-imports": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", + "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", + "requires": { + "postcss": "^7.0.5" + } + }, + "postcss-modules-local-by-default": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.2.tgz", + "integrity": "sha512-jM/V8eqM4oJ/22j0gx4jrp63GSvDH6v86OqyTHHUvk4/k1vceipZsaymiZ5PvocqZOl5SFHiFJqjs3la0wnfIQ==", + "requires": { + "icss-utils": "^4.1.1", + "postcss": "^7.0.16", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.0.0" + } + }, + "postcss-modules-scope": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", + "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", + "requires": { + "postcss": "^7.0.6", + "postcss-selector-parser": "^6.0.0" + } + }, + "postcss-modules-values": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", + "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", + "requires": { + "icss-utils": "^4.0.0", + "postcss": "^7.0.6" + } + }, "postcss-normalize-charset": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz", "integrity": "sha512-gMXCrrlWh6G27U0hF3vNvR3w8I1s2wOBILvA87iNXaPvSNo5uZAMYsZG7XjCUf1eVxuPfyL4TJ7++SGZLc9A3g==", - "dev": true, "requires": { "postcss": "^7.0.0" } @@ -17261,7 +15075,6 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.2.tgz", "integrity": "sha512-3F2jcsaMW7+VtRMAqf/3m4cPFhPD3EFRgNs18u+k3lTJJlVe7d0YPO+bnwqo2xg8YiRpDXJI2u8A0wqJxMsQuQ==", - "dev": true, "requires": { "cssnano-util-get-match": "^4.0.0", "postcss": "^7.0.0", @@ -17271,8 +15084,7 @@ "postcss-value-parser": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" } } }, @@ -17280,7 +15092,6 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-4.0.2.tgz", "integrity": "sha512-Dlf3/9AxpxE+NF1fJxYDeggi5WwV35MXGFnnoccP/9qDtFrTArZ0D0R+iKcg5WsUd8nUYMIl8yXDCtcrT8JrdA==", - "dev": true, "requires": { "cssnano-util-get-arguments": "^4.0.0", "has": "^1.0.0", @@ -17291,8 +15102,7 @@ "postcss-value-parser": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" } } }, @@ -17300,7 +15110,6 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.2.tgz", "integrity": "sha512-qvigdYYMpSuoFs3Is/f5nHdRLJN/ITA7huIoCyqqENJe9PvPmLhNLMu7QTjPdtnVf6OcYYO5SHonx4+fbJE1+Q==", - "dev": true, "requires": { "cssnano-util-get-arguments": "^4.0.0", "cssnano-util-get-match": "^4.0.0", @@ -17311,8 +15120,7 @@ "postcss-value-parser": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" } } }, @@ -17320,7 +15128,6 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-4.0.2.tgz", "integrity": "sha512-RrERod97Dnwqq49WNz8qo66ps0swYZDSb6rM57kN2J+aoyEAJfZ6bMx0sx/F9TIEX0xthPGCmeyiam/jXif0eA==", - "dev": true, "requires": { "has": "^1.0.0", "postcss": "^7.0.0", @@ -17330,8 +15137,7 @@ "postcss-value-parser": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" } } }, @@ -17339,7 +15145,6 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.2.tgz", "integrity": "sha512-acwJY95edP762e++00Ehq9L4sZCEcOPyaHwoaFOhIwWCDfik6YvqsYNxckee65JHLKzuNSSmAdxwD2Cud1Z54A==", - "dev": true, "requires": { "cssnano-util-get-match": "^4.0.0", "postcss": "^7.0.0", @@ -17349,8 +15154,7 @@ "postcss-value-parser": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" } } }, @@ -17358,7 +15162,6 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-4.0.1.tgz", "integrity": "sha512-od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg==", - "dev": true, "requires": { "browserslist": "^4.0.0", "postcss": "^7.0.0", @@ -17368,8 +15171,7 @@ "postcss-value-parser": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" } } }, @@ -17377,7 +15179,6 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-4.0.1.tgz", "integrity": "sha512-p5oVaF4+IHwu7VpMan/SSpmpYxcJMtkGppYf0VbdH5B6hN8YNmVyJLuY9FmLQTzY3fag5ESUUHDqM+heid0UVA==", - "dev": true, "requires": { "is-absolute-url": "^2.0.0", "normalize-url": "^3.0.0", @@ -17388,8 +15189,7 @@ "postcss-value-parser": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" } } }, @@ -17397,7 +15197,6 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.2.tgz", "integrity": "sha512-tO8QIgrsI3p95r8fyqKV+ufKlSHh9hMJqACqbv2XknufqEDhDvbguXGBBqxw9nsQoXWf0qOqppziKJKHMD4GtA==", - "dev": true, "requires": { "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" @@ -17406,8 +15205,7 @@ "postcss-value-parser": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" } } }, @@ -17415,7 +15213,6 @@ "version": "4.1.2", "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-4.1.2.tgz", "integrity": "sha512-2fCObh5UanxvSxeXrtLtlwVThBvHn6MQcu4ksNT2tsaV2Fg76R2CV98W7wNSlX+5/pFwEyaDwKLLoEV7uRybAw==", - "dev": true, "requires": { "cssnano-util-get-arguments": "^4.0.0", "postcss": "^7.0.0", @@ -17425,8 +15222,7 @@ "postcss-value-parser": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" } } }, @@ -17434,7 +15230,6 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-4.0.3.tgz", "integrity": "sha512-gKWmR5aUulSjbzOfD9AlJiHCGH6AEVLaM0AV+aSioxUDd16qXP1PCh8d1/BGVvpdWn8k/HiK7n6TjeoXN1F7DA==", - "dev": true, "requires": { "browserslist": "^4.0.0", "caniuse-api": "^3.0.0", @@ -17446,7 +15241,6 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.2.tgz", "integrity": "sha512-EEVig1Q2QJ4ELpJXMZR8Vt5DQx8/mo+dGWSR7vWXqcob2gQLyQGsionYcGKATXvQzMPn6DSN1vTN7yFximdIAg==", - "dev": true, "requires": { "cssnano-util-get-match": "^4.0.0", "has": "^1.0.0", @@ -17457,8 +15251,7 @@ "postcss-value-parser": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" } } }, @@ -17466,26 +15259,16 @@ "version": "6.0.2", "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz", "integrity": "sha512-36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg==", - "dev": true, "requires": { "cssesc": "^3.0.0", "indexes-of": "^1.0.1", "uniq": "^1.0.1" - }, - "dependencies": { - "cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true - } } }, "postcss-svgo": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-4.0.2.tgz", "integrity": "sha512-C6wyjo3VwFm0QgBy+Fu7gCYOkCmgmClghO+pjcxvrcBKtiKt0uCF+hvbMO1fyv5BMImRK90SMb+dwUnfbGd+jw==", - "dev": true, "requires": { "is-svg": "^3.0.0", "postcss": "^7.0.0", @@ -17496,8 +15279,7 @@ "postcss-value-parser": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" } } }, @@ -17505,7 +15287,6 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz", "integrity": "sha512-+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg==", - "dev": true, "requires": { "alphanum-sort": "^1.0.0", "postcss": "^7.0.0", @@ -17526,18 +15307,17 @@ }, "dependencies": { "mime": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.4.tgz", - "integrity": "sha512-LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA==", + "version": "2.4.6", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.6.tgz", + "integrity": "sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA==", "dev": true } } }, "postcss-value-parser": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.0.3.tgz", - "integrity": "sha512-N7h4pG+Nnu5BEIzyeaaIYWs0LI5XC40OrRh5L60z0QjFsqGWcHcbkBvpe1WYpcIS9yQ8sOi/vIPt1ejQCrMVrg==", - "dev": true + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz", + "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==" }, "pre-commit": { "version": "1.2.2", @@ -17561,6 +15341,16 @@ "which": "^1.2.9" } }, + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, "which": { "version": "1.2.14", "resolved": "https://registry.npmjs.org/which/-/which-1.2.14.tgz", @@ -17569,14 +15359,19 @@ "requires": { "isexe": "^2.0.0" } + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true } } }, "prepend-http": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", - "dev": true + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=" }, "pretty-hrtime": { "version": "1.0.3", @@ -17589,47 +15384,43 @@ "resolved": "https://registry.npmjs.org/prgm-installed/-/prgm-installed-1.0.10.tgz", "integrity": "sha512-Oany6sOxHvgZSuSkWvcEE+ZynHhKF3Sqc/BC/c9X5bBu5p959gbPjgIs/rrEZXQ8IWf+VP+EJDOlrwiuFUSq+Q==", "dev": true, - "optional": true, "requires": { "which": "^1.2.4" } }, "primeng": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/primeng/-/primeng-9.0.3.tgz", - "integrity": "sha512-Cf0VzNHAxaNnJUrsyK3tRmmA2rNMZd3IeZvVsJPsNb3F4NQHpo1CByWROjo9lWlhpxRIExuldtbdaYWP7uO/6w==" + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/primeng/-/primeng-9.1.0.tgz", + "integrity": "sha512-EeW+WA7uT4/7UBJ23Gfb4x8MaTdFpeV9XxAy68K/XIoeTmZ2hNJrdVdfF63y6k7nxwA/mOrkIMshY0eM8nMzoQ==" }, "private": { "version": "0.1.8", "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", - "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", - "dev": true + "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==" }, "process": { "version": "0.11.10", "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", - "dev": true + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" }, "process-nextick-args": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", - "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==" + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" }, "proj4": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/proj4/-/proj4-2.5.0.tgz", - "integrity": "sha512-XZTRT7OPdLzgvtTqL8DG2cEj8lYdovztOwiwpwRSYayOty5Ipf3H68dh/fiL+HKDEyetmQSMhkkMGiJoyziz3w==", + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/proj4/-/proj4-2.6.2.tgz", + "integrity": "sha512-Pn0+HZtXb4JzuN8RR0VM7yyseegiYHbXkF+2FOdGpzRojcZ1BTjWxOh7qfp2vH0EyLu8pvcrhLxidwzgyUy/Gw==", "requires": { "mgrs": "1.0.0", - "wkt-parser": "^1.2.0" + "wkt-parser": "^1.2.4" } }, "promise": { "version": "7.3.1", "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", - "dev": true, "optional": true, "requires": { "asap": "~2.0.3" @@ -17638,13 +15429,7 @@ "promise-inflight": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", - "dev": true - }, - "promise-polyfill": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/promise-polyfill/-/promise-polyfill-8.1.3.tgz", - "integrity": "sha512-MG5r82wBzh7pSKDRa9y+vllNHz3e3d4CNj1PQE4BQYxLme0gKYYBm9YENq+UkEikyZ0XbiGWxYlVw3Rl9O/U8g==" + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=" }, "promise-retry": { "version": "1.1.1", @@ -17665,24 +15450,31 @@ } }, "protocol-buffers-schema": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/protocol-buffers-schema/-/protocol-buffers-schema-3.3.2.tgz", - "integrity": "sha512-Xdayp8sB/mU+sUV4G7ws8xtYMGdQnxbeIfLjyO9TZZRJdztBGhlmbI5x1qcY4TG5hBkIKGnc28i7nXxaugu88w==" + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/protocol-buffers-schema/-/protocol-buffers-schema-3.4.0.tgz", + "integrity": "sha512-G/2kcamPF2S49W5yaMGdIpkG6+5wZF0fzBteLKgEHjbNzqjZQ85aAs1iJGto31EJaSTkNvHs5IXuHSaTLWBAiA==" }, "protocols": { - "version": "1.4.6", - "resolved": "https://registry.npmjs.org/protocols/-/protocols-1.4.6.tgz", - "integrity": "sha1-+LsmPqG1/Xp2BNJri+Ob13Z4v4o=", + "version": "1.4.7", + "resolved": "https://registry.npmjs.org/protocols/-/protocols-1.4.7.tgz", + "integrity": "sha512-Fx65lf9/YDn3hUX08XUc0J8rSux36rEsyiv21ZGUC1mOyeM3lTRpZLcrm8aAolzS4itwVfm7TAPyxC2E5zd6xg==", + "dev": true + }, + "protoduck": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/protoduck/-/protoduck-5.0.1.tgz", + "integrity": "sha512-WxoCeDCoCBY55BMvj4cAEjdVUFGRWed9ZxPlqTKYyw1nDDTQ4pqmnIMAGfJlg7Dx35uB/M+PHJPTmGOvaCaPTg==", "dev": true, - "optional": true + "requires": { + "genfun": "^5.0.0" + } }, "protractor": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/protractor/-/protractor-5.4.1.tgz", - "integrity": "sha512-ORey5ewQMYiXQxcQohsqEiKYOg/r5yJoJbt0tuROmmgajdg/CA3gTOZNIFJncUVMAJIk5YFqBBLUjKVmQO6tfA==", + "version": "5.4.4", + "resolved": "https://registry.npmjs.org/protractor/-/protractor-5.4.4.tgz", + "integrity": "sha512-BaL4vePgu3Vfa/whvTUAlgaCAId4uNSGxIFSCXMgj7LMYENPWLp85h5RBi9pdpX/bWQ8SF6flP7afmi2TC4eHw==", "dev": true, "requires": { - "@types/node": "^6.0.46", "@types/q": "^0.0.32", "@types/selenium-webdriver": "^3.0.0", "blocking-proxy": "^1.0.0", @@ -17691,19 +15483,25 @@ "glob": "^7.0.3", "jasmine": "2.8.0", "jasminewd2": "^2.1.0", - "optimist": "~0.6.0", "q": "1.4.1", "saucelabs": "^1.5.0", "selenium-webdriver": "3.6.0", "source-map-support": "~0.4.0", "webdriver-js-extender": "2.1.0", - "webdriver-manager": "^12.0.6" + "webdriver-manager": "^12.0.6", + "yargs": "^12.0.5" }, "dependencies": { - "@types/node": { - "version": "6.14.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-6.14.2.tgz", - "integrity": "sha512-JWB3xaVfsfnFY8Ofc9rTB/op0fqqTSqy4vBcVk1LuRJvta7KTX+D//fCkiTMeLGhdr2EbFZzQjC97gvmPilk9Q==", + "@types/q": { + "version": "0.0.32", + "resolved": "https://registry.npmjs.org/@types/q/-/q-0.0.32.tgz", + "integrity": "sha1-vShOV8hPEyXacCur/IKlMoGQwMU=", + "dev": true + }, + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", "dev": true }, "ansi-styles": { @@ -17712,6 +15510,15 @@ "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", "dev": true }, + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "dev": true, + "requires": { + "array-uniq": "^1.0.1" + } + }, "chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", @@ -17725,35 +15532,156 @@ "supports-color": "^2.0.0" } }, + "cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "dev": true, + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + }, + "dependencies": { + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, "del": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=", "dev": true, "requires": { - "globby": "^5.0.0", - "is-path-cwd": "^1.0.0", - "is-path-in-cwd": "^1.0.0", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "rimraf": "^2.2.8" + "globby": "^5.0.0", + "is-path-cwd": "^1.0.0", + "is-path-in-cwd": "^1.0.0", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "rimraf": "^2.2.8" + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "dev": true + }, + "globby": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", + "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", + "dev": true, + "requires": { + "array-union": "^1.0.1", + "arrify": "^1.0.0", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "invert-kv": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", + "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", + "dev": true + }, + "is-path-cwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", + "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=", + "dev": true + }, + "is-path-in-cwd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz", + "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==", + "dev": true, + "requires": { + "is-path-inside": "^1.0.0" + } + }, + "is-path-inside": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", + "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", + "dev": true, + "requires": { + "path-is-inside": "^1.0.1" + } + }, + "lcid": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", + "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", + "dev": true, + "requires": { + "invert-kv": "^2.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "os-locale": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", + "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", + "dev": true, + "requires": { + "execa": "^1.0.0", + "lcid": "^2.0.0", + "mem": "^4.0.0" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "requires": { + "p-try": "^2.0.0" } }, - "globby": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", - "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "dev": true, "requires": { - "array-union": "^1.0.1", - "arrify": "^1.0.0", - "glob": "^7.0.3", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" + "p-limit": "^2.0.0" } }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, "pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", @@ -17766,6 +15694,33 @@ "integrity": "sha1-VXBbzZPF82c1MMLCy8DCs63cKG4=", "dev": true }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", + "dev": true + }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, "source-map-support": { "version": "0.4.18", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", @@ -17775,6 +15730,27 @@ "source-map": "^0.5.6" } }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, + "dependencies": { + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", @@ -17782,9 +15758,9 @@ "dev": true }, "webdriver-manager": { - "version": "12.1.0", - "resolved": "https://registry.npmjs.org/webdriver-manager/-/webdriver-manager-12.1.0.tgz", - "integrity": "sha512-oEc5fmkpz6Yh6udhwir5m0eN5mgRPq9P/NU5YWuT3Up5slt6Zz+znhLU7q4+8rwCZz/Qq3Fgpr/4oao7NPCm2A==", + "version": "12.1.7", + "resolved": "https://registry.npmjs.org/webdriver-manager/-/webdriver-manager-12.1.7.tgz", + "integrity": "sha512-XINj6b8CYuUYC93SG3xPkxlyUc3IJbD6Vvo75CVGuG9uzsefDzWQrhz0Lq8vbPxtb4d63CZdYophF8k8Or/YiA==", "dev": true, "requires": { "adm-zip": "^0.4.9", @@ -17799,6 +15775,68 @@ "semver": "^5.3.0", "xml2js": "^0.4.17" } + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + }, + "dependencies": { + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + } + } + }, + "yargs": { + "version": "12.0.5", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz", + "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==", + "dev": true, + "requires": { + "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-parser": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", + "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } } } }, @@ -17837,7 +15875,6 @@ "version": "2.0.6", "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz", "integrity": "sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw==", - "dev": true, "requires": { "forwarded": "~0.1.2", "ipaddr.js": "1.9.1" @@ -17846,8 +15883,7 @@ "prr": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", - "dev": true + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=" }, "pseudomap": { "version": "1.0.2", @@ -17858,14 +15894,12 @@ "psl": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", - "dev": true + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==" }, "public-encrypt": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", - "dev": true, "requires": { "bn.js": "^4.1.0", "browserify-rsa": "^4.0.0", @@ -17873,13 +15907,19 @@ "parse-asn1": "^5.0.0", "randombytes": "^2.0.1", "safe-buffer": "^5.1.2" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" + } } }, "pump": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", - "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", - "dev": true, + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", "requires": { "end-of-stream": "^1.1.0", "once": "^1.3.1" @@ -17889,18 +15929,27 @@ "version": "1.5.1", "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", - "dev": true, "requires": { "duplexify": "^3.6.0", "inherits": "^2.0.3", "pump": "^2.0.0" + }, + "dependencies": { + "pump": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", + "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + } } }, "punycode": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" }, "pupa": { "version": "2.0.1", @@ -17914,8 +15963,7 @@ "q": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", - "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", - "dev": true + "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=" }, "qjobs": { "version": "1.2.0", @@ -17932,7 +15980,6 @@ "version": "4.3.4", "resolved": "https://registry.npmjs.org/query-string/-/query-string-4.3.4.tgz", "integrity": "sha1-u7aTucqRXCMlFbIosaArYJBD2+s=", - "dev": true, "requires": { "object-assign": "^4.1.0", "strict-uri-encode": "^1.0.0" @@ -17946,25 +15993,22 @@ "querystring-es3": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", - "dev": true + "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=" }, "querystringify": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.1.1.tgz", - "integrity": "sha512-w7fLxIRCRT7U8Qu53jQnJyPkYZIaR4n5151KMfcJlO/A9397Wxb1amJvROTK6TOnp7PfoAmg/qXiNHI+08jRfA==", - "dev": true + "integrity": "sha512-w7fLxIRCRT7U8Qu53jQnJyPkYZIaR4n5151KMfcJlO/A9397Wxb1amJvROTK6TOnp7PfoAmg/qXiNHI+08jRfA==" }, "quickselect": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-1.1.1.tgz", - "integrity": "sha512-qN0Gqdw4c4KGPsBOQafj6yj/PA6c/L63f6CaZ/DCF/xF4Esu3jVmKLUDYxghFx8Kb/O7y9tI7x2RjTSXwdK1iQ==" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-2.0.0.tgz", + "integrity": "sha512-RKJ22hX8mHe3Y6wH/N3wCM6BWtjaxIyyUIkpHOvfFnxdI4yD4tBXEBKSbriGujF6jnSVkJrffuo6vxACiSSxIw==" }, "randombytes": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, "requires": { "safe-buffer": "^5.1.0" } @@ -17973,7 +16017,6 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", - "dev": true, "requires": { "randombytes": "^2.0.5", "safe-buffer": "^5.1.0" @@ -17982,14 +16025,12 @@ "range-parser": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "dev": true + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" }, "raw-body": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", - "dev": true, "requires": { "bytes": "3.1.0", "http-errors": "1.7.2", @@ -18000,17 +16041,7 @@ "bytes": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", - "dev": true - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" } } }, @@ -18018,7 +16049,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-4.0.0.tgz", "integrity": "sha512-iINUOYvl1cGEmfoaLjnZXt4bKfT2LJnZZib5N/LLyAphC+Dd11vNP9CNVb38j+SAJpFI1uo8j9frmih53ASy7Q==", - "dev": true, "requires": { "loader-utils": "^1.2.3", "schema-utils": "^2.5.0" @@ -18028,7 +16058,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, "requires": { "minimist": "^1.2.0" } @@ -18037,7 +16066,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, "requires": { "big.js": "^5.2.2", "emojis-list": "^3.0.0", @@ -18047,11 +16075,11 @@ } }, "rbush": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/rbush/-/rbush-2.0.2.tgz", - "integrity": "sha512-XBOuALcTm+O/H8G90b6pzu6nX6v2zCKiFG4BJho8a+bY6AER6t8uQUZdi5bomQc0AprCWhEGa7ncAbbRap0bRA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/rbush/-/rbush-3.0.1.tgz", + "integrity": "sha512-XRaVO0YecOpEuIvbhbpTrZgoiI6xBlz6hnlr6EHhd+0x9ase6EmeN+hdwwUaJvLcsFFQ8iWVF1GAK1yB0BWi0w==", "requires": { - "quickselect": "^1.0.1" + "quickselect": "^2.0.0" } }, "rc": { @@ -18070,7 +16098,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", "integrity": "sha1-5mTvMRYRZsl1HNvo28+GtftY93Q=", - "dev": true, "requires": { "pify": "^2.3.0" }, @@ -18078,8 +16105,7 @@ "pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" } } }, @@ -18096,16 +16122,6 @@ "npm-normalize-package-bin": "^1.0.0" } }, - "read-package-json-fast": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-1.1.3.tgz", - "integrity": "sha512-MmFqiyfCXV2Dmm4jH24DEGhxdkUDFivJQj4oPZQPOKywxR7HWBE6WnMWDAapfFHi3wm1b+mhR+XHlUH0CL8axg==", - "dev": true, - "requires": { - "json-parse-even-better-errors": "^2.0.1", - "npm-normalize-package-bin": "^1.0.1" - } - }, "read-package-tree": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/read-package-tree/-/read-package-tree-5.3.1.tgz", @@ -18179,9 +16195,9 @@ } }, "readable-stream": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -18205,15 +16221,11 @@ } }, "readdirp": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz", - "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=", - "dev": true, + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz", + "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==", "requires": { - "graceful-fs": "^4.1.2", - "minimatch": "^3.0.2", - "readable-stream": "^2.0.2", - "set-immediate-shim": "^1.0.1" + "picomatch": "^2.2.1" } }, "recast": { @@ -18233,6 +16245,12 @@ "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", "dev": true + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true } } }, @@ -18253,6 +16271,17 @@ "requires": { "indent-string": "^2.1.0", "strip-indent": "^1.0.1" + }, + "dependencies": { + "indent-string": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", + "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", + "dev": true, + "requires": { + "repeating": "^2.0.0" + } + } } }, "reflect-metadata": { @@ -18262,16 +16291,14 @@ "dev": true }, "regenerate": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", - "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", - "dev": true + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.1.tgz", + "integrity": "sha512-j2+C8+NtXQgEKWk49MMP5P/u2GhnahTtVkRIHr5R5lVRlbKvmQ+oS+A5aLKWp2ma5VkT8sh6v+v4hbH0YHR66A==" }, "regenerate-unicode-properties": { "version": "8.2.0", "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz", "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==", - "dev": true, "requires": { "regenerate": "^1.4.0" } @@ -18279,14 +16306,12 @@ "regenerator-runtime": { "version": "0.13.5", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz", - "integrity": "sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA==", - "dev": true + "integrity": "sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA==" }, "regenerator-transform": { "version": "0.14.4", "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.4.tgz", "integrity": "sha512-EaJaKPBI9GvKpvUz2mz4fhx7WPgvwRLY9v3hlNHWmAuJHI13T4nwKnNvm5RWJzEdnI5g5UwtOww+S8IdoUC2bw==", - "dev": true, "requires": { "@babel/runtime": "^7.8.4", "private": "^0.1.8" @@ -18296,17 +16321,24 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", - "dev": true, "requires": { "extend-shallow": "^3.0.2", "safe-regex": "^1.1.0" } }, + "regexp.prototype.flags": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz", + "integrity": "sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==", + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1" + } + }, "regexpu-core": { "version": "4.7.0", "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.0.tgz", "integrity": "sha512-TQ4KXRnIn6tz6tjnrXEkD/sshygKH/j5KzK86X8MkeHyZ8qst/LZ89j3X4/8HEIfHANTFIP/AbXakeRhWIl5YQ==", - "dev": true, "requires": { "regenerate": "^1.4.0", "regenerate-unicode-properties": "^8.2.0", @@ -18335,16 +16367,14 @@ } }, "regjsgen": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.1.tgz", - "integrity": "sha512-5qxzGZjDs9w4tzT3TPhCJqWdCc3RLYwy9J2NB0nm5Lz+S273lvWcpjaTGHsT1dc6Hhfq41uSEOw8wBmxrKOuyg==", - "dev": true + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz", + "integrity": "sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==" }, "regjsparser": { "version": "0.6.4", "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.4.tgz", "integrity": "sha512-64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw==", - "dev": true, "requires": { "jsesc": "~0.5.0" }, @@ -18352,8 +16382,7 @@ "jsesc": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=" } } }, @@ -18381,20 +16410,17 @@ "remove-trailing-separator": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", - "dev": true + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" }, "repeat-element": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", - "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=", - "dev": true + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==" }, "repeat-string": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", - "dev": true + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" }, "repeating": { "version": "2.0.1", @@ -18406,28 +16432,185 @@ } }, "replace": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/replace/-/replace-1.0.0.tgz", - "integrity": "sha512-5qUu+E1YMF9AMeVEoXa9VjEEgHk7cRNs3GWAN3Z1mt0ugwUxFuuXkDuoOS3nuvN9gH4KR/8Bd2R/Q944ofGtuA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/replace/-/replace-1.2.0.tgz", + "integrity": "sha512-e3AP5GkRk+N/Qm1MUBaMhEHr4X3sHNI44a8m4ww6/qShJphTsStxSezbYtFNTFGCXZtWrwz4McVvCEwBv+ebAw==", "dev": true, "requires": { - "colors": "1.2.4", + "chalk": "2.4.2", "minimatch": "3.0.4", - "nomnom": "1.8.1" + "yargs": "^15.3.1" }, "dependencies": { - "colors": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.2.4.tgz", - "integrity": "sha512-6Y+iBnWmXL+AWtlOp2Vr6R2w5MUlNJRwR0ShVFaAb1CqWzhPOpQg4L0jxD+xpw/Nc8QJwaq3KM79QUCriY8CWQ==", + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true + }, + "string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" + } + }, + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "yargs": { + "version": "15.3.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.3.1.tgz", + "integrity": "sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA==", + "dev": true, + "requires": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.1" + } + }, + "yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } } } }, "replace-ext": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz", - "integrity": "sha1-KbvZIHinOfC8zitO5B6DeVNSKSQ=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.1.tgz", + "integrity": "sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw==", "dev": true }, "replace-homedir": { @@ -18453,69 +16636,52 @@ } }, "request": { - "version": "2.87.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.87.0.tgz", - "integrity": "sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==", - "dev": true, + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", "requires": { "aws-sign2": "~0.7.0", - "aws4": "^1.6.0", + "aws4": "^1.8.0", "caseless": "~0.12.0", - "combined-stream": "~1.0.5", - "extend": "~3.0.1", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", "forever-agent": "~0.6.1", - "form-data": "~2.3.1", - "har-validator": "~5.0.3", + "form-data": "~2.3.2", + "har-validator": "~5.1.3", "http-signature": "~1.2.0", "is-typedarray": "~1.0.0", "isstream": "~0.1.2", "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.17", - "oauth-sign": "~0.8.2", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", "performance-now": "^2.1.0", - "qs": "~6.5.1", - "safe-buffer": "^5.1.1", - "tough-cookie": "~2.3.3", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", "tunnel-agent": "^0.6.0", - "uuid": "^3.1.0" - }, - "dependencies": { - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - } + "uuid": "^3.3.2" } }, "require-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/require-dir/-/require-dir-1.0.0.tgz", - "integrity": "sha512-PUJcQVTP4n6F8Un1GEEWhqnmBMfukVsL5gqwBxt7RF+nP+9hSOLJ/vSs5iUoXw1UWDgzqg9B/IIb15kfQKWsAQ==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/require-dir/-/require-dir-1.2.0.tgz", + "integrity": "sha512-LY85DTSu+heYgDqq/mK+7zFHWkttVNRXC9NKcKGyuGLdlsfbjEPrIEYdCVrx6hqnJb+xSu3Lzaoo8VnmOhhjNA==", "dev": true }, "require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" }, "require-main-filename": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", - "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", - "dev": true + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==" }, "requires-port": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", - "dev": true + "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=" }, "requizzle": { "version": "0.2.3", @@ -18527,19 +16693,17 @@ } }, "resolve": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.8.1.tgz", - "integrity": "sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==", - "dev": true, + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", + "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", "requires": { - "path-parse": "^1.0.5" + "path-parse": "^1.0.6" } }, "resolve-cwd": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", - "dev": true, "requires": { "resolve-from": "^3.0.0" } @@ -18557,8 +16721,7 @@ "resolve-from": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", - "dev": true + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=" }, "resolve-options": { "version": "1.1.0", @@ -18580,8 +16743,7 @@ "resolve-url": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", - "dev": true + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" }, "responselike": { "version": "1.0.2", @@ -18605,14 +16767,17 @@ "ret": { "version": "0.1.15", "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", - "dev": true + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==" }, "retry": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", - "dev": true + "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=" + }, + "reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==" }, "rfdc": { "version": "1.1.4", @@ -18623,14 +16788,12 @@ "rgb-regex": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/rgb-regex/-/rgb-regex-1.0.1.tgz", - "integrity": "sha1-wODWiC3w4jviVKR16O3UGRX+rrE=", - "dev": true + "integrity": "sha1-wODWiC3w4jviVKR16O3UGRX+rrE=" }, "rgba-regex": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/rgba-regex/-/rgba-regex-1.0.0.tgz", - "integrity": "sha1-QzdOLiyglosO8VI0YLfXMP8i7rM=", - "dev": true + "integrity": "sha1-QzdOLiyglosO8VI0YLfXMP8i7rM=" }, "right-align": { "version": "0.1.3", @@ -18642,19 +16805,17 @@ } }, "rimraf": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", - "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", - "dev": true, + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "requires": { - "glob": "^7.0.5" + "glob": "^7.1.3" } }, "ripemd160": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", - "dev": true, "requires": { "hash-base": "^3.0.0", "inherits": "^2.0.1" @@ -18665,99 +16826,56 @@ "resolved": "https://registry.npmjs.org/rison/-/rison-0.1.1.tgz", "integrity": "sha1-TcwFV7JBr/YOdheOd5ITVxPzMSA=" }, - "robust-orientation": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/robust-orientation/-/robust-orientation-1.1.3.tgz", - "integrity": "sha1-2v9bANO+TmByLw6cAVbvln8cIEk=", - "requires": { - "robust-scale": "^1.0.2", - "robust-subtract": "^1.0.0", - "robust-sum": "^1.0.0", - "two-product": "^1.0.2" - } - }, - "robust-scale": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/robust-scale/-/robust-scale-1.0.2.tgz", - "integrity": "sha1-d1Ey7QlULQKOWLLMecBikLz3jDI=", - "requires": { - "two-product": "^1.0.2", - "two-sum": "^1.0.0" - } - }, - "robust-subtract": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/robust-subtract/-/robust-subtract-1.0.0.tgz", - "integrity": "sha1-4LFk4e2LpOOl3aRaEgODSNvtPpo=" - }, - "robust-sum": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/robust-sum/-/robust-sum-1.0.0.tgz", - "integrity": "sha1-FmRuUlKStNJdgnV6KGlV4Lv6U9k=" + "robust-predicates": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-2.0.4.tgz", + "integrity": "sha512-l4NwboJM74Ilm4VKfbAtFeGq7aEjWL+5kVFcmgFA2MrdnQWx9iE/tUGvxY5HyMI7o/WpSIUFLbC5fbeaHgSCYg==" }, "rollup": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.1.0.tgz", "integrity": "sha512-gfE1455AEazVVTJoeQtcOq/U6GSxwoj4XPSWVsuWmgIxj7sBQNLDOSA82PbdMe+cP8ql8fR1jogPFe8Wg8g4SQ==", - "dev": true, "requires": { "fsevents": "~2.1.2" - }, - "dependencies": { - "fsevents": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", - "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", - "dev": true, - "optional": true - } } }, "rollup-plugin-sourcemaps": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/rollup-plugin-sourcemaps/-/rollup-plugin-sourcemaps-0.5.0.tgz", - "integrity": "sha512-xp2vvRvgnYiXydgf/JFFFgYxrqMaQaOrK/g6yZvgwT9R1TSYjD3HKku1pD7iQNjQHkl5yGpokvJLp7cP/lR+aQ==", + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rollup-plugin-sourcemaps/-/rollup-plugin-sourcemaps-0.6.2.tgz", + "integrity": "sha512-9AwTKg3yRykwzemfLt71ySe0LvrAci+bpsOL1LaTYFk5BX4HF6X7DQfpHa74ANfSja3hyjiQkXCR8goSOnW//Q==", "dev": true, "requires": { - "@rollup/pluginutils": "^3.0.1", - "source-map-resolve": "^0.5.3" + "@rollup/pluginutils": "^3.0.9", + "source-map-resolve": "^0.6.0" }, "dependencies": { - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "dev": true - }, "source-map-resolve": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", - "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", + "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", "dev": true, "requires": { "atob": "^2.1.2", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" + "decode-uri-component": "^0.2.0" } } } }, "run-async": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.0.tgz", - "integrity": "sha512-xJTbh/d7Lm7SBhc1tNvTpeCHaEzoyxPrqNlvSdMfBTYwaY++UJFyXUOxAtsRUXjlqOfj8luNaR9vjCh4KeV+pg==", - "dev": true, - "requires": { - "is-promise": "^2.1.0" - } + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true + }, + "run-parallel": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz", + "integrity": "sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==" }, "run-queue": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", - "dev": true, "requires": { "aproba": "^1.1.1" } @@ -18768,9 +16886,9 @@ "integrity": "sha1-P4Yt+pGrdmsUiF700BEkv9oHT7Q=" }, "rxjs": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", - "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", + "version": "6.5.5", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.5.tgz", + "integrity": "sha512-WfQI+1gohdf0Dai/Bbmk5L5ItH5tYqm3ki2c5GdWhKjalzjg93N3avFjVStyZZz+A2Em+ZxKH5bNghw9UeylGQ==", "requires": { "tslib": "^1.9.0" } @@ -18784,7 +16902,6 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", - "dev": true, "requires": { "ret": "~0.1.10" } @@ -18795,9 +16912,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "same-time": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/same-time/-/same-time-2.3.3.tgz", - "integrity": "sha1-jLRUyFxQ5eMBMthgXRZDBfymya8=", + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/same-time/-/same-time-2.3.4.tgz", + "integrity": "sha512-CW6MMOuGUCSrOyMpcnOiOtYPmIIQdUbrHfaYpwyxj/RTUCfyWAhny/ZHADCkXi+gEXkHEroYSjphNj0RsJ/Iig==", "dev": true, "optional": true, "requires": { @@ -18820,7 +16937,6 @@ "version": "1.26.3", "resolved": "https://registry.npmjs.org/sass/-/sass-1.26.3.tgz", "integrity": "sha512-5NMHI1+YFYw4sN3yfKjpLuV9B5l7MqQ6FlkTcC4FT+oHbBRUZoSjHrrt/mE0nFXJyY2kQtU9ou9HxvFVjLFuuw==", - "dev": true, "requires": { "chokidar": ">=2.0.0 <4.0.0" } @@ -18829,7 +16945,6 @@ "version": "8.0.2", "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-8.0.2.tgz", "integrity": "sha512-7o4dbSK8/Ol2KflEmSco4jTjQoV988bM82P9CZdmo9hR3RLnvNc0ufMNdMrB0caq38JQ/FgF4/7RcbcfKzxoFQ==", - "dev": true, "requires": { "clone-deep": "^4.0.1", "loader-utils": "^1.2.3", @@ -18842,7 +16957,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, "requires": { "minimist": "^1.2.0" } @@ -18851,24 +16965,16 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, "requires": { "big.js": "^5.2.2", "emojis-list": "^3.0.0", "json5": "^1.0.1" } }, - "neo-async": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", - "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==", - "dev": true - }, "semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" } } }, @@ -18884,17 +16990,29 @@ "sax": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" }, "schema-utils": { - "version": "2.6.5", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.6.5.tgz", - "integrity": "sha512-5KXuwKziQrTVHh8j/Uxz+QUbxkaLW9X/86NBlx/gnKgtsZA2GIVMUn17qWhRFwF8jdYb3Dig5hRO/W5mZqy6SQ==", - "dev": true, + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz", + "integrity": "sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==", "requires": { - "ajv": "^6.12.0", + "@types/json-schema": "^7.0.4", + "ajv": "^6.12.2", "ajv-keywords": "^3.4.1" + }, + "dependencies": { + "ajv": { + "version": "6.12.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.2.tgz", + "integrity": "sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ==", + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + } } }, "screenshoter-report-analyzer": { @@ -18911,8 +17029,7 @@ "select-hose": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=", - "dev": true + "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=" }, "selenium-webdriver": { "version": "3.6.0", @@ -18926,6 +17043,15 @@ "xml2js": "^0.4.17" }, "dependencies": { + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, "tmp": { "version": "0.0.30", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.30.tgz", @@ -18941,16 +17067,14 @@ "version": "1.10.7", "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.7.tgz", "integrity": "sha512-8M3wBCzeWIJnQfl43IKwOmC4H/RAp50S8DF60znzjW5GVqTcSe2vWclt7hmYVPkKPlHWOu5EaWOMZ2Y6W8ZXTA==", - "dev": true, "requires": { "node-forge": "0.9.0" } }, "semver": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz", - "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==", - "dev": true + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", + "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==" }, "semver-diff": { "version": "3.1.1", @@ -18976,6 +17100,14 @@ "dev": true, "requires": { "semver": "^5.3.0" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + } } }, "semver-greatest-satisfied-range": { @@ -18994,13 +17126,20 @@ "dev": true, "requires": { "semver": "^5.0.0" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + } } }, "send": { "version": "0.17.1", "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", - "dev": true, "requires": { "debug": "2.6.9", "depd": "~1.1.2", @@ -19017,25 +17156,40 @@ "statuses": "~1.5.0" }, "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + }, + "dependencies": { + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } + } + }, "ms": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" } } }, "serialize-javascript": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-2.1.2.tgz", - "integrity": "sha512-rs9OggEUF0V4jUSecXazOYsLfu7OGK2qIn3c7IPBiffz32XniEp/TX9Xmc9LQfK2nQ2QKHvZ2oygKUGU0lG4jQ==", - "dev": true + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-3.1.0.tgz", + "integrity": "sha512-JIJT1DGiWmIKhzRsG91aS6Ze4sFUrYbltlkg2onR5OrnNM02Kl/hnY/T4FN2omvyeBbQmMJv+K4cPOpGzOTFBg==", + "requires": { + "randombytes": "^2.1.0" + } }, "serve-index": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", - "dev": true, "requires": { "accepts": "~1.3.4", "batch": "0.6.1", @@ -19046,11 +17200,18 @@ "parseurl": "~1.3.2" }, "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, "http-errors": { "version": "1.6.3", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", - "dev": true, "requires": { "depd": "~1.1.2", "inherits": "2.0.3", @@ -19058,11 +17219,20 @@ "statuses": ">= 1.4.0 < 2" } }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, "setprototypeof": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" } } }, @@ -19070,7 +17240,6 @@ "version": "1.14.1", "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", - "dev": true, "requires": { "encodeurl": "~1.0.2", "escape-html": "~1.0.3", @@ -19081,8 +17250,7 @@ "set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" }, "set-immediate-shim": { "version": "1.0.1", @@ -19094,7 +17262,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", - "dev": true, "requires": { "extend-shallow": "^2.0.1", "is-extendable": "^0.1.1", @@ -19106,7 +17273,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, "requires": { "is-extendable": "^0.1.0" } @@ -19116,20 +17282,17 @@ "setimmediate": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", - "dev": true + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" }, "setprototypeof": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", - "dev": true + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" }, "sha.js": { "version": "2.4.11", "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", - "dev": true, "requires": { "inherits": "^2.0.1", "safe-buffer": "^5.0.1" @@ -19139,7 +17302,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", - "dev": true, "requires": { "kind-of": "^6.0.2" } @@ -19148,7 +17310,6 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "dev": true, "requires": { "shebang-regex": "^1.0.0" } @@ -19156,20 +17317,17 @@ "shebang-regex": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "dev": true + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=" }, "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", - "dev": true + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" }, "simple-swizzle": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", "integrity": "sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo=", - "dev": true, "requires": { "is-arrayish": "^0.3.1" }, @@ -19177,8 +17335,7 @@ "is-arrayish": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", - "dev": true + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" } } }, @@ -19188,17 +17345,15 @@ "integrity": "sha512-hNj1/oZ7ygsfmPZ7ZfN5MUBRoGg1gtpnImuJBgLO0ljQ67DtJuiQaiYdS4lUA6s0KCwnPhGivtC/WRwIZLkHyg==" }, "slash": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", - "dev": true + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==" }, "sliced": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/sliced/-/sliced-1.0.1.tgz", "integrity": "sha1-CzpmK10Ewxd7GSa+qCsD+Dei70E=", - "dev": true, - "optional": true + "dev": true }, "smart-buffer": { "version": "4.1.0", @@ -19210,7 +17365,6 @@ "version": "0.8.2", "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", - "dev": true, "requires": { "base": "^0.11.1", "debug": "^2.2.0", @@ -19222,11 +17376,18 @@ "use": "^3.1.0" }, "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, "define-property": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, "requires": { "is-descriptor": "^0.1.0" } @@ -19235,10 +17396,19 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, "requires": { "is-extendable": "^0.1.0" } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" } } }, @@ -19246,7 +17416,6 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", - "dev": true, "requires": { "define-property": "^1.0.0", "isobject": "^3.0.0", @@ -19257,7 +17426,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, "requires": { "is-descriptor": "^1.0.0" } @@ -19266,7 +17434,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, "requires": { "kind-of": "^6.0.0" } @@ -19275,7 +17442,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, "requires": { "kind-of": "^6.0.0" } @@ -19284,7 +17450,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, "requires": { "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", @@ -19297,7 +17462,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", - "dev": true, "requires": { "kind-of": "^3.2.0" }, @@ -19306,7 +17470,6 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, "requires": { "is-buffer": "^1.1.5" } @@ -19335,6 +17498,12 @@ "requires": { "ms": "2.0.0" } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true } } }, @@ -19366,6 +17535,12 @@ "to-array": "0.1.4" }, "dependencies": { + "component-emitter": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", + "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", + "dev": true + }, "debug": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", @@ -19374,6 +17549,12 @@ "requires": { "ms": "2.0.0" } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true } } }, @@ -19388,6 +17569,12 @@ "isarray": "2.0.1" }, "dependencies": { + "component-emitter": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", + "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", + "dev": true + }, "debug": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", @@ -19402,24 +17589,29 @@ "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=", "dev": true + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true } } }, "sockjs": { - "version": "0.3.19", - "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.19.tgz", - "integrity": "sha512-V48klKZl8T6MzatbLlzzRNhMepEys9Y4oGFpypBFFn1gLI/QQ9HtLLyWJNbPlwGLelOVOEijUbTTJeLLI59jLw==", - "dev": true, + "version": "0.3.20", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.20.tgz", + "integrity": "sha512-SpmVOVpdq0DJc0qArhF3E5xsxvaiqGNb73XfgBpK1y3UD5gs8DSo8aCTsuT5pX8rssdc2NDIzANwP9eCAiSdTA==", "requires": { "faye-websocket": "^0.10.0", - "uuid": "^3.0.1" + "uuid": "^3.4.0", + "websocket-driver": "0.6.5" } }, "sockjs-client": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.4.0.tgz", "integrity": "sha512-5zaLyO8/nri5cua0VtOrFXBPK1jbL4+1cebT/mmKA1E1ZXOvJrII75bPu0l0k843G/+iAbhEqzyKr0w/eCCj7g==", - "dev": true, "requires": { "debug": "^3.2.5", "eventsource": "^1.0.7", @@ -19433,7 +17625,6 @@ "version": "3.2.6", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, "requires": { "ms": "^2.1.1" } @@ -19442,16 +17633,9 @@ "version": "0.11.3", "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.3.tgz", "integrity": "sha512-D2y4bovYpzziGgbHYtGCMjlJM36vAl/y+xUyn1C+FVx8szd1E+86KwVw6XvYSzOP8iMpm1X0I4xJD+QtUb36OA==", - "dev": true, "requires": { "websocket-driver": ">=0.5.1" } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true } } }, @@ -19466,30 +17650,23 @@ } }, "socks-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-5.0.0.tgz", - "integrity": "sha512-lEpa1zsWCChxiynk+lCycKuC502RxDWLKJZoIhnxrWNjLSDGYRFflHA1/228VkRcnv9TIb8w98derGbpKxJRgA==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-4.0.2.tgz", + "integrity": "sha512-NT6syHhI9LmuEMSK6Kd2V7gNv5KFZoLE7V5udWmn0de+3Mkj3UMA/AJPLyeNUVmElCurSHtUdM3ETpR3z770Wg==", "dev": true, "requires": { - "agent-base": "6", - "debug": "4", - "socks": "^2.3.3" + "agent-base": "~4.2.1", + "socks": "~2.3.2" }, "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "agent-base": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz", + "integrity": "sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==", "dev": true, "requires": { - "ms": "^2.1.1" + "es6-promisify": "^5.0.0" } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true } } }, @@ -19497,7 +17674,6 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz", "integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=", - "dev": true, "requires": { "is-plain-obj": "^1.0.0" } @@ -19505,20 +17681,17 @@ "source-list-map": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", - "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", - "dev": true + "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==" }, "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==" }, "source-map-loader": { "version": "0.2.4", "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-0.2.4.tgz", "integrity": "sha512-OU6UJUty+i2JDpTItnizPrlpOIBLmQbWMuBg9q5bVtnHACqw1tn9nNwqJLbv0/00JjnJb/Ee5g5WS5vrRv7zIQ==", - "dev": true, "requires": { "async": "^2.5.0", "loader-utils": "^1.1.0" @@ -19528,7 +17701,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, "requires": { "minimist": "^1.2.0" } @@ -19537,7 +17709,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, "requires": { "big.js": "^5.2.2", "emojis-list": "^3.0.0", @@ -19547,12 +17718,11 @@ } }, "source-map-resolve": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", - "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", - "dev": true, + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", + "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", "requires": { - "atob": "^2.1.1", + "atob": "^2.1.2", "decode-uri-component": "^0.2.0", "resolve-url": "^0.2.1", "source-map-url": "^0.4.0", @@ -19560,10 +17730,9 @@ } }, "source-map-support": { - "version": "0.5.13", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", - "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", - "dev": true, + "version": "0.5.19", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", + "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", "requires": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" @@ -19572,22 +17741,19 @@ "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" } } }, "source-map-url": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", - "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", - "dev": true + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" }, "sourcemap-codec": { "version": "1.4.8", "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", - "dev": true + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==" }, "sparkles": { "version": "1.0.1", @@ -19606,9 +17772,9 @@ } }, "spdx-correct": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.0.tgz", - "integrity": "sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", "dev": true, "requires": { "spdx-expression-parse": "^3.0.0", @@ -19616,15 +17782,15 @@ } }, "spdx-exceptions": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz", - "integrity": "sha512-4K1NsmrlCU1JJgUrtgEeTVyfx8VaYea9J9LvARxhbHtVtohPs/gFGG5yy49beySjlIMhhXZ4QqujIZEfS4l6Cg==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", "dev": true }, "spdx-expression-parse": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", - "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, "requires": { "spdx-exceptions": "^2.1.0", @@ -19632,46 +17798,27 @@ } }, "spdx-license-ids": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz", - "integrity": "sha512-2+EPwgbnmOIl8HjGBXXMd9NAu02vLjOO1nWw4kmeRDFyHn+M/ETfHxQUK0oXg8ctgVnl9t3rosNVsZ1jG61nDA==", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", + "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", "dev": true }, "spdy": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.1.tgz", - "integrity": "sha512-HeZS3PBdMA+sZSu0qwpCxl3DeALD5ASx8pAX0jZdKXSpPWbQ6SYGnlg3BBmYLx5LtiZrmkAZfErCm2oECBcioA==", - "dev": true, + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", + "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", "requires": { "debug": "^4.1.0", "handle-thing": "^2.0.0", "http-deceiver": "^1.2.7", "select-hose": "^2.0.0", "spdy-transport": "^3.0.0" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } } }, "spdy-transport": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", - "dev": true, "requires": { "debug": "^4.1.0", "detect-node": "^2.0.4", @@ -19681,26 +17828,10 @@ "wbuf": "^1.7.3" }, "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, "readable-stream": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, "requires": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -19713,7 +17844,6 @@ "version": "1.3.1", "resolved": "https://registry.npmjs.org/speed-measure-webpack-plugin/-/speed-measure-webpack-plugin-1.3.1.tgz", "integrity": "sha512-qVIkJvbtS9j/UeZumbdfz0vg+QfG/zxonAjzefZrqzkr7xOncLVXkeGbTpzd1gjCBM4PmVNkWlkeTVhgskAGSQ==", - "dev": true, "requires": { "chalk": "^2.0.1" } @@ -19722,7 +17852,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", - "dev": true, "requires": { "extend-shallow": "^3.0.0" } @@ -19730,14 +17859,12 @@ "sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" }, "sshpk": { - "version": "1.14.2", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.2.tgz", - "integrity": "sha1-xvxhZIo9nE52T9P8306hBeSSupg=", - "dev": true, + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", "requires": { "asn1": "~0.2.3", "assert-plus": "^1.0.0", @@ -19754,7 +17881,6 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.0.tgz", "integrity": "sha512-aq/pz989nxVYwn16Tsbj1TqFpD5LLrQxHf5zaHuieFV+R0Bbr4y8qUsOA45hXT/N4/9UNXTarBjnjVmjSOVaAA==", - "dev": true, "requires": { "minipass": "^3.1.1" } @@ -19762,8 +17888,7 @@ "stable": { "version": "0.1.8", "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", - "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", - "dev": true + "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==" }, "stack-trace": { "version": "0.0.10", @@ -19775,7 +17900,6 @@ "version": "0.1.2", "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", - "dev": true, "requires": { "define-property": "^0.2.5", "object-copy": "^0.1.0" @@ -19785,7 +17909,6 @@ "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, "requires": { "is-descriptor": "^0.1.0" } @@ -19795,14 +17918,12 @@ "statuses": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", - "dev": true + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" }, "stream-browserify": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", - "dev": true, "requires": { "inherits": "~2.0.1", "readable-stream": "^2.0.2" @@ -19812,7 +17933,6 @@ "version": "1.2.3", "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", - "dev": true, "requires": { "end-of-stream": "^1.1.0", "stream-shift": "^1.0.0" @@ -19828,7 +17948,6 @@ "version": "2.8.3", "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", - "dev": true, "requires": { "builtin-status-codes": "^3.0.0", "inherits": "^2.0.1", @@ -19838,10 +17957,9 @@ } }, "stream-shift": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz", - "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=", - "dev": true + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", + "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==" }, "streamroller": { "version": "1.0.6", @@ -19865,19 +17983,23 @@ "ms": "^2.1.1" } }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "fs-extra": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", + "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } } } }, "strict-uri-encode": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", - "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=", - "dev": true + "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=" }, "string-length": { "version": "1.0.1", @@ -19889,34 +18011,46 @@ } }, "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "requires": { + "ansi-regex": "^4.1.0" + } + } } }, - "string.prototype.trimleft": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.1.tgz", - "integrity": "sha512-iu2AGd3PuP5Rp7x2kEZCrB2Nf41ehzh+goo8TV7z8/XDBbsvc6HQIlUl9RjkZ4oyrW1XM5UwlGl1oVEaDjg6Ag==", - "dev": true, + "string.prototype.trimend": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz", + "integrity": "sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==", "requires": { "define-properties": "^1.1.3", - "function-bind": "^1.1.1" + "es-abstract": "^1.17.5" } }, - "string.prototype.trimright": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.1.tgz", - "integrity": "sha512-qFvWL3/+QIgZXVmJBfpHmxLB7xsUXz6HsUmP8+5dRaC3Q7oKUv9Vo6aMCRZC1smrtyECFsIT30PqBJ1gTjAs+g==", - "dev": true, + "string.prototype.trimstart": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz", + "integrity": "sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==", "requires": { "define-properties": "^1.1.3", - "function-bind": "^1.1.1" + "es-abstract": "^1.17.5" } }, "string_decoder": { @@ -19931,7 +18065,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, "requires": { "ansi-regex": "^2.0.0" } @@ -19962,24 +18095,12 @@ "requires": { "first-chunk-stream": "^2.0.0", "strip-bom-buf": "^1.0.0" - }, - "dependencies": { - "first-chunk-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-2.0.0.tgz", - "integrity": "sha1-G97NuOCDwGZLkZRVgVd6Q6nzHXA=", - "dev": true, - "requires": { - "readable-stream": "^2.0.2" - } - } } }, "strip-eof": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", - "dev": true + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=" }, "strip-indent": { "version": "1.0.1", @@ -20000,7 +18121,6 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-1.1.3.tgz", "integrity": "sha512-rlkH7X/22yuwFYK357fMN/BxYOorfnfq0eD7+vqlemSK4wEcejFF1dg4zxP0euBW8NrYx2WZzZ8PPFevr7D+Kw==", - "dev": true, "requires": { "loader-utils": "^1.2.3", "schema-utils": "^2.6.4" @@ -20010,7 +18130,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, "requires": { "minimist": "^1.2.0" } @@ -20019,7 +18138,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, "requires": { "big.js": "^5.2.2", "emojis-list": "^3.0.0", @@ -20032,7 +18150,6 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-4.0.3.tgz", "integrity": "sha512-7GlLk9JwlElY4Y6a/rmbH2MhVlTyVmiJd1PfTCqFaIBEGMYNsrO/v3SeGTdhBThLg4Z+NbOk/qFMwCa+J+3p/g==", - "dev": true, "requires": { "browserslist": "^4.0.0", "postcss": "^7.0.0", @@ -20043,7 +18160,6 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", - "dev": true, "requires": { "dot-prop": "^5.2.0", "indexes-of": "^1.0.1", @@ -20056,7 +18172,6 @@ "version": "0.54.7", "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.54.7.tgz", "integrity": "sha512-Yw3WMTzVwevT6ZTrLCYNHAFmanMxdylelL3hkWNgPMeTCpMwpV3nXjpOHuBXtFv7aiO2xRuQS6OoAdgkNcSNug==", - "dev": true, "requires": { "css-parse": "~2.0.0", "debug": "~3.1.0", @@ -20072,36 +18187,19 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, "requires": { "ms": "2.0.0" } }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, "semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" } } }, @@ -20109,7 +18207,6 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-3.0.2.tgz", "integrity": "sha512-+VomPdZ6a0razP+zinir61yZgpw2NfljeSsdUF5kJuEzlo3khXhY19Fn6l8QQz1GRJGtMCo8nG5C04ePyV7SUA==", - "dev": true, "requires": { "loader-utils": "^1.0.2", "lodash.clonedeep": "^4.5.0", @@ -20120,7 +18217,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, "requires": { "minimist": "^1.2.0" } @@ -20129,7 +18225,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, "requires": { "big.js": "^5.2.2", "emojis-list": "^3.0.0", @@ -20156,20 +18251,19 @@ }, "dependencies": { "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } } } }, "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", - "dev": true, + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "requires": { "has-flag": "^3.0.0" } @@ -20188,7 +18282,6 @@ "version": "1.3.2", "resolved": "https://registry.npmjs.org/svgo/-/svgo-1.3.2.tgz", "integrity": "sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw==", - "dev": true, "requires": { "chalk": "^2.4.1", "coa": "^2.0.2", @@ -20220,16 +18313,14 @@ "tapable": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", - "dev": true + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==" }, "tar": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.0.1.tgz", - "integrity": "sha512-bKhKrrz2FJJj5s7wynxy/fyxpE0CmCjmOQ1KV4KkgXFWOgoIT/NbTMnB1n+LFNrNk0SSBVGGxcK5AGsyC+pW5Q==", - "dev": true, + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.0.2.tgz", + "integrity": "sha512-Glo3jkRtPcvpDlAs/0+hozav78yoXKFr+c4wgw62NNMO3oo4AaJdCo21Uu7lcwr55h39W2XD1LMERc64wtbItg==", "requires": { - "chownr": "^1.1.3", + "chownr": "^2.0.0", "fs-minipass": "^2.0.0", "minipass": "^3.0.0", "minizlib": "^2.1.0", @@ -20237,17 +18328,15 @@ "yallist": "^4.0.0" }, "dependencies": { - "mkdirp": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.3.tgz", - "integrity": "sha512-6uCP4Qc0sWsgMLy1EOqqS/3rjDHOEnsStVr/4vtAIK2Y5i2kA7lFFejYrpIyiN9w0pYf4ckeCYT9f1r1P9KX5g==", - "dev": true + "chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==" }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" } } }, @@ -20258,9 +18347,9 @@ "dev": true }, "terminal-char-width": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/terminal-char-width/-/terminal-char-width-1.0.8.tgz", - "integrity": "sha512-d8B7Kf6QYWIKgGcvFthbNy/Qm/yy9K7DQId6BUq0ujQge6H2IcKES6uKEbS9swrhEH6Mvr4n7dtcuhl8bAwaSA==", + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/terminal-char-width/-/terminal-char-width-1.0.9.tgz", + "integrity": "sha512-NWQIUnkUuET5GptI8BubeCPS9W/CpGx0V2I0YcbVHzYjjGBW6c05ipmt9f3s2VJ8m1se31h8OpqcXxNdft6XCQ==", "dev": true, "optional": true, "requires": { @@ -20277,27 +18366,19 @@ } }, "terser": { - "version": "4.6.7", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.7.tgz", - "integrity": "sha512-fmr7M1f7DBly5cX2+rFDvmGBAaaZyPrHYK4mMdHEDAdNTqXSZgSOfqsfGq2HqPGT/1V0foZZuCZFx8CHKgAk3g==", - "dev": true, + "version": "4.6.10", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.10.tgz", + "integrity": "sha512-qbF/3UOo11Hggsbsqm2hPa6+L4w7bkr+09FNseEe8xrcVD3APGLFqE+Oz1ZKAxjYnFsj80rLOfgAtJ0LNJjtTA==", "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", "source-map-support": "~0.5.12" }, "dependencies": { - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" } } }, @@ -20305,7 +18386,6 @@ "version": "2.3.5", "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-2.3.5.tgz", "integrity": "sha512-WlWksUoq+E4+JlJ+h+U+QUzXpcsMSSNXkDy9lBVkSqDn1w23Gg29L/ary9GeJVYCGiNJJX7LnVc4bwL1N3/g1w==", - "dev": true, "requires": { "cacache": "^13.0.1", "find-cache-dir": "^3.2.0", @@ -20322,7 +18402,6 @@ "version": "13.0.1", "resolved": "https://registry.npmjs.org/cacache/-/cacache-13.0.1.tgz", "integrity": "sha512-5ZvAxd05HDDU+y9BVvcqYu2LLXmPnQ0hW62h32g4xBTgL/MppR4/04NHfj/ycM2y6lmTnbw6HVi+1eN0Psba6w==", - "dev": true, "requires": { "chownr": "^1.1.2", "figgy-pudding": "^3.5.1", @@ -20344,65 +18423,45 @@ "unique-filename": "^1.1.1" } }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "p-try": "^2.0.0" } }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", - "dev": true - }, - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "requires": { - "yallist": "^3.0.2" - } + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" }, "rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, "requires": { "glob": "^7.1.3" } }, + "serialize-javascript": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-2.1.2.tgz", + "integrity": "sha512-rs9OggEUF0V4jUSecXazOYsLfu7OGK2qIn3c7IPBiffz32XniEp/TX9Xmc9LQfK2nQ2QKHvZ2oygKUGU0lG4jQ==" + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" }, "ssri": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/ssri/-/ssri-7.1.0.tgz", "integrity": "sha512-77/WrDZUWocK0mvA5NTRQyveUf+wsrIc6vyrxpS8tVvYBcX215QbafrJR3KtkpskIzoFLqqNuuYQvxaMjXJ/0g==", - "dev": true, "requires": { - "figgy-pudding": "^3.5.1", - "minipass": "^3.1.1" - } - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true + "figgy-pudding": "^3.5.1", + "minipass": "^3.1.1" + } } } }, @@ -20425,19 +18484,18 @@ "dev": true }, "through2": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", - "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", - "dev": true, + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", "requires": { - "readable-stream": "^2.1.5", + "readable-stream": "~2.3.6", "xtend": "~4.0.1" } }, "through2-filter": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/through2-filter/-/through2-filter-2.0.0.tgz", - "integrity": "sha1-YLxVoNrLdghdsfna6Zq0P4PWIuw=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/through2-filter/-/through2-filter-3.0.0.tgz", + "integrity": "sha512-jaRjI2WxN3W1V8/FMZ9HKIBXixtiqs3SQSX4/YGIiP3gL6djW48VoZq9tDqeCWs3MT8YY5wb/zli8VW8snY1CA==", "dev": true, "requires": { "through2": "~2.0.0", @@ -20445,16 +18503,15 @@ } }, "thunks": { - "version": "4.9.2", - "resolved": "https://registry.npmjs.org/thunks/-/thunks-4.9.2.tgz", - "integrity": "sha1-qsLTU4ElEhYKRhHjAI16luN1b44=", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/thunks/-/thunks-4.9.6.tgz", + "integrity": "sha512-ulXG17ZokTO8j0rTx/23YHsBuz6KAK1xdBPLH4zB1FRDUkttCQeli3DxGhhYtrrsRwzacSG+ZIebjSgLseluMw==", "dev": true }, "thunky": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", - "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", - "dev": true + "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==" }, "time-stamp": { "version": "1.1.0", @@ -20466,7 +18523,6 @@ "version": "2.0.11", "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.11.tgz", "integrity": "sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==", - "dev": true, "requires": { "setimmediate": "^1.0.4" } @@ -20474,8 +18530,7 @@ "timsort": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/timsort/-/timsort-0.3.0.tgz", - "integrity": "sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=", - "dev": true + "integrity": "sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=" }, "tiny-emitter": { "version": "2.0.2", @@ -20483,16 +18538,15 @@ "integrity": "sha512-2NM0auVBGft5tee/OxP4PI3d8WItkDM+fPnaRAVo6xTDI2knbz9eC5ArWGqtGlYqiH3RU5yMpdyTTO7MguC4ow==" }, "tinyqueue": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/tinyqueue/-/tinyqueue-1.2.3.tgz", - "integrity": "sha512-Qz9RgWuO9l8lT+Y9xvbzhPT2efIUIFd69N7eF7tJ9lnQl0iLj1M7peK7IoUGZL9DJHw9XftqLreccfxcQgYLxA==" + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/tinyqueue/-/tinyqueue-2.0.3.tgz", + "integrity": "sha512-ppJZNDuKGgxzkHihX8v9v9G5f+18gzaTfrukGrq6ueg0lmH4nqVnA2IPG0AEH3jKEk2GRJCUhDoqpoiw3PHLBA==" }, "tinyreq": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/tinyreq/-/tinyreq-3.4.0.tgz", - "integrity": "sha512-vBddoX7XC6YIhE4zBYKqGmsjU3v6SxHnw3a7IXSDgRT8LOs6jhGYfNnIwHCeIg0dS3F1SLaAxpPoB7vzQx595w==", + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/tinyreq/-/tinyreq-3.4.1.tgz", + "integrity": "sha512-IeWK9x7AZHQfxqb5VpE1+Ime0iubDjgr9DCFHTLMXO55HjQTMmqBByxoJ0rhQRxXumtTwsMcq0/gTglZkB9+IA==", "dev": true, - "optional": true, "requires": { "assured": "^1.0.12", "follow-redirects": "^1.4.1", @@ -20528,20 +18582,17 @@ "to-arraybuffer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", - "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", - "dev": true + "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=" }, "to-fast-properties": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", - "dev": true + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=" }, "to-object-path": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", - "dev": true, "requires": { "kind-of": "^3.0.2" }, @@ -20550,7 +18601,6 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, "requires": { "is-buffer": "^1.1.5" } @@ -20567,7 +18617,6 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", - "dev": true, "requires": { "define-property": "^2.0.2", "extend-shallow": "^3.0.2", @@ -20576,13 +18625,11 @@ } }, "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" + "is-number": "^7.0.0" } }, "to-through": { @@ -20597,40 +18644,31 @@ "toidentifier": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", - "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", - "dev": true + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" }, "topojson-client": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/topojson-client/-/topojson-client-3.0.0.tgz", - "integrity": "sha1-H5kpOnfvQqRI0DKoGqmCtz82DS8=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/topojson-client/-/topojson-client-3.1.0.tgz", + "integrity": "sha512-605uxS6bcYxGXw9qi62XyrV6Q3xwbndjachmNxu8HWTtVPxZfEJN9fd/SZS1Q54Sn2y0TMyMxFj/cJINqGHrKw==", "requires": { "commander": "2" } }, "topojson-server": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/topojson-server/-/topojson-server-3.0.0.tgz", - "integrity": "sha1-N4546Hw5cqe1vixdYENptrrmnF4=", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/topojson-server/-/topojson-server-3.0.1.tgz", + "integrity": "sha512-/VS9j/ffKr2XAOjlZ9CgyyeLmgJ9dMwq6Y0YEON8O7p/tGGk+dCWnrE03zEdu7i4L7YsFZLEPZPzCvcB7lEEXw==", "requires": { "commander": "2" } }, "tough-cookie": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz", - "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", - "dev": true, + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", "requires": { - "punycode": "^1.4.1" - }, - "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true - } + "psl": "^1.1.28", + "punycode": "^2.1.1" } }, "traverse-chain": { @@ -20642,8 +18680,7 @@ "tree-kill": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", - "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", - "dev": true + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==" }, "trim-newlines": { "version": "1.0.0", @@ -20651,12 +18688,6 @@ "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", "dev": true }, - "trim-right": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", - "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", - "dev": true - }, "ts-node": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-7.0.1.tgz", @@ -20671,12 +18702,31 @@ "mkdirp": "^0.5.1", "source-map-support": "^0.5.6", "yn": "^2.0.0" + }, + "dependencies": { + "diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true + }, + "yn": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/yn/-/yn-2.0.0.tgz", + "integrity": "sha1-5a2ryKz0CPY4X8dklWhMiOavaJo=", + "dev": true + } } }, + "tsickle": { + "version": "0.38.1", + "resolved": "https://registry.npmjs.org/tsickle/-/tsickle-0.38.1.tgz", + "integrity": "sha512-4xZfvC6+etRu6ivKCNqMOd1FqcY/m6JY3Y+yr5+Xw+i751ciwrWINi6x/3l1ekcODH9GZhlf0ny2LpzWxnjWYA==" + }, "tslib": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz", - "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==" + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", + "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==" }, "tslint": { "version": "5.15.0", @@ -20697,6 +18747,26 @@ "semver": "^5.3.0", "tslib": "^1.8.0", "tsutils": "^2.29.0" + }, + "dependencies": { + "builtin-modules": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", + "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", + "dev": true + }, + "diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + } } }, "tsutils": { @@ -20711,14 +18781,12 @@ "tty-browserify": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", - "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", - "dev": true + "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=" }, "tunnel-agent": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, "requires": { "safe-buffer": "^5.0.1" } @@ -20731,19 +18799,13 @@ "tweetnacl": { "version": "0.14.5", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true, - "optional": true - }, - "two-product": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/two-product/-/two-product-1.0.2.tgz", - "integrity": "sha1-Z9ldSyV6kh4stL16+VEfkIhSLqo=" + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" }, - "two-sum": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/two-sum/-/two-sum-1.0.0.tgz", - "integrity": "sha1-MdPzIjnk9zHsqd+RVeKyl/AIq2Q=" + "type": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", + "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==", + "dev": true }, "type-fest": { "version": "0.11.0", @@ -20755,27 +18817,9 @@ "version": "1.6.18", "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "dev": true, "requires": { "media-typer": "0.3.0", "mime-types": "~2.1.24" - }, - "dependencies": { - "mime-db": { - "version": "1.42.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.42.0.tgz", - "integrity": "sha512-UbfJCR4UAVRNgMpfImz05smAXK7+c+ZntjaA26ANtkXLlOe947Aag5zdIcKQULAiF9Cq4WxBi9jUs5zkA84bYQ==", - "dev": true - }, - "mime-types": { - "version": "2.1.25", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.25.tgz", - "integrity": "sha512-5KhStqB5xpTAeGqKBAMgwaYMnQik7teQN4IAzC7npDv6kzeU6prfkR67bc87J1kWMPGkoaZSq1npmexMgkmEVg==", - "dev": true, - "requires": { - "mime-db": "1.42.0" - } - } } }, "typed-function": { @@ -20804,11 +18848,10 @@ "dev": true }, "typpy": { - "version": "2.3.10", - "resolved": "https://registry.npmjs.org/typpy/-/typpy-2.3.10.tgz", - "integrity": "sha512-DKiSmYeXF4q+K0H999sVROLjwsngad5AloblLo72No+xVT9W09ytUIOCC/3puHsf+Dsf8M2hoPds0H1HwJgQqg==", + "version": "2.3.11", + "resolved": "https://registry.npmjs.org/typpy/-/typpy-2.3.11.tgz", + "integrity": "sha512-Jh/fykZSaxeKO0ceMAs6agki9T5TNA9kiIR6fzKbvafKpIw8UlNlHhzuqKyi5lfJJ5VojJOx9tooIbyy7vHV/g==", "dev": true, - "optional": true, "requires": { "function.name": "^1.0.3" } @@ -20820,22 +18863,50 @@ "dev": true }, "uglify-js": { - "version": "3.3.28", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.3.28.tgz", - "integrity": "sha512-68Rc/aA6cswiaQ5SrE979UJcXX+ADA1z33/ZsPd+fbAiVdjZ16OXdbtGO+rJUUBgK6qdf3SOPhQf3K/ybF5Miw==", + "version": "2.8.29", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", + "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", "dev": true, - "optional": true, "requires": { - "commander": "~2.15.0", - "source-map": "~0.6.1" + "source-map": "~0.5.1", + "uglify-to-browserify": "~1.0.0", + "yargs": "~3.10.0" }, "dependencies": { + "camelcase": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", + "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", + "dev": true + }, + "cliui": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", + "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", + "dev": true, + "requires": { + "center-align": "^0.1.1", + "right-align": "^0.1.1", + "wordwrap": "0.0.2" + } + }, "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "yargs": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", + "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", "dev": true, - "optional": true + "requires": { + "camelcase": "^1.0.2", + "cliui": "^2.1.0", + "decamelize": "^1.0.0", + "window-size": "0.1.0" + } } } }, @@ -20847,11 +18918,10 @@ "optional": true }, "ul": { - "version": "5.2.13", - "resolved": "https://registry.npmjs.org/ul/-/ul-5.2.13.tgz", - "integrity": "sha1-n/BQTqNcofdMC/WeZIDe8Am617U=", + "version": "5.2.14", + "resolved": "https://registry.npmjs.org/ul/-/ul-5.2.14.tgz", + "integrity": "sha512-VaIRQZ5nkEd8VtI3OYo5qNbhHQuBtPtu5k5GrYaKCmcP1H+FkuWtS+XFTSU1oz5GiuAg2FJL5ka8ufr9zdm8eg==", "dev": true, - "optional": true, "requires": { "deffy": "^2.2.2", "typpy": "^2.3.4" @@ -20870,15 +18940,15 @@ "dev": true }, "underscore": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", - "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.10.2.tgz", + "integrity": "sha512-N4P+Q/BuyuEKFJ43B9gYuOj4TQUHXX+j2FqguVOpjkssLUUrnJofCcBccJSCoeturDoZU6GorDTHSvUDlSQbTg==", "dev": true }, "undertaker": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/undertaker/-/undertaker-1.2.0.tgz", - "integrity": "sha1-M52kZGJS0ILcN45wgGcpl1DhG0k=", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/undertaker/-/undertaker-1.2.1.tgz", + "integrity": "sha512-71WxIzDkgYk9ZS+spIB8iZXchFhAdEo2YU8xYqBYJ39DIUIqziK78ftm26eecoIY49X0J2MLhG4hr18Yp6/CMA==", "dev": true, "requires": { "arr-flatten": "^1.0.1", @@ -20906,14 +18976,12 @@ "unicode-canonical-property-names-ecmascript": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", - "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", - "dev": true + "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==" }, "unicode-match-property-ecmascript": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", - "dev": true, "requires": { "unicode-canonical-property-names-ecmascript": "^1.0.4", "unicode-property-aliases-ecmascript": "^1.0.4" @@ -20922,20 +18990,17 @@ "unicode-match-property-value-ecmascript": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz", - "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==", - "dev": true + "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==" }, "unicode-property-aliases-ecmascript": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz", - "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==", - "dev": true + "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==" }, "union-value": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", - "dev": true, "requires": { "arr-union": "^3.1.0", "get-value": "^2.0.6", @@ -20946,20 +19011,17 @@ "uniq": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", - "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", - "dev": true + "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=" }, "uniqs": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/uniqs/-/uniqs-2.0.0.tgz", - "integrity": "sha1-/+3ks2slKQaW5uFl1KWe25mOawI=", - "dev": true + "integrity": "sha1-/+3ks2slKQaW5uFl1KWe25mOawI=" }, "unique-filename": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", - "dev": true, "requires": { "unique-slug": "^2.0.0" } @@ -20968,19 +19030,18 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", - "dev": true, "requires": { "imurmurhash": "^0.1.4" } }, "unique-stream": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.2.1.tgz", - "integrity": "sha1-WqADz76Uxf+GbE59ZouxxNuts2k=", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.3.1.tgz", + "integrity": "sha512-2nY4TnBE70yoxHkDli7DMazpWiP7xMdCYqU2nBRO0UB+ZpEkGsSija7MvmvnZFUeC+mrgiUfcHSr3LmRFIg4+A==", "dev": true, "requires": { - "json-stable-stringify": "^1.0.0", - "through2-filter": "^2.0.0" + "json-stable-stringify-without-jsonify": "^1.0.1", + "through2-filter": "^3.0.0" } }, "unique-string": { @@ -21003,12 +19064,6 @@ "uuid": "^3.0.0" }, "dependencies": { - "aws4": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.9.1.tgz", - "integrity": "sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug==", - "dev": true - }, "debug": { "version": "3.2.6", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", @@ -21017,115 +19072,29 @@ "requires": { "ms": "^2.1.1" } - }, - "har-validator": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", - "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", - "dev": true, - "requires": { - "ajv": "^6.5.5", - "har-schema": "^2.0.0" - } - }, - "mime-db": { - "version": "1.43.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.43.0.tgz", - "integrity": "sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ==", - "dev": true - }, - "mime-types": { - "version": "2.1.26", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.26.tgz", - "integrity": "sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ==", - "dev": true, - "requires": { - "mime-db": "1.43.0" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true - }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - }, - "dependencies": { - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - } - } - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } } } }, "universalify": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.1.tgz", - "integrity": "sha1-+nG63UQ3r0wUiEHjs7Fl+enlkLc=", + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", "dev": true }, "unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", - "dev": true + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" }, "unquote": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", - "integrity": "sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ=", - "dev": true + "integrity": "sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ=" }, "unset-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", - "dev": true, "requires": { "has-value": "^0.3.1", "isobject": "^3.0.0" @@ -21135,7 +19104,6 @@ "version": "0.3.1", "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", - "dev": true, "requires": { "get-value": "^2.0.3", "has-values": "^0.1.4", @@ -21146,7 +19114,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dev": true, "requires": { "isarray": "1.0.0" } @@ -21156,16 +19123,14 @@ "has-values": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", - "dev": true + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=" } } }, "upath": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.0.tgz", - "integrity": "sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw==", - "dev": true + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", + "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==" }, "update-notifier": { "version": "4.1.0", @@ -21244,7 +19209,6 @@ "version": "4.2.2", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", - "dev": true, "requires": { "punycode": "^2.1.0" } @@ -21252,8 +19216,7 @@ "urix": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", - "dev": true + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=" }, "url": { "version": "0.11.0", @@ -21272,16 +19235,15 @@ } }, "url-join": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/url-join/-/url-join-1.1.0.tgz", - "integrity": "sha1-dBxsL0WWxIMNZxhGCSDQySIC3Hg=" + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/url-join/-/url-join-4.0.1.tgz", + "integrity": "sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA==" }, "url-local": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/url-local/-/url-local-1.1.7.tgz", - "integrity": "sha512-EP80TqSrQHZmYFEqaeUsVUTGPMieOaGOtjDqx4dnACRfottIttycRSAqj8k1ffynX+e/rRQ4D0h0k/Dmmt3NhQ==", + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/url-local/-/url-local-1.1.8.tgz", + "integrity": "sha512-UGxMIanJEqyW1o26vNNMvvnrSPzSt8LS7wEKq9S2m3ARi5O3ogfrxtYWigsUIYIISi3tA5wEF0V+0R69JFUEzg==", "dev": true, - "optional": true, "requires": { "parse-url": "^1.3.0" } @@ -21290,7 +19252,6 @@ "version": "1.4.7", "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.4.7.tgz", "integrity": "sha512-d3uaVyzDB9tQoSXFvuSUNFibTd9zxd2bkVrDRvF5TmvWWQwqE4lgYJ5m+x1DbecWkw+LK4RNl2CU1hHuOKPVlg==", - "dev": true, "requires": { "querystringify": "^2.1.1", "requires-port": "^1.0.0" @@ -21314,23 +19275,18 @@ } }, "url-remote": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/url-remote/-/url-remote-1.1.7.tgz", - "integrity": "sha512-jNPdG3eeaF/ydHvGJQv6y038p5si+oFLo6CxByI2l9qICbwB0Ms3kcNYV9twimTiwgMgRgI3+JVmP7aUpDVVPQ==", + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/url-remote/-/url-remote-1.1.8.tgz", + "integrity": "sha512-KWQgCSfdOb251CJLeeZPa5d3yBPwqJ4/N6lTEe/XofD5C87rsTLVJBF+cgFiNCMS5vktMH8YeSbYy713dODcug==", "dev": true, - "optional": true, "requires": { "url-local": "^1.0.1" } }, "use": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.0.tgz", - "integrity": "sha512-6UJEQM/L+mzC3ZJNM56Q4DFGLX/evKGRg15UJHGB9X5j5Z3AFbgZvjUh2yq/UJUY4U5dh7Fal++XbNg1uzpRAw==", - "dev": true, - "requires": { - "kind-of": "^6.0.2" - } + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==" }, "useragent": { "version": "2.3.0", @@ -21340,15 +19296,39 @@ "requires": { "lru-cache": "4.1.x", "tmp": "0.0.x" + }, + "dependencies": { + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + } } }, "util": { "version": "0.11.1", "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", - "dev": true, "requires": { "inherits": "2.0.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + } } }, "util-deprecate": { @@ -21369,47 +19349,36 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.1.tgz", "integrity": "sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA==", - "dev": true, "requires": { "define-properties": "^1.1.3", "es-abstract": "^1.17.2", "has-symbols": "^1.0.1", "object.getownpropertydescriptors": "^2.1.0" - }, - "dependencies": { - "has-symbols": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", - "dev": true - } } }, "utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", - "dev": true + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" }, "uuid": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.2.1.tgz", - "integrity": "sha512-jZnMwlb9Iku/O3smGWvZhauCf6cvvpKi4BKRiliS3cxnI+Gz9j5MEpTz2UFuXiKPJocb7gnsLHwiS05ige5BEA==", - "dev": true + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" }, "v8flags": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.1.1.tgz", - "integrity": "sha512-iw/1ViSEaff8NJ3HLyEjawk/8hjJib3E7pvG4pddVXfUg1983s3VGsiClDjhK64MQVDGqc1Q8r18S4VKQZS9EQ==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.2.0.tgz", + "integrity": "sha512-mH8etigqMfiGWdeXpaaqGfs6BndypxusHHcv2qSHyZkGEznCd/qAXCWWRzeowtL54147cktFOC4P5y+kl8d8Jg==", "dev": true, "requires": { "homedir-polyfill": "^1.0.1" } }, "validate-npm-package-license": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz", - "integrity": "sha512-63ZOUnL4SIXj4L0NixR3L1lcjO38crAbgrTpl28t8jjrfuiOBL5Iygm+60qPs/KsZGzPNg6Smnc/oY16QTjF0g==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dev": true, "requires": { "spdx-correct": "^3.0.0", @@ -21434,20 +19403,17 @@ "vary": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", - "dev": true + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" }, "vendors": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/vendors/-/vendors-1.0.4.tgz", - "integrity": "sha512-/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w==", - "dev": true + "integrity": "sha512-/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w==" }, "verror": { "version": "1.10.0", "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, "requires": { "assert-plus": "^1.0.0", "core-util-is": "1.0.2", @@ -21455,22 +19421,17 @@ } }, "vinyl": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.5.3.tgz", - "integrity": "sha1-sEVbOPxeDPMNQyUTLkYZcMIJHN4=", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.2.0.tgz", + "integrity": "sha512-MBH+yP0kC/GQ5GwBqrTPTzEfiiLjta7hTtvQtbxBgTeSXsmKQRQecjibMbxIXzVT3Y9KJK+drOz1/k+vsu8Nkg==", "dev": true, "requires": { - "clone": "^1.0.0", - "clone-stats": "^0.0.1", - "replace-ext": "0.0.1" - }, - "dependencies": { - "clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", - "dev": true - } + "clone": "^2.1.1", + "clone-buffer": "^1.0.0", + "clone-stats": "^1.0.0", + "cloneable-readable": "^1.0.0", + "remove-trailing-separator": "^1.0.1", + "replace-ext": "^1.0.0" } }, "vinyl-fs": { @@ -21484,46 +19445,18 @@ "graceful-fs": "^4.0.0", "is-valid-glob": "^1.0.0", "lazystream": "^1.0.0", - "lead": "^1.0.0", - "object.assign": "^4.0.4", - "pumpify": "^1.3.5", - "readable-stream": "^2.3.3", - "remove-bom-buffer": "^3.0.0", - "remove-bom-stream": "^1.2.0", - "resolve-options": "^1.1.0", - "through2": "^2.0.0", - "to-through": "^2.0.0", - "value-or-function": "^3.0.0", - "vinyl": "^2.0.0", - "vinyl-sourcemap": "^1.1.0" - }, - "dependencies": { - "clone-stats": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz", - "integrity": "sha1-s3gt/4u1R04Yuba/D9/ngvh3doA=", - "dev": true - }, - "replace-ext": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz", - "integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=", - "dev": true - }, - "vinyl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.2.0.tgz", - "integrity": "sha512-MBH+yP0kC/GQ5GwBqrTPTzEfiiLjta7hTtvQtbxBgTeSXsmKQRQecjibMbxIXzVT3Y9KJK+drOz1/k+vsu8Nkg==", - "dev": true, - "requires": { - "clone": "^2.1.1", - "clone-buffer": "^1.0.0", - "clone-stats": "^1.0.0", - "cloneable-readable": "^1.0.0", - "remove-trailing-separator": "^1.0.1", - "replace-ext": "^1.0.0" - } - } + "lead": "^1.0.0", + "object.assign": "^4.0.4", + "pumpify": "^1.3.5", + "readable-stream": "^2.3.3", + "remove-bom-buffer": "^3.0.0", + "remove-bom-stream": "^1.2.0", + "resolve-options": "^1.1.0", + "through2": "^2.0.0", + "to-through": "^2.0.0", + "value-or-function": "^3.0.0", + "vinyl": "^2.0.0", + "vinyl-sourcemap": "^1.1.0" } }, "vinyl-sourcemap": { @@ -21541,30 +19474,13 @@ "vinyl": "^2.0.0" }, "dependencies": { - "clone-stats": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz", - "integrity": "sha1-s3gt/4u1R04Yuba/D9/ngvh3doA=", - "dev": true - }, - "replace-ext": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz", - "integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=", - "dev": true - }, - "vinyl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.2.0.tgz", - "integrity": "sha512-MBH+yP0kC/GQ5GwBqrTPTzEfiiLjta7hTtvQtbxBgTeSXsmKQRQecjibMbxIXzVT3Y9KJK+drOz1/k+vsu8Nkg==", + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", "dev": true, "requires": { - "clone": "^2.1.1", - "clone-buffer": "^1.0.0", - "clone-stats": "^1.0.0", - "cloneable-readable": "^1.0.0", - "remove-trailing-separator": "^1.0.1", - "replace-ext": "^1.0.0" + "remove-trailing-separator": "^1.0.1" } } } @@ -21576,6 +19492,14 @@ "dev": true, "requires": { "source-map": "^0.5.1" + }, + "dependencies": { + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } } }, "vlq": { @@ -21587,8 +19511,7 @@ "vm-browserify": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", - "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", - "dev": true + "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==" }, "void-elements": { "version": "2.0.1", @@ -21597,21 +19520,84 @@ "dev": true }, "watchpack": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.6.1.tgz", - "integrity": "sha512-+IF9hfUFOrYOOaKyfaI7h7dquUIOgyEMoQMLA7OP5FxegKA2+XdXThAZ9TU2kucfhDH7rfMHs1oPYziVGWRnZA==", - "dev": true, + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.2.tgz", + "integrity": "sha512-ymVbbQP40MFTp+cNMvpyBpBtygHnPzPkHqoIwRRj/0B8KhqQwV8LaKjtbaxF2lK4vl8zN9wCxS46IFCU5K4W0g==", "requires": { - "chokidar": "^2.1.8", + "chokidar": "^3.4.0", "graceful-fs": "^4.1.2", - "neo-async": "^2.5.0" + "neo-async": "^2.5.0", + "watchpack-chokidar2": "^2.0.0" + } + }, + "watchpack-chokidar2": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.0.tgz", + "integrity": "sha512-9TyfOyN/zLUbA288wZ8IsMZ+6cbzvsNyEzSBp6e/zkifi6xxbl8SmQ/CxQq32k8NNqrdVEVUVSEf56L4rQ/ZxA==", + "optional": true, + "requires": { + "chokidar": "^2.1.8" }, "dependencies": { + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "optional": true, + "requires": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + }, + "dependencies": { + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "optional": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + } + } + }, + "binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "optional": true + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, "chokidar": { "version": "2.1.8", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", - "dev": true, + "optional": true, "requires": { "anymatch": "^2.0.0", "async-each": "^1.0.1", @@ -21627,28 +19613,120 @@ "upath": "^1.1.1" } }, - "normalize-path": { + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "fsevents": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", + "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", + "optional": true + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "optional": true, + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "optional": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "optional": true, + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "is-number": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } }, "readdirp": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", - "dev": true, + "optional": true, "requires": { "graceful-fs": "^4.1.11", "micromatch": "^3.1.10", "readable-stream": "^2.0.2" } }, - "upath": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", - "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", - "dev": true + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } } } }, @@ -21656,7 +19734,6 @@ "version": "1.7.3", "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", - "dev": true, "requires": { "minimalistic-assert": "^1.0.0" } @@ -21678,36 +19755,12 @@ "requires": { "@types/selenium-webdriver": "^3.0.0", "selenium-webdriver": "^3.0.1" - }, - "dependencies": { - "selenium-webdriver": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/selenium-webdriver/-/selenium-webdriver-3.6.0.tgz", - "integrity": "sha512-WH7Aldse+2P5bbFBO4Gle/nuQOdVwpHMTL6raL3uuBj/vPG07k6uzt3aiahu352ONBr5xXh0hDlM3LhtXPOC4Q==", - "dev": true, - "requires": { - "jszip": "^3.1.3", - "rimraf": "^2.5.4", - "tmp": "0.0.30", - "xml2js": "^0.4.17" - } - }, - "tmp": { - "version": "0.0.30", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.30.tgz", - "integrity": "sha1-ckGdSovn1s51FI/YsyTlk6cRwu0=", - "dev": true, - "requires": { - "os-tmpdir": "~1.0.1" - } - } } }, "webpack": { "version": "4.42.0", "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.42.0.tgz", "integrity": "sha512-EzJRHvwQyBiYrYqhyjW9AqM90dE4+s1/XtCfn7uWg6cS72zH+2VPFAlsnW0+W0cDi0XRjNKUMoJtpSi50+Ph6w==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.8.5", "@webassemblyjs/helper-module-context": "1.8.5", @@ -21734,11 +19787,37 @@ "webpack-sources": "^1.4.1" }, "dependencies": { + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, "cacache": { "version": "12.0.4", "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", - "dev": true, "requires": { "bluebird": "^3.5.5", "chownr": "^1.1.1", @@ -21757,48 +19836,64 @@ "y18n": "^4.0.0" } }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, "find-cache-dir": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "dev": true, "requires": { "commondir": "^1.0.1", "make-dir": "^2.0.0", "pkg-dir": "^3.0.0" } }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } } }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", - "dev": true - }, "is-wsl": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=" }, "json5": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, "requires": { "minimist": "^1.2.0" } @@ -21807,43 +19902,45 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, "requires": { "big.js": "^5.2.2", "emojis-list": "^3.0.0", "json5": "^1.0.1" } }, - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "requires": { - "yallist": "^3.0.2" - } - }, "memory-fs": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", - "dev": true, "requires": { "errno": "^0.1.3", "readable-stream": "^2.0.1" } }, - "neo-async": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", - "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==", - "dev": true + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } }, "rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, "requires": { "glob": "^7.1.3" } @@ -21852,7 +19949,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, "requires": { "ajv": "^6.1.0", "ajv-errors": "^1.0.0", @@ -21862,40 +19958,40 @@ "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" }, "ssri": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", - "dev": true, "requires": { "figgy-pudding": "^3.5.1" } }, "terser-webpack-plugin": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.3.tgz", - "integrity": "sha512-QMxecFz/gHQwteWwSo5nTc6UaICqN1bMedC5sMtUc7y3Ha3Q8y6ZO0iCR8pq4RJC8Hjf0FEPEHZqcMB/+DFCrA==", - "dev": true, + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.4.tgz", + "integrity": "sha512-U4mACBHIegmfoEe5fdongHESNJWqsGU+W0S/9+BmYGVQDw1+c2Ow05TpMhxjPK1sRb7cuYq1BPl1e5YHJMTCqA==", "requires": { "cacache": "^12.0.2", "find-cache-dir": "^2.1.0", "is-wsl": "^1.1.0", "schema-utils": "^1.0.0", - "serialize-javascript": "^2.1.2", + "serialize-javascript": "^3.1.0", "source-map": "^0.6.1", "terser": "^4.1.2", "webpack-sources": "^1.4.0", "worker-farm": "^1.7.0" } }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } } } }, @@ -21903,7 +19999,6 @@ "version": "3.7.2", "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.7.2.tgz", "integrity": "sha512-1xC42LxbYoqLNAhV6YzTYacicgMZQTqRd27Sim9wn5hJrX3I5nxYy1SxSd4+gjUFsz1dQFj+yEe6zEVmSkeJjw==", - "dev": true, "requires": { "memory-fs": "^0.4.1", "mime": "^2.4.4", @@ -21916,25 +20011,22 @@ "version": "0.4.1", "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", - "dev": true, "requires": { "errno": "^0.1.3", "readable-stream": "^2.0.1" } }, "mime": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.4.tgz", - "integrity": "sha512-LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA==", - "dev": true + "version": "2.4.6", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.6.tgz", + "integrity": "sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA==" } } }, "webpack-dev-server": { - "version": "3.10.3", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.10.3.tgz", - "integrity": "sha512-e4nWev8YzEVNdOMcNzNeCN947sWJNd43E5XvsJzbAL08kGc2frm1tQ32hTJslRS+H65LCb/AaUCYU7fjHCpDeQ==", - "dev": true, + "version": "3.11.0", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.11.0.tgz", + "integrity": "sha512-PUxZ+oSTxogFQgkTtFndEtJIPNmml7ExwufBZ9L2/Xyyd5PnOL5UreWe5ZT7IU25DSdykL9p1MLQzmLh2ljSeg==", "requires": { "ansi-html": "0.0.7", "bonjour": "^3.5.0", @@ -21944,50 +20036,88 @@ "debug": "^4.1.1", "del": "^4.1.1", "express": "^4.17.1", - "html-entities": "^1.2.1", + "html-entities": "^1.3.1", "http-proxy-middleware": "0.19.1", "import-local": "^2.0.0", "internal-ip": "^4.3.0", "ip": "^1.1.5", "is-absolute-url": "^3.0.3", "killable": "^1.0.1", - "loglevel": "^1.6.6", + "loglevel": "^1.6.8", "opn": "^5.5.0", "p-retry": "^3.0.1", - "portfinder": "^1.0.25", + "portfinder": "^1.0.26", "schema-utils": "^1.0.0", "selfsigned": "^1.10.7", "semver": "^6.3.0", "serve-index": "^1.9.1", - "sockjs": "0.3.19", + "sockjs": "0.3.20", "sockjs-client": "1.4.0", - "spdy": "^4.0.1", + "spdy": "^4.0.2", "strip-ansi": "^3.0.1", "supports-color": "^6.1.0", "url": "^0.11.0", "webpack-dev-middleware": "^3.7.2", "webpack-log": "^2.0.0", "ws": "^6.2.1", - "yargs": "12.0.5" + "yargs": "^13.3.2" }, "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "requires": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + }, + "dependencies": { + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "requires": { + "remove-trailing-separator": "^1.0.1" + } + } + } }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true + "binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==" + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } }, "chokidar": { "version": "2.1.8", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", - "dev": true, "requires": { "anymatch": "^2.0.0", "async-each": "^1.0.1", @@ -22003,92 +20133,107 @@ "upath": "^1.1.1" } }, - "cliui": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", - "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", - "dev": true, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" }, "dependencies": { - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "fsevents": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", + "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", + "optional": true + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", "requires": { - "ansi-regex": "^3.0.0" + "is-extglob": "^2.1.0" } } } }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "invert-kv": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", - "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", - "dev": true - }, "is-absolute-url": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-3.0.3.tgz", - "integrity": "sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true + "integrity": "sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q==" }, - "lcid": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", - "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", - "dev": true, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", "requires": { - "invert-kv": "^2.0.0" + "binary-extensions": "^1.0.0" } }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "normalize-path": { + "is-number": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } }, - "os-locale": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", - "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", - "dev": true, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", "requires": { - "execa": "^1.0.0", - "lcid": "^2.0.0", - "mem": "^4.0.0" + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" } }, "readdirp": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", - "dev": true, "requires": { "graceful-fs": "^4.1.11", "micromatch": "^3.1.10", @@ -22099,7 +20244,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, "requires": { "ajv": "^6.1.0", "ajv-errors": "^1.0.0", @@ -22109,79 +20253,23 @@ "semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" }, "supports-color": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, "requires": { "has-flag": "^3.0.0" } }, - "upath": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", - "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", - "dev": true - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "yargs": { - "version": "12.0.5", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz", - "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==", - "dev": true, - "requires": { - "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-parser": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", - "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", - "dev": true, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" } } } @@ -22190,25 +20278,15 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/webpack-log/-/webpack-log-2.0.0.tgz", "integrity": "sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg==", - "dev": true, "requires": { "ansi-colors": "^3.0.0", "uuid": "^3.3.2" - }, - "dependencies": { - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - } } }, "webpack-merge": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.2.tgz", "integrity": "sha512-TUE1UGoTX2Cd42j3krGYqObZbOD+xF7u28WB7tfUordytSjbWTIjK/8V0amkBfTYN4/pB/GIDlJZZ657BGG19g==", - "dev": true, "requires": { "lodash": "^4.17.15" } @@ -22217,7 +20295,6 @@ "version": "1.4.3", "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", - "dev": true, "requires": { "source-list-map": "^2.0.0", "source-map": "~0.6.1" @@ -22226,8 +20303,7 @@ "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" } } }, @@ -22235,27 +20311,22 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-1.4.0.tgz", "integrity": "sha512-GB1kB/LwAWC3CxwcedGhMkxGpNZxSheCe1q+KJP1bakuieAdX/rGHEcf5zsEzhKXpqsGqokgsDoD9dIkr61VDQ==", - "dev": true, "requires": { "webpack-sources": "^1.3.0" } }, "websocket-driver": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.3.tgz", - "integrity": "sha512-bpxWlvbbB459Mlipc5GBzzZwhoZgGEZLuqPaR0INBGnPAY1vdBX6hPnoFXiw+3yWxDuHyQjO2oXTMyS8A5haFg==", - "dev": true, + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.6.5.tgz", + "integrity": "sha1-XLJVbOuF9Dc8bYI4qmkchFThOjY=", "requires": { - "http-parser-js": ">=0.4.0 <0.4.11", - "safe-buffer": ">=5.1.0", "websocket-extensions": ">=0.1.1" } }, "websocket-extensions": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.3.tgz", - "integrity": "sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg==", - "dev": true + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", + "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==" }, "wellknown": { "version": "0.5.0", @@ -22264,28 +20335,60 @@ "requires": { "concat-stream": "~1.5.0", "minimist": "~1.2.0" + }, + "dependencies": { + "concat-stream": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.2.tgz", + "integrity": "sha1-cIl4Yk2FavQaWnQd790mHadSwmY=", + "requires": { + "inherits": "~2.0.1", + "readable-stream": "~2.0.0", + "typedarray": "~0.0.5" + } + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + }, + "readable-stream": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", + "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "~1.0.0", + "process-nextick-args": "~1.0.6", + "string_decoder": "~0.10.x", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + } } }, "when": { "version": "3.6.4", "resolved": "https://registry.npmjs.org/when/-/when-3.6.4.tgz", - "integrity": "sha1-RztRfsFZ4rhQBUl6E5g/CVQS404=", - "dev": true + "integrity": "sha1-RztRfsFZ4rhQBUl6E5g/CVQS404=" }, "which": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, "requires": { "isexe": "^2.0.0" } }, "which-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", - "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", - "dev": true + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=" }, "widest-line": { "version": "3.1.0", @@ -22302,6 +20405,12 @@ "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, "is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -22331,9 +20440,9 @@ } }, "winchan": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/winchan/-/winchan-0.2.0.tgz", - "integrity": "sha1-OGMCjn+XSw2hQS8oQXukJJcqvZQ=" + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/winchan/-/winchan-0.2.2.tgz", + "integrity": "sha512-pvN+IFAbRP74n/6mc6phNyCH8oVkzXsto4KCHPJ2AScniAnA1AmeLI03I2BzjePpaClGSI4GUMowzsD3qz5PRQ==" }, "window-size": { "version": "0.1.0", @@ -22342,24 +20451,28 @@ "dev": true }, "wkt-parser": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/wkt-parser/-/wkt-parser-1.2.3.tgz", - "integrity": "sha512-s7zrOedGuHbbzMaQOuf8HacuCYp3LmmrHjkkN//7UEAzsYz7xJ6J+j/84ZWZkQcrRqi3xXyuc4odPHj7PEB0bw==" + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/wkt-parser/-/wkt-parser-1.2.4.tgz", + "integrity": "sha512-ZzKnc7ml/91fOPh5bANBL4vUlWPIYYv11waCtWTkl2TRN+LEmBg60Q1MA8gqV4hEp4MGfSj9JiHz91zw/gTDXg==" + }, + "wordwrap": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", + "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", + "dev": true }, "worker-farm": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", - "dev": true, "requires": { "errno": "~0.1.7" } }, "worker-plugin": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/worker-plugin/-/worker-plugin-4.0.2.tgz", - "integrity": "sha512-V+1zSZMOOKk+uBzKyNIODLQLsx59zSIOaI75J1EMS0iR1qy+KQR3y/pQ3T0vIhvPfDFapGRMsoMvQNEL3okqSA==", - "dev": true, + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/worker-plugin/-/worker-plugin-4.0.3.tgz", + "integrity": "sha512-7hFDYWiKcE3yHZvemsoM9lZis/PzurHAEX1ej8PLCu818Rt6QqUAiDdxHPCKZctzmhqzPpcFSgvMCiPbtooqAg==", "requires": { "loader-utils": "^1.1.0" }, @@ -22368,7 +20481,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, "requires": { "minimist": "^1.2.0" } @@ -22377,7 +20489,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, "requires": { "big.js": "^5.2.2", "emojis-list": "^3.0.0", @@ -22387,20 +20498,34 @@ } }, "wrap-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", - "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", - "dev": true, + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "requires": { + "ansi-regex": "^4.1.0" + } + } } }, "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" }, "write-file-atomic": { "version": "3.0.3", @@ -22418,7 +20543,6 @@ "version": "6.2.1", "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.1.tgz", "integrity": "sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA==", - "dev": true, "requires": { "async-limiter": "~1.0.0" } @@ -22430,33 +20554,25 @@ "dev": true }, "xml2js": { - "version": "0.4.19", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", - "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", + "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", "dev": true, "requires": { "sax": ">=0.6.0", - "xmlbuilder": "~9.0.1" - }, - "dependencies": { - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true - } + "xmlbuilder": "~11.0.0" } }, "xmlbuilder": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", - "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=", + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", "dev": true }, "xmlcreate": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.1.tgz", - "integrity": "sha512-MjGsXhKG8YjTKrDCXseFo3ClbMGvUD4en29H2Cev1dv4P/chlpw6KdYmlCWDkhosBVKRDjM836+3e3pm1cBNJA==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.3.tgz", + "integrity": "sha512-HgS+X6zAztGa9zIK3Y3LXuJes33Lz9x+YyTxgrkIdabu2vqcGOWwdfCpf1hWLRrd553wd4QCDf6BBO6FfdsRiQ==", "dev": true }, "xmlhttprequest-ssl": { @@ -22466,10 +20582,9 @@ "dev": true }, "xtend": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", - "dev": true + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" }, "xxhashjs": { "version": "0.2.2", @@ -22483,44 +20598,79 @@ "y18n": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", - "dev": true + "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==" }, "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "yargs": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", - "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", - "dev": true, - "requires": { - "camelcase": "^1.0.2", - "cliui": "^2.1.0", - "decamelize": "^1.0.0", - "window-size": "0.1.0" - } - }, - "yargs-parser": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz", - "integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=", - "dev": true, - "requires": { - "camelcase": "^3.0.0" + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "requires": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.2" }, "dependencies": { - "camelcase": { + "find-up": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", - "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", - "dev": true + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" } } }, + "yargs-parser": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + }, "yeast": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz", @@ -22528,10 +20678,9 @@ "dev": true }, "yn": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/yn/-/yn-2.0.0.tgz", - "integrity": "sha1-5a2ryKz0CPY4X8dklWhMiOavaJo=", - "dev": true + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==" }, "zone.js": { "version": "0.10.3", diff --git a/package.json b/package.json index 9721acff81..30432063f3 100644 --- a/package.json +++ b/package.json @@ -12,23 +12,27 @@ "build:aot": "ng build --aot true", "build:builder": "ng build builder", "build:gulp": "cd build && gulp build", - "build:prod": "node --max_old_space_size=12288 ./node_modules/@angular/cli/bin/ng build ansyn --prod", + "build:prod": "node --max_old_space_size=20000 ./node_modules/@angular/cli/bin/ng build ansyn --prod --verbose=true --progress=true", "build:libs": "bash scripts/build-libs.sh", + "build:submodules:libs": "bash scripts/build-submodules-libs.sh", + "install:submodules": "git submodule update --init --recursive", "publish:libs": "bash scripts/publish-libs.sh", "docker:elastic": "docker run -p 9200:9200 -v /esdata1:/usr/share/elasticsearch/data -e \"http.host=0.0.0.0\" -e \"transport.host=127.0.0.1\" -e \"http.cors.enabled=true\" -e \"http.cors.allow-origin=/.*/\" -e \"http.cors.allow-credentials=true\" -e \"http.cors.allow-headers=X-Requested-With, Content-Type, Content-Length, Authorization\" docker.elastic.co/elasticsearch/elasticsearch:5.4.3", "fix-all": "node scripts/fix-package-json -a", "fix-package-json": "node scripts/fix-package-json", "generate-config": "node scripts/generate-config.js", "lint": "ng lint ansyn --type-check", + "lint:submodules": "bash scripts/submodules-linting.sh", "log": "git log master --pretty=format:\\\"%an\\\",\\\"%ai\\\",\\\"%s\\\",\\\"%H\\\" > log.csv && echo Commiter, Date, Message, Hash | cat - log.csv > log2.csv && mv log2.csv log.csv", "ng": "ng", - "start": "node scripts/generate-config.js && ng serve", + "start": "node scripts/generate-config.js && node --max_old_space_size=20000 ./node_modules/@angular/cli/bin/ng serve", "start_1": "node scripts/generate-config.js && ng serve --port 4201", "start:aot": "ng serve --aot true", "start:builder-dev": "ng s --app builder-dev", "test": "ng test", "test:e2e": "node scripts/generate-config.js && ng e2e ansyn-e2e", "test:single-run": "ng test ansyn --watch=false", + "test:single-run:submodules": "bash scripts/submodules-testing.sh", "testCompile": "cd build && gulp testCompile", "update": "ng update @angular/core @angular/cli" }, @@ -70,9 +74,10 @@ "gl-matrix": "^2.8.1", "lodash": "^4.17.15", "lodash-decorators": "^4.5.0", + "material-community-components": "^6.0.1", "mathjs": "^5.4.1", "moment": "^2.21.0", - "ngx-bootstrap": "^5.5.0", + "ngx-bootstrap": "^5.6.2", "ngx-color-picker": "^9.1.0", "ngx-device-detector": "^1.4.1", "ngx-treeview": "^6.0.2", @@ -81,6 +86,7 @@ "proj4": "^2.5.0", "rison": "^0.1.1", "rxjs": "~6.5.4", + "tsickle": "^0.38.1", "tslib": "^1.10.0", "webpack-dev-server": "^3.11.0", "wellknown": "^0.5.0", @@ -93,7 +99,7 @@ "@angular/compiler-cli": "~9.1.0", "@angular/language-service": "~9.1.0", "@types/auth0-js": "^8.11.5", - "@types/cesium": "^1.47.3", + "@types/cesium": "^1.67.10", "@types/d3": "^4.13.1", "@types/file-saver": "^1.3.0", "@types/geojson": "7946.0.3", @@ -140,4 +146,4 @@ "precommit": [ "fix-all" ] -} +} \ No newline at end of file diff --git a/scripts/build-libs.sh b/scripts/build-libs.sh index 86e801cc89..03ef735620 100644 --- a/scripts/build-libs.sh +++ b/scripts/build-libs.sh @@ -1,5 +1,5 @@ #!/bin/bash -BUILDS=("menu" "imagery" "map-facade" "ol" "imagery-cesium" "imagery-video" "ansyn") +BUILDS=("menu" "map-facade" "ansyn") len=${#BUILDS[*]} for (( i=0; i/dev/null 2>&1; do + echo -n -e " \b" # never leave evidences! + + if [ $minutes == $limit ]; then + echo -e "\n" + echo -e "${RED}Test has reached a ${minutes} minutes timeout limit" + exit 1 + fi + + minutes=$((minutes+1)) + + sleep 60 +done + +exit 0 diff --git a/scripts/packages-list.json b/scripts/packages-list.json index 7c34a3e7c4..5d16f53fd2 100644 --- a/scripts/packages-list.json +++ b/scripts/packages-list.json @@ -1,9 +1,5 @@ [ "ansyn", - "imagery", "map-facade", - "menu", - "imagery-cesium", - "imagery-video", - "ol" + "menu" ] diff --git a/scripts/submodules-linting.sh b/scripts/submodules-linting.sh new file mode 100644 index 0000000000..dd21f766cf --- /dev/null +++ b/scripts/submodules-linting.sh @@ -0,0 +1,5 @@ +#!/bin/sh + +cd src/app/\@ansyn/imagery-submodules; + +npm run lint; diff --git a/scripts/submodules-testing.sh b/scripts/submodules-testing.sh new file mode 100644 index 0000000000..036965473a --- /dev/null +++ b/scripts/submodules-testing.sh @@ -0,0 +1,5 @@ +#!/bin/sh + +cd src/app/\@ansyn/imagery-submodules; + +npm run test:single-run; diff --git a/src/app/@ansyn/ansyn/ansyn.module.ts b/src/app/@ansyn/ansyn/ansyn.module.ts index 3a78096277..c32dae18fa 100644 --- a/src/app/@ansyn/ansyn/ansyn.module.ts +++ b/src/app/@ansyn/ansyn/ansyn.module.ts @@ -7,7 +7,7 @@ import { DefaultUrlSerializer, RouterModule, UrlSerializer } from '@angular/rout import { ImageryModule } from '@ansyn/imagery'; import { MapFacadeModule } from '@ansyn/map-facade'; import { MenuModule } from '@ansyn/menu'; -import { AnnotationContextMenuComponent } from '@ansyn/ol'; +import { AnnotationContextMenuComponent } from '@ansyn/imagery-ol'; import { AnsynComponent } from './ansyn/ansyn.component'; import { ANSYN_ID } from './api/ansyn-id.provider'; import { AppEffectsModule } from './app-effects/app.effects.module'; diff --git a/src/app/@ansyn/ansyn/app-effects/effects/cases.app.effects.ts b/src/app/@ansyn/ansyn/app-effects/effects/cases.app.effects.ts index 6665613b65..4ba7f57e6d 100644 --- a/src/app/@ansyn/ansyn/app-effects/effects/cases.app.effects.ts +++ b/src/app/@ansyn/ansyn/app-effects/effects/cases.app.effects.ts @@ -36,11 +36,6 @@ import { @Injectable() export class CasesAppEffects { - get defaultImageManualProcessArgs(): IImageManualProcessArgs { - return this.overlayStatusConfig.ImageProcParams.reduce((initialObject: any, imageProcParam) => { - return { ...initialObject, [imageProcParam.name]: imageProcParam.defaultValue }; - }, {}); - } @Effect({ dispatch: false }) actionsLogger$: Observable = this.actions$.pipe( @@ -150,6 +145,12 @@ export class CasesAppEffects { }) ); + get defaultImageManualProcessArgs(): IImageManualProcessArgs { + return this.overlayStatusConfig.ImageProcParams.reduce((initialObject: any, imageProcParam) => { + return { ...initialObject, [imageProcParam.name]: imageProcParam.defaultValue }; + }, {}); + } + constructor(protected actions$: Actions, protected store$: Store, diff --git a/src/app/@ansyn/ansyn/app-effects/effects/map.app.effects.ts b/src/app/@ansyn/ansyn/app-effects/effects/map.app.effects.ts index 2df84b4b62..35eb39aa59 100644 --- a/src/app/@ansyn/ansyn/app-effects/effects/map.app.effects.ts +++ b/src/app/@ansyn/ansyn/app-effects/effects/map.app.effects.ts @@ -1,6 +1,6 @@ import { Inject, Injectable } from '@angular/core'; import { CesiumMapName } from '@ansyn/imagery-cesium'; -import { DisabledOpenLayersMapName, OpenlayersMapName } from '@ansyn/ol'; +import { DisabledOpenLayersMapName, OpenlayersMapName } from '@ansyn/imagery-ol'; import { Action, Store } from '@ngrx/store'; import { Actions, Effect, ofType } from '@ngrx/effects'; import { combineLatest, EMPTY, forkJoin, from, Observable, of, pipe } from 'rxjs'; diff --git a/src/app/@ansyn/ansyn/modules/core/click-outside/click-outside.directive.ts b/src/app/@ansyn/ansyn/modules/core/click-outside/click-outside.directive.ts index 8dd586faf3..2cd4e10baf 100644 --- a/src/app/@ansyn/ansyn/modules/core/click-outside/click-outside.directive.ts +++ b/src/app/@ansyn/ansyn/modules/core/click-outside/click-outside.directive.ts @@ -10,10 +10,6 @@ import { tap } from 'rxjs/operators'; export class ClickOutsideDirective implements OnInit, OnDestroy { @Output() ansynClickOutside = new EventEmitter(); @Input() trigger: any; - @Input() - set extraClass(val: string) { - this._extraClass = val ? val.split(" ") : []; - } @Input() clickEventType: string | string[] = 'click'; _extraClass: string[]; @@ -38,13 +34,17 @@ export class ClickOutsideDirective implements OnInit, OnDestroy { ); }; - ngOnDestroy(): void { + @Input() + set extraClass(val: string) { + this._extraClass = val ? val.split(" ") : []; } - ngOnInit(): void { + constructor(public elementRef: ElementRef) { + } + ngOnDestroy(): void { } - constructor(public elementRef: ElementRef) { + ngOnInit(): void { } } diff --git a/src/app/@ansyn/ansyn/modules/core/components/ansyn-modal/ansyn-modal.component.ts b/src/app/@ansyn/ansyn/modules/core/components/ansyn-modal/ansyn-modal.component.ts index 929425950d..e6485380f5 100644 --- a/src/app/@ansyn/ansyn/modules/core/components/ansyn-modal/ansyn-modal.component.ts +++ b/src/app/@ansyn/ansyn/modules/core/components/ansyn-modal/ansyn-modal.component.ts @@ -15,6 +15,8 @@ export class AnsynModalComponent { filter(($event: KeyboardEvent) => $event.keyCode === 27), tap(() => this.show = false)); + @Output() showChange = new EventEmitter(); + @HostBinding('class.show') @Input() set show(value) { @@ -31,7 +33,6 @@ export class AnsynModalComponent { return this._show; } - @Output() showChange = new EventEmitter(); close() { this.show = false; diff --git a/src/app/@ansyn/ansyn/modules/core/components/context-menu/context-menu.component.ts b/src/app/@ansyn/ansyn/modules/core/components/context-menu/context-menu.component.ts index 800fa7cae3..1f2c63de16 100644 --- a/src/app/@ansyn/ansyn/modules/core/components/context-menu/context-menu.component.ts +++ b/src/app/@ansyn/ansyn/modules/core/components/context-menu/context-menu.component.ts @@ -43,10 +43,6 @@ export interface IOverlayButton { export class ContextMenuComponent implements OnInit { mapState$ = this.store.select(mapStateSelector); - get filterField() { - return this.config.contextMenu.filterField; - } - displayedOverlay$: Observable = this.mapState$.pipe( map(MapFacadeService.activeMap), filter(Boolean), @@ -77,38 +73,6 @@ export class ContextMenuComponent implements OnInit { private _prevfilteredOverlays = []; private _nextfilteredOverlays = []; - set filteredOverlays(value) { - this._filteredOverlays = value; - this.allSensors = this.pluckFilterField(value); - } - - set prevfilteredOverlays(value) { - this._prevfilteredOverlays = value; - this.prevSensors = this.pluckFilterField(value); - } - - set nextfilteredOverlays(value) { - this._nextfilteredOverlays = value; - this.nextSensors = this.pluckFilterField(value); - } - - get filteredOverlays() { - return this._filteredOverlays; - } - - get prevfilteredOverlays() { - return this._prevfilteredOverlays; - } - - get nextfilteredOverlays() { - return this._nextfilteredOverlays; - } - - /* - Note: 'best' and 'angle' are first in the list, in order that they do not hide the tooltips - that stem from 'first' and 'last', which are under them on the screen - * */ - overlayButtons: IOverlayButton[] = [ { name: 'best', @@ -143,6 +107,44 @@ export class ContextMenuComponent implements OnInit { } ]; + + set filteredOverlays(value) { + this._filteredOverlays = value; + this.allSensors = this.pluckFilterField(value); + } + + set prevfilteredOverlays(value) { + this._prevfilteredOverlays = value; + this.prevSensors = this.pluckFilterField(value); + } + + set nextfilteredOverlays(value) { + this._nextfilteredOverlays = value; + this.nextSensors = this.pluckFilterField(value); + } + + get filteredOverlays() { + return this._filteredOverlays; + } + + get prevfilteredOverlays() { + return this._prevfilteredOverlays; + } + + get nextfilteredOverlays() { + return this._nextfilteredOverlays; + } + + get filterField() { + return this.config.contextMenu.filterField; + } + + + /* + Note: 'best' and 'angle' are first in the list, in order that they do not hide the tooltips + that stem from 'first' and 'last', which are under them on the screen + * */ + @HostBinding('attr.tabindex') get tabindex() { return 0; diff --git a/src/app/@ansyn/ansyn/modules/core/forms/ansyn-input/ansyn-input.component.ts b/src/app/@ansyn/ansyn/modules/core/forms/ansyn-input/ansyn-input.component.ts index b1b612d84b..9694430e08 100644 --- a/src/app/@ansyn/ansyn/modules/core/forms/ansyn-input/ansyn-input.component.ts +++ b/src/app/@ansyn/ansyn/modules/core/forms/ansyn-input/ansyn-input.component.ts @@ -21,6 +21,8 @@ export class AnsynInputComponent implements ControlValueAccessor, OnInit { @Input() autocomplete: 'off' | 'on' = 'off'; @Input() @HostBinding('class.white') white: boolean; + @ViewChild('input') input: ElementRef; + disabled: boolean; private innerValue: any = ''; @@ -38,7 +40,6 @@ export class AnsynInputComponent implements ControlValueAccessor, OnInit { } } - @ViewChild('input') input: ElementRef; constructor(@Attribute('select') public selectAttr: string) { } diff --git a/src/app/@ansyn/ansyn/modules/filters/components/slider-filter-container/slider-filter-container.component.ts b/src/app/@ansyn/ansyn/modules/filters/components/slider-filter-container/slider-filter-container.component.ts index 5a4fcf2a5b..c7a3f5dbf7 100644 --- a/src/app/@ansyn/ansyn/modules/filters/components/slider-filter-container/slider-filter-container.component.ts +++ b/src/app/@ansyn/ansyn/modules/filters/components/slider-filter-container/slider-filter-container.component.ts @@ -13,6 +13,11 @@ export class SliderFilterContainerComponent { _metadata: SliderFilterMetadata; realRange: number[]; + @Output() onMetadataChange = new EventEmitter(true); + rangeValues: number[]; + + @Input() counters: SliderFilterCounters; + @Input() set metadata(value: SliderFilterMetadata) { this._metadata = value; @@ -26,11 +31,6 @@ export class SliderFilterContainerComponent { return this._metadata; } - @Input() counters: SliderFilterCounters; - - @Output() onMetadataChange = new EventEmitter(true); - rangeValues: number[]; - constructor(protected elem: ElementRef) { } diff --git a/src/app/@ansyn/ansyn/modules/menu-items/algorithms/components/tasks-form/tasks-form.component.spec.ts b/src/app/@ansyn/ansyn/modules/menu-items/algorithms/components/tasks-form/tasks-form.component.spec.ts index ea1b736f73..4a05642bb4 100644 --- a/src/app/@ansyn/ansyn/modules/menu-items/algorithms/components/tasks-form/tasks-form.component.spec.ts +++ b/src/app/@ansyn/ansyn/modules/menu-items/algorithms/components/tasks-form/tasks-form.component.spec.ts @@ -20,6 +20,7 @@ import { imageryStatusFeatureKey, ImageryStatusReducer, mapFeatureKey, MapReduce import { AnsynFormsModule } from '../../../../core/forms/ansyn-forms.module'; import { MockComponent } from '../../../../core/test/mock-component'; import { Overlay } from '../../../../overlays/models/overlay.model'; +import { Geometry } from 'geojson'; describe('TasksFormComponent', () => { let component: TasksFormComponent; @@ -109,7 +110,7 @@ describe('TasksFormComponent', () => { masterOverlay: overlays[0], region: { type: 'Point' - } + } as Geometry } }; store.dispatch(new SetCurrentTask(task)); diff --git a/src/app/@ansyn/ansyn/modules/menu-items/cases/components/edit-case/edit-case.component.spec.ts b/src/app/@ansyn/ansyn/modules/menu-items/cases/components/edit-case/edit-case.component.spec.ts index 812a8f6ab8..957783ac4d 100644 --- a/src/app/@ansyn/ansyn/modules/menu-items/cases/components/edit-case/edit-case.component.spec.ts +++ b/src/app/@ansyn/ansyn/modules/menu-items/cases/components/edit-case/edit-case.component.spec.ts @@ -96,7 +96,7 @@ describe('EditCaseComponent', () => { component.contextsList = ['fakeContext' as any]; spyOn(casesService, 'createCase').and.callFake((value) => of(value)); component.onSubmitCase(0); - expect(casesService.queryParamsHelper.updateCaseViaContext).toHaveBeenCalledWith('fakeContext', component.caseModel); + expect(casesService.queryParamsHelper.updateCaseViaContext).toHaveBeenCalledWith('fakeContext' as any, component.caseModel); expect(store.dispatch).toHaveBeenCalledWith(new AddCaseAction(component.caseModel)); expect(component.close).toHaveBeenCalled(); }); diff --git a/src/app/@ansyn/ansyn/modules/menu-items/cases/components/edit-case/edit-case.component.ts b/src/app/@ansyn/ansyn/modules/menu-items/cases/components/edit-case/edit-case.component.ts index 615bc87791..a053cc0ccf 100644 --- a/src/app/@ansyn/ansyn/modules/menu-items/cases/components/edit-case/edit-case.component.ts +++ b/src/app/@ansyn/ansyn/modules/menu-items/cases/components/edit-case/edit-case.component.ts @@ -32,10 +32,6 @@ const animations: any[] = [ }) export class EditCaseComponent implements OnInit { - @HostBinding('@modalContent') - get modalContent() { - return true; - }; casesState$: Observable = this.store.select(casesStateSelector); @@ -50,6 +46,11 @@ export class EditCaseComponent implements OnInit { caseModel: ICase; editMode = false; + @HostBinding('@modalContent') + get modalContent() { + return true; + }; + constructor(protected store: Store, protected casesService: CasesService) { } diff --git a/src/app/@ansyn/ansyn/modules/menu-items/cases/components/save-case/save-case.component.ts b/src/app/@ansyn/ansyn/modules/menu-items/cases/components/save-case/save-case.component.ts index d5adb9a7ac..d04d594669 100644 --- a/src/app/@ansyn/ansyn/modules/menu-items/cases/components/save-case/save-case.component.ts +++ b/src/app/@ansyn/ansyn/modules/menu-items/cases/components/save-case/save-case.component.ts @@ -33,13 +33,13 @@ const animations: any[] = [ animations }) export class SaveCaseComponent { + caseName: string; + @HostBinding('@modalContent') get modalContent() { return true; }; - caseName: string; - constructor(protected store: Store, protected casesService: CasesService) { } diff --git a/src/app/@ansyn/ansyn/modules/menu-items/cases/services/cases.service.spec.ts b/src/app/@ansyn/ansyn/modules/menu-items/cases/services/cases.service.spec.ts index 2a7271a352..e622ff2152 100644 --- a/src/app/@ansyn/ansyn/modules/menu-items/cases/services/cases.service.spec.ts +++ b/src/app/@ansyn/ansyn/modules/menu-items/cases/services/cases.service.spec.ts @@ -120,7 +120,7 @@ describe('CasesService', () => { creationTime: newDate, lastModified: newDate, autoSave: true - }, + } as any, data: casesService.pluckIdSourceType(selectedCase.state) }); }); @@ -140,7 +140,7 @@ describe('CasesService', () => { creationTime: selectedCase.creationTime, lastModified: selectedCase.lastModified, autoSave: true - }, + } as any, data: casesService.pluckIdSourceType(selectedCase.state) }); }); diff --git a/src/app/@ansyn/ansyn/modules/menu-items/cases/services/helpers/cases.service.query-params-helper.spec.ts b/src/app/@ansyn/ansyn/modules/menu-items/cases/services/helpers/cases.service.query-params-helper.spec.ts index 6bc853fd92..b89a64b827 100644 --- a/src/app/@ansyn/ansyn/modules/menu-items/cases/services/helpers/cases.service.query-params-helper.spec.ts +++ b/src/app/@ansyn/ansyn/modules/menu-items/cases/services/helpers/cases.service.query-params-helper.spec.ts @@ -109,7 +109,7 @@ describe('CasesService', () => { expect(rison.decode).toHaveBeenCalledWith('facetsValue'); queryParamsHelper.decodeCaseObjects('time', { from: 'from', to: 'to' }); - expect(rison.decode).toHaveBeenCalledWith({ from: 'from', to: 'to' }); + expect(rison.decode).toHaveBeenCalledWith({ from: 'from', to: 'to' } as any); queryParamsHelper.decodeCaseObjects('maps', 'mapsValue'); expect(rison.decode).toHaveBeenCalledWith('mapsValue'); diff --git a/src/app/@ansyn/ansyn/modules/menu-items/tools/actions/tools.actions.ts b/src/app/@ansyn/ansyn/modules/menu-items/tools/actions/tools.actions.ts index 7218ec2bad..66a5083ba2 100644 --- a/src/app/@ansyn/ansyn/modules/menu-items/tools/actions/tools.actions.ts +++ b/src/app/@ansyn/ansyn/modules/menu-items/tools/actions/tools.actions.ts @@ -3,7 +3,7 @@ import { IVisualizerEntity, IVisualizerStyle } from '@ansyn/imagery'; import { SubMenuEnum, toolsFlags } from '../reducers/tools.reducer'; import { type } from '../../../core/utils/type'; import { OverlayDisplayMode } from '../overlays-display-mode/overlays-display-mode.component'; -import { AnnotationMode, IUpdateFeatureEvent } from '@ansyn/ol'; +import { AnnotationMode, IUpdateFeatureEvent } from '@ansyn/imagery-ol'; import { IMeasureData, IMeasureDataOptions } from '../models/measure-data'; export const ToolsActionsTypes = { diff --git a/src/app/@ansyn/ansyn/modules/menu-items/tools/components/annotations-control/annotations-control.component.spec.ts b/src/app/@ansyn/ansyn/modules/menu-items/tools/components/annotations-control/annotations-control.component.spec.ts index fff488355f..946d2d9299 100644 --- a/src/app/@ansyn/ansyn/modules/menu-items/tools/components/annotations-control/annotations-control.component.spec.ts +++ b/src/app/@ansyn/ansyn/modules/menu-items/tools/components/annotations-control/annotations-control.component.spec.ts @@ -4,11 +4,10 @@ import { AnnotationsControlComponent } from './annotations-control.component'; import { Store, StoreModule } from '@ngrx/store'; import { toolsFeatureKey, ToolsReducer } from '../../reducers/tools.reducer'; import { AnnotationSetProperties, SetAnnotationMode } from '../../actions/tools.actions'; -import { AnnotationMode, AnnotationsWeightComponent, ColorPickerComponent } from '@ansyn/ol'; +import { AnnotationMode, AnnotationsWeightComponent, ColorPickerComponent } from '@ansyn/imagery-ol'; import { ColorPickerModule } from 'ngx-color-picker'; import { TranslateModule } from '@ngx-translate/core'; import { MockComponent } from '../../../../core/test/mock-component'; -import { mockAnnotationsColorComponent } from '../../../../../../ol/plugins/annotations/annotations-context-menu/components/annotations-color/annotations-color.component.mock'; const mockComboBoxOptionComponent = MockComponent({ selector: 'ansyn-combo-box-option', @@ -29,7 +28,7 @@ describe('AnnotationsControlComponent', () => { beforeEach(async(() => { TestBed.configureTestingModule({ - declarations: [AnnotationsControlComponent, ColorPickerComponent, mockAnnotationsColorComponent, AnnotationsWeightComponent, mockComboBoxComponent, mockComboBoxOptionComponent], + declarations: [AnnotationsControlComponent, ColorPickerComponent, AnnotationsWeightComponent, mockComboBoxComponent, mockComboBoxOptionComponent], imports: [ FormsModule, StoreModule.forRoot({ [toolsFeatureKey]: ToolsReducer }), diff --git a/src/app/@ansyn/ansyn/modules/menu-items/tools/components/annotations-control/annotations-control.component.ts b/src/app/@ansyn/ansyn/modules/menu-items/tools/components/annotations-control/annotations-control.component.ts index e9decc3615..f2973bdc4f 100644 --- a/src/app/@ansyn/ansyn/modules/menu-items/tools/components/annotations-control/annotations-control.component.ts +++ b/src/app/@ansyn/ansyn/modules/menu-items/tools/components/annotations-control/annotations-control.component.ts @@ -20,7 +20,7 @@ import { AutoSubscription, AutoSubscriptions } from 'auto-subscriptions'; import { selectActiveAnnotationLayer, selectLayers } from '../../../layers-manager/reducers/layers.reducer'; import { ILayer, LayerType } from '../../../layers-manager/models/layers.model'; import { SetActiveAnnotationLayer } from '../../../layers-manager/actions/layers.actions'; -import { ANNOTATION_MODE_LIST, AnnotationMode, IStyleWeight } from '@ansyn/ol'; +import { ANNOTATION_MODE_LIST, AnnotationMode, IStyleWeight } from '@ansyn/imagery-ol'; import { ClickOutsideService } from '../../../../core/click-outside/click-outside.service'; export enum SelectionBoxTypes { @@ -50,14 +50,6 @@ export class AnnotationsControlComponent implements OnInit, OnDestroy { private _expand: boolean; public selectedBox: SelectionBoxTypes; - get SelectionBoxTypes() { - return SelectionBoxTypes; - } - - get Boolean() { - return Boolean; - } - annotationLayer$ = this.store.pipe( select(selectLayers), map((layers: ILayer[]) => layers.filter(({ type }) => type === LayerType.annotation)) @@ -122,6 +114,14 @@ export class AnnotationsControlComponent implements OnInit, OnDestroy { return this._expand; } + get SelectionBoxTypes() { + return SelectionBoxTypes; + } + + get Boolean() { + return Boolean; + } + constructor( protected element: ElementRef, public store: Store, diff --git a/src/app/@ansyn/ansyn/modules/menu-items/tools/overlays-display-mode/overlays-display-mode.component.ts b/src/app/@ansyn/ansyn/modules/menu-items/tools/overlays-display-mode/overlays-display-mode.component.ts index 5930b76589..438b6a9e10 100644 --- a/src/app/@ansyn/ansyn/modules/menu-items/tools/overlays-display-mode/overlays-display-mode.component.ts +++ b/src/app/@ansyn/ansyn/modules/menu-items/tools/overlays-display-mode/overlays-display-mode.component.ts @@ -20,6 +20,9 @@ export class OverlaysDisplayModeComponent { public _disabled = false; public _visualizerType: OverlayDisplayMode; + @Output() modeOnChange = new EventEmitter(); + @Output() expandChange = new EventEmitter(); + radioIds = { switchNone: UUID.UUID(), switchHeatMap: UUID.UUID(), @@ -48,8 +51,6 @@ export class OverlaysDisplayModeComponent { return this._visualizerType; } - @Output() expandChange = new EventEmitter(); - @HostBinding('class.expand') @Input() set expand(value) { this._expand = value; @@ -69,7 +70,6 @@ export class OverlaysDisplayModeComponent { return this._disabled; } - @Output() modeOnChange = new EventEmitter(); @Input() set modeOn(value) { diff --git a/src/app/@ansyn/ansyn/modules/menu-items/tools/reducers/tools.reducer.spec.ts b/src/app/@ansyn/ansyn/modules/menu-items/tools/reducers/tools.reducer.spec.ts index 93a40dfa4f..10d0fec7dc 100644 --- a/src/app/@ansyn/ansyn/modules/menu-items/tools/reducers/tools.reducer.spec.ts +++ b/src/app/@ansyn/ansyn/modules/menu-items/tools/reducers/tools.reducer.spec.ts @@ -1,7 +1,7 @@ import { toolsFlags, toolsInitialState, ToolsReducer } from './tools.reducer'; import { AnnotationSetProperties, SetAnnotationMode } from '../actions/tools.actions'; import { cloneDeep } from 'lodash'; -import { AnnotationMode } from '@ansyn/ol'; +import { AnnotationMode } from '@ansyn/imagery-ol'; import { Action } from '@ngrx/store'; describe('ToolsReducer', () => { diff --git a/src/app/@ansyn/ansyn/modules/menu-items/tools/reducers/tools.reducer.ts b/src/app/@ansyn/ansyn/modules/menu-items/tools/reducers/tools.reducer.ts index 5db8542cf9..0314a5d40b 100644 --- a/src/app/@ansyn/ansyn/modules/menu-items/tools/reducers/tools.reducer.ts +++ b/src/app/@ansyn/ansyn/modules/menu-items/tools/reducers/tools.reducer.ts @@ -15,7 +15,7 @@ import { import { createFeatureSelector, createSelector, MemoizedSelector } from '@ngrx/store'; import { IVisualizerEntity, IVisualizerStyle } from '@ansyn/imagery'; import { OverlayDisplayMode } from '../overlays-display-mode/overlays-display-mode.component'; -import { AnnotationMode } from '@ansyn/ol'; +import { AnnotationMode } from '@ansyn/imagery-ol'; import { IMeasureData, IMeasureDataOptions } from '../models/measure-data'; export enum toolsFlags { diff --git a/src/app/@ansyn/ansyn/modules/menu-items/tools/tools.module.ts b/src/app/@ansyn/ansyn/modules/menu-items/tools/tools.module.ts index 8b2ff20329..0e691ed009 100644 --- a/src/app/@ansyn/ansyn/modules/menu-items/tools/tools.module.ts +++ b/src/app/@ansyn/ansyn/modules/menu-items/tools/tools.module.ts @@ -9,7 +9,7 @@ import { StoreModule } from '@ngrx/store'; import { toolsFeatureKey, ToolsReducer } from './reducers/tools.reducer'; import { MapFacadeModule, ProjectionConverterService } from '@ansyn/map-facade'; import { IToolsConfig, toolsConfig } from './models/tools-config'; -import { AnnotationsContextMenuModule } from '@ansyn/ol'; +import { AnnotationsContextMenuModule } from '@ansyn/imagery-ol'; import { MeasureControlComponent } from './components/measure-control/measure-control.component'; import { TranslateModule } from '@ngx-translate/core'; import { ExportMapsPopupComponent } from './export-maps-popup/export-maps-popup.component'; diff --git a/src/app/@ansyn/ansyn/modules/overlays/components/overlay-overview/overlay-overview.component.ts b/src/app/@ansyn/ansyn/modules/overlays/components/overlay-overview/overlay-overview.component.ts index 9effc149ff..3ca2f7bd29 100644 --- a/src/app/@ansyn/ansyn/modules/overlays/components/overlay-overview/overlay-overview.component.ts +++ b/src/app/@ansyn/ansyn/modules/overlays/components/overlay-overview/overlay-overview.component.ts @@ -50,18 +50,6 @@ export class OverlayOverviewComponent implements OnInit, OnDestroy { public rotation = 0; protected topElement = this.el.nativeElement.parentElement; - get dropElement(): Element { - return this.el.nativeElement.ownerDocument.getElementById(`dropId-${ this.overlayId }`); - } - - public get const() { - return overlayOverviewComponentConstants; - } - - public get errorSrc() { - return this.const.OVERLAY_OVERVIEW_FAILED; - }; - @HostBinding('class.show') isHoveringOverDrop = false; @HostBinding('style.left.px') left = 0; @HostBinding('style.top.px') top = 0; @@ -79,6 +67,18 @@ export class OverlayOverviewComponent implements OnInit, OnDestroy { tap(this.onHoveredOverlay.bind(this)) ); + get dropElement(): Element { + return this.el.nativeElement.ownerDocument.getElementById(`dropId-${ this.overlayId }`); + } + + public get const() { + return overlayOverviewComponentConstants; + } + + public get errorSrc() { + return this.const.OVERLAY_OVERVIEW_FAILED; + }; + constructor( public store$: Store, public actions$: Actions, diff --git a/src/app/@ansyn/ansyn/modules/overlays/overlay-status/components/image-processing-control/image-processing-control.component.ts b/src/app/@ansyn/ansyn/modules/overlays/overlay-status/components/image-processing-control/image-processing-control.component.ts index ffc52f91e4..0c0d7a8111 100644 --- a/src/app/@ansyn/ansyn/modules/overlays/overlay-status/components/image-processing-control/image-processing-control.component.ts +++ b/src/app/@ansyn/ansyn/modules/overlays/overlay-status/components/image-processing-control/image-processing-control.component.ts @@ -20,6 +20,8 @@ export class ImageProcessingControlComponent implements OnInit, OnDestroy { private subscriptions: Subscription[] = []; + imageManualProcessArgs: IImageManualProcessArgs = this.defaultImageManualProcessArgs; + public manualImageProcessingParams$: Observable = this.store$.select(overlayStatusStateSelector).pipe( map((overlayStatusState: IOverlayStatusState) => overlayStatusState.manualImageProcessingParams), distinctUntilChanged(), @@ -37,9 +39,6 @@ export class ImageProcessingControlComponent implements OnInit, OnDestroy { }, {}); } - imageManualProcessArgs: IImageManualProcessArgs = this.defaultImageManualProcessArgs; - - constructor(public store$: Store, @Inject(overlayStatusConfig) protected config: IOverlayStatusConfig) { } diff --git a/src/app/@ansyn/ansyn/modules/overlays/overlay-status/effects/overlay-status.effects.ts b/src/app/@ansyn/ansyn/modules/overlays/overlay-status/effects/overlay-status.effects.ts index 9ecaf42aec..566ebea85f 100644 --- a/src/app/@ansyn/ansyn/modules/overlays/overlay-status/effects/overlay-status.effects.ts +++ b/src/app/@ansyn/ansyn/modules/overlays/overlay-status/effects/overlay-status.effects.ts @@ -17,7 +17,7 @@ import { UpdateMapAction, SetLayoutSuccessAction, selectActiveMapId, IMapState } from '@ansyn/map-facade'; -import { AnnotationMode, DisabledOpenLayersMapName, OpenlayersMapName } from '@ansyn/ol'; +import { AnnotationMode, DisabledOpenLayersMapName, OpenlayersMapName } from '@ansyn/imagery-ol'; import { Actions, Effect, ofType } from '@ngrx/effects'; import { Dictionary } from '@ngrx/entity'; import { Action, select, Store } from '@ngrx/store'; diff --git a/src/app/@ansyn/ansyn/modules/overlays/overlay-status/overlay-status.component.ts b/src/app/@ansyn/ansyn/modules/overlays/overlay-status/overlay-status.component.ts index d65710b499..97f1ff4242 100644 --- a/src/app/@ansyn/ansyn/modules/overlays/overlay-status/overlay-status.component.ts +++ b/src/app/@ansyn/ansyn/modules/overlays/overlay-status/overlay-status.component.ts @@ -23,7 +23,7 @@ import { selectRemovedOverlays, selectTranslationData } from './reducers/overlay-status.reducer'; -import { AnnotationMode } from '@ansyn/ol'; +import { AnnotationMode } from '@ansyn/imagery-ol'; import { ITranslationData } from '../../menu-items/cases/models/case.model'; import { Actions, ofType } from '@ngrx/effects'; import { diff --git a/src/app/@ansyn/ansyn/modules/plugins/app/alerts/alerts.plugin.ts b/src/app/@ansyn/ansyn/modules/plugins/app/alerts/alerts.plugin.ts index 9de19aa5f1..92e3f02254 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/app/alerts/alerts.plugin.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/app/alerts/alerts.plugin.ts @@ -4,7 +4,7 @@ import { IImageryMapPosition, ImageryPlugin } from '@ansyn/imagery'; -import { OpenLayersDisabledMap, OpenLayersMap } from '@ansyn/ol'; +import { OpenLayersDisabledMap, OpenLayersMap } from '@ansyn/imagery-ol'; import { Store } from '@ngrx/store'; import { combineLatest, Observable, of } from 'rxjs'; import { selectMapPositionByMapId, selectOverlayByMapId } from '@ansyn/map-facade'; diff --git a/src/app/@ansyn/ansyn/modules/plugins/app/context-menu/context-menu.plugin.spec.ts b/src/app/@ansyn/ansyn/modules/plugins/app/context-menu/context-menu.plugin.spec.ts index 9e48c36400..da488d3555 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/app/context-menu/context-menu.plugin.spec.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/app/context-menu/context-menu.plugin.spec.ts @@ -6,7 +6,7 @@ import { cold, hot } from 'jasmine-marbles'; import { provideMockActions } from '@ngrx/effects/testing'; import { Observable } from 'rxjs'; import { ContextMenuPlugin } from './context-menu.plugin'; -import { OpenLayersProjectionService } from '@ansyn/ol'; +import { OpenLayersProjectionService } from '@ansyn/imagery-ol'; import { DisplayOverlayFromStoreAction } from '../../../overlays/actions/overlays.actions'; import { CesiumProjectionService } from '@ansyn/imagery-cesium'; diff --git a/src/app/@ansyn/ansyn/modules/plugins/app/context-menu/context-menu.plugin.ts b/src/app/@ansyn/ansyn/modules/plugins/app/context-menu/context-menu.plugin.ts index bb75c53a09..ca6cd75c02 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/app/context-menu/context-menu.plugin.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/app/context-menu/context-menu.plugin.ts @@ -10,7 +10,7 @@ import { AutoSubscription } from 'auto-subscriptions'; import { overlaysStateSelector } from '../../../overlays/reducers/overlays.reducer'; import { DisplayOverlayFromStoreAction } from '../../../overlays/actions/overlays.actions'; import { IOverlay } from '../../../overlays/models/overlay.model'; -import { OpenLayersMap, OpenlayersMapName, OpenLayersProjectionService } from '@ansyn/ol'; +import { OpenLayersMap, OpenlayersMapName, OpenLayersProjectionService } from '@ansyn/imagery-ol'; import { CesiumMap, CesiumMapName, CesiumProjectionService } from '@ansyn/imagery-cesium'; import { Injectable } from '@angular/core'; diff --git a/src/app/@ansyn/ansyn/modules/plugins/components/imagery-dimension-mode/imagery-dimension-mode.component.ts b/src/app/@ansyn/ansyn/modules/plugins/components/imagery-dimension-mode/imagery-dimension-mode.component.ts index cef76d0535..38feefaeab 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/components/imagery-dimension-mode/imagery-dimension-mode.component.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/components/imagery-dimension-mode/imagery-dimension-mode.component.ts @@ -4,7 +4,7 @@ import { AutoSubscription, AutoSubscriptions } from 'auto-subscriptions'; import { get as _get } from 'lodash'; import { Store } from '@ngrx/store'; import { ImageryCommunicatorService } from '@ansyn/imagery'; -import { DisabledOpenLayersMapName, OpenlayersMapName } from '@ansyn/ol'; +import { DisabledOpenLayersMapName, OpenlayersMapName } from '@ansyn/imagery-ol'; import { CesiumMap, CesiumMapName } from '@ansyn/imagery-cesium'; import { take, tap } from 'rxjs/operators'; import { CoreConfig } from '../../../core/models/core.config'; diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/openlayers.plugins.module.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/openlayers.plugins.module.ts index 9c51fd9873..7ae92d1ae4 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/openlayers.plugins.module.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/openlayers.plugins.module.ts @@ -34,13 +34,13 @@ import { OpenLayersDisabledMap, OpenLayersMap, OpenLayersStaticImageSourceProvider, - OpenLayerTileWMSSourceProvider -} from '@ansyn/ol'; + OpenLayerTileWMSSourceProvider, + OpenLayersAirbusSourceProvider, + OpenLayerPic4CartoSourceProvider +} from '@ansyn/imagery-ol'; import { ScannedAreaVisualizer } from './plugins/visualizers/scanned-area/scanned-area.visualizer'; import { OpenlayersAnaglyphSensorModule } from './plugins/anaglyph-sensor/anaglyph-sensor.module'; -import { OpenLayersAirbusSourceProvider } from '@ansyn/ol'; import { OverlayHoverVisualizer } from "./plugins/visualizers/overlays/overlay-hover-visualizer"; -import { OpenLayerPic4CartoSourceProvider } from '@ansyn/ol'; @NgModule({ imports: [ diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/anaglyph-sensor/plugin/anaglyph-sensor.plugin.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/anaglyph-sensor/plugin/anaglyph-sensor.plugin.ts index 12c9fba9fb..5d1390de4e 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/anaglyph-sensor/plugin/anaglyph-sensor.plugin.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/anaglyph-sensor/plugin/anaglyph-sensor.plugin.ts @@ -1,6 +1,6 @@ import { BaseImageryPlugin, ImageryPlugin } from '@ansyn/imagery'; import { AutoSubscription } from 'auto-subscriptions'; -import { OpenLayersDisabledMap, OpenLayersMap } from '@ansyn/ol'; +import { OpenLayersDisabledMap, OpenLayersMap } from '@ansyn/imagery-ol'; import { selectOverlayByMapId } from '@ansyn/map-facade'; import { select, Store } from '@ngrx/store'; import { take, tap } from 'rxjs/operators'; diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/anaglyph-sensor/service/anaglyph-sensor.service.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/anaglyph-sensor/service/anaglyph-sensor.service.ts index 99c469fad7..d05a6b20eb 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/anaglyph-sensor/service/anaglyph-sensor.service.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/anaglyph-sensor/service/anaglyph-sensor.service.ts @@ -6,7 +6,7 @@ import { BaseMapSourceProvider, CommunicatorEntity, ImageryCommunicatorService, IMapSettings } from '@ansyn/imagery'; import { catchError, map, mergeMap } from 'rxjs/operators'; -import { DisabledOpenLayersMapName, OpenlayersMapName, OpenLayersStaticImageSourceProviderSourceType } from '@ansyn/ol'; +import { DisabledOpenLayersMapName, OpenlayersMapName, OpenLayersStaticImageSourceProviderSourceType } from '@ansyn/imagery-ol'; import { cloneDeep } from 'lodash'; import { fromPromise } from 'rxjs/internal-compatibility'; import { CesiumMapName } from '@ansyn/imagery-cesium'; diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/center-marker/center-marker.plugin.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/center-marker/center-marker.plugin.ts index 5219df646f..4d3f5dc936 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/center-marker/center-marker.plugin.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/center-marker/center-marker.plugin.ts @@ -7,7 +7,7 @@ import VectorLayer from 'ol/layer/Vector'; import { BaseImageryMap, BaseImageryPlugin, IImageryMapPosition, ImageryPlugin } from '@ansyn/imagery'; import { Observable, of } from 'rxjs'; import { AutoSubscription } from 'auto-subscriptions'; -import { OpenLayersMap } from '@ansyn/ol'; +import { OpenLayersMap } from '@ansyn/imagery-ol'; @ImageryPlugin({ supported: [OpenLayersMap], diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/image-processing/image-processing.plugin.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/image-processing/image-processing.plugin.ts index 5f4f275d68..987c4bb000 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/image-processing/image-processing.plugin.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/image-processing/image-processing.plugin.ts @@ -4,7 +4,7 @@ import ImageLayer from 'ol/layer/Image'; import { BaseImageryPlugin, CommunicatorEntity, ImageryPlugin } from '@ansyn/imagery'; import { Store } from '@ngrx/store'; import { AutoSubscription } from 'auto-subscriptions'; -import { IMAGE_PROCESS_ATTRIBUTE, OpenLayersDisabledMap, OpenLayersMap, ProjectableRaster } from '@ansyn/ol'; +import { IMAGE_PROCESS_ATTRIBUTE, OpenLayersDisabledMap, OpenLayersMap, ProjectableRaster } from '@ansyn/imagery-ol'; import { OpenLayersImageProcessing } from './image-processing'; import { distinctUntilChanged, filter, map, take, tap } from 'rxjs/operators'; import { isEqual } from 'lodash'; diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/image-processing/image-processing.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/image-processing/image-processing.ts index 59ea5ec1a6..b50649be78 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/image-processing/image-processing.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/image-processing/image-processing.ts @@ -1,4 +1,4 @@ -import { ProjectableRaster } from '@ansyn/ol'; +import { ProjectableRaster } from '@ansyn/imagery-ol'; // skipOnValue is the value which the image do not require any processing (e.i. the natural/default value) export const IMG_PROCESS_ORDER = [ diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/layers/openlayers-arcgis-layers.pulgin.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/layers/openlayers-arcgis-layers.pulgin.ts index 37dcbafd82..ec966196f7 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/layers/openlayers-arcgis-layers.pulgin.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/layers/openlayers-arcgis-layers.pulgin.ts @@ -2,7 +2,7 @@ import { Store } from '@ngrx/store'; import XYZ from 'ol/source/XYZ'; import TileLayer from 'ol/layer/Tile'; import { EPSG_4326, ImageryPlugin } from '@ansyn/imagery'; -import { OpenLayersMap } from '@ansyn/ol'; +import { OpenLayersMap } from '@ansyn/imagery-ol'; import * as proj from 'ol/proj'; import { OpenlayersBaseLayersPlugins } from './openlayers-base-layers.plugins'; import { ILayer, layerPluginTypeEnum } from '../../../../menu-items/layers-manager/models/layers.model'; diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/layers/openlayers-base-layers.plugins.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/layers/openlayers-base-layers.plugins.ts index 5f7787af8b..e36c62aa9b 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/layers/openlayers-base-layers.plugins.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/layers/openlayers-base-layers.plugins.ts @@ -5,7 +5,7 @@ import { combineLatest, Observable, Subscription } from 'rxjs'; import { BaseImageryPlugin } from '@ansyn/imagery'; import { selectHideLayersOnMap } from '@ansyn/map-facade'; import { AutoSubscription } from 'auto-subscriptions'; -import { OpenLayersMap } from '@ansyn/ol'; +import { OpenLayersMap } from '@ansyn/imagery-ol'; import { ILayer } from '../../../../menu-items/layers-manager/models/layers.model'; import { selectLayers, selectSelectedLayersIds } from '../../../../menu-items/layers-manager/reducers/layers.reducer'; diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/layers/openlayers-geoJson-layers.visualizer.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/layers/openlayers-geoJson-layers.visualizer.ts index cd0e9608fc..f446fd7fa9 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/layers/openlayers-geoJson-layers.visualizer.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/layers/openlayers-geoJson-layers.visualizer.ts @@ -5,7 +5,7 @@ import { catchError, debounceTime, filter, map, mergeMap, withLatestFrom } from import { combineLatest, forkJoin, Observable, of, Subscription } from 'rxjs'; import { selectHideLayersOnMap, selectMapPositionByMapId, SetToastMessageAction } from '@ansyn/map-facade'; import { UUID } from 'angular2-uuid'; -import { EntitiesVisualizer, OpenLayersMap } from '@ansyn/ol'; +import { EntitiesVisualizer, OpenLayersMap } from '@ansyn/imagery-ol'; import { ILayer, layerPluginTypeEnum } from '../../../../menu-items/layers-manager/models/layers.model'; import { selectLayers, selectSelectedLayersIds } from '../../../../menu-items/layers-manager/reducers/layers.reducer'; import { booleanContains, intersect } from '@turf/turf'; diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/layers/openlayers-osm-layers.plugin.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/layers/openlayers-osm-layers.plugin.ts index da55af6ce8..d12e63925f 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/layers/openlayers-osm-layers.plugin.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/layers/openlayers-osm-layers.plugin.ts @@ -2,7 +2,7 @@ import { Store } from '@ngrx/store'; import OSM from 'ol/source/OSM'; import TileLayer from 'ol/layer/Tile'; import { ImageryPlugin } from '@ansyn/imagery'; -import { OpenLayersMap } from '@ansyn/ol'; +import { OpenLayersMap } from '@ansyn/imagery-ol'; import { OpenlayersBaseLayersPlugins } from './openlayers-base-layers.plugins'; import { ILayer, layerPluginTypeEnum } from '../../../../menu-items/layers-manager/models/layers.model'; import { Observable, of } from 'rxjs'; diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/monitor/monitor.plugin.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/monitor/monitor.plugin.ts index 3e16d24277..34744745d6 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/monitor/monitor.plugin.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/monitor/monitor.plugin.ts @@ -1,7 +1,7 @@ import { Store } from '@ngrx/store'; import { BaseImageryPlugin, ImageryPlugin, IMapErrorMessage, IMapProgress } from '@ansyn/imagery'; import { SetProgressBarAction, SetToastMessageAction } from '@ansyn/map-facade'; -import { OpenLayersDisabledMap, OpenLayersMap } from '@ansyn/ol'; +import { OpenLayersDisabledMap, OpenLayersMap } from '@ansyn/imagery-ol'; import { tap } from 'rxjs/operators'; import { Subscription } from 'rxjs'; diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/north-calculations/north-calculations.plugin.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/north-calculations/north-calculations.plugin.ts index 9931ec6007..e6ce29fbd6 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/north-calculations/north-calculations.plugin.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/north-calculations/north-calculations.plugin.ts @@ -22,7 +22,7 @@ import { PointToImageOrientationAction, } from '@ansyn/map-facade'; import { AutoSubscription } from 'auto-subscriptions'; -import { OpenLayersMap, OpenLayersProjectionService } from '@ansyn/ol'; +import { OpenLayersMap, OpenLayersProjectionService } from '@ansyn/imagery-ol'; import { catchError, debounceTime, diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/algorithms/task-region.visualizer.spec.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/algorithms/task-region.visualizer.spec.ts index 64b7077549..80c6bb03f3 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/algorithms/task-region.visualizer.spec.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/algorithms/task-region.visualizer.spec.ts @@ -3,7 +3,7 @@ import { Store, StoreModule } from '@ngrx/store'; import { EffectsModule } from '@ngrx/effects'; import { TaskRegionVisualizer } from './task-region.visualizer'; import { TasksService } from '../../../../../menu-items/algorithms/services/tasks.service'; -import { OpenLayersProjectionService } from '@ansyn/ol'; +import { OpenLayersProjectionService } from '@ansyn/imagery-ol'; describe('TaskRegionVisualizer', () => { let algorithmTaskRegionVisualizer: TaskRegionVisualizer; diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/algorithms/task-region.visualizer.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/algorithms/task-region.visualizer.ts index a5ec360ee7..5a30a10b35 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/algorithms/task-region.visualizer.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/algorithms/task-region.visualizer.ts @@ -12,7 +12,7 @@ import { import Draw from 'ol/interaction/Draw'; import { AutoSubscription } from 'auto-subscriptions'; import { distinctUntilChanged, map, mergeMap, take, tap } from 'rxjs/operators'; -import { EntitiesVisualizer, OpenLayersMap, OpenLayersProjectionService } from '@ansyn/ol'; +import { EntitiesVisualizer, OpenLayersMap, OpenLayersProjectionService } from '@ansyn/imagery-ol'; import Icon from 'ol/style/Icon'; import Style from 'ol/style/Style'; import Stroke from 'ol/style/Stroke'; @@ -148,7 +148,7 @@ export class TaskRegionVisualizer extends EntitiesVisualizer { } drawRegionOnMap(point: GeometryObject): Observable { - const coordinates = getPointByGeometry(point).coordinates; + const coordinates = getPointByGeometry(point as any).coordinates; const featureJson = getPolygonByPointAndRadius(coordinates, this.regionLengthInMeter / 2000); const id = 'algorithmTaskRegion'; const entities = [{ id, featureJson }]; diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/overlays/base-footprints-visualizer.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/overlays/base-footprints-visualizer.ts index 87feac23cf..bcf62d6d03 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/overlays/base-footprints-visualizer.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/overlays/base-footprints-visualizer.ts @@ -7,7 +7,7 @@ import * as turf from '@turf/turf'; import { selectDrops } from '../../../../../overlays/reducers/overlays.reducer'; import { OverlaysService } from '../../../../../overlays/services/overlays.service'; import { IOverlay } from '../../../../../overlays/models/overlay.model'; -import { EntitiesVisualizer } from '@ansyn/ol'; +import { EntitiesVisualizer } from '@ansyn/imagery-ol'; import { OverlayDisplayMode } from '../../../../../menu-items/tools/overlays-display-mode/overlays-display-mode.component'; import { selectOverlayDisplayModeByMapId } from '@ansyn/map-facade'; diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/overlays/frame-visualizer.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/overlays/frame-visualizer.ts index 3ecae4cc84..4a36d39cc2 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/overlays/frame-visualizer.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/overlays/frame-visualizer.ts @@ -6,7 +6,7 @@ import { select, Store } from '@ngrx/store'; import { selectActiveMapId } from '@ansyn/map-facade'; import { AutoSubscription } from 'auto-subscriptions'; import { map, tap } from 'rxjs/operators'; -import { EntitiesVisualizer, OpenLayersMap } from '@ansyn/ol'; +import { EntitiesVisualizer, OpenLayersMap } from '@ansyn/imagery-ol'; import { UUID } from 'angular2-uuid'; import { feature } from '@turf/turf'; diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/overlays/heatmap-visualizer.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/overlays/heatmap-visualizer.ts index 7678d3d9a8..61f5af1110 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/overlays/heatmap-visualizer.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/overlays/heatmap-visualizer.ts @@ -2,7 +2,7 @@ import { OverlaysService } from '../../../../../overlays/services/overlays.servi import { Store } from '@ngrx/store'; import { Actions } from '@ngrx/effects'; import { ImageryVisualizer, IVisualizersConfig, VisualizersConfig } from '@ansyn/imagery'; -import { OpenLayersMap } from '@ansyn/ol'; +import { OpenLayersMap } from '@ansyn/imagery-ol'; import { BaseFootprintsVisualizer } from './base-footprints-visualizer'; import { Inject } from '@angular/core'; diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/overlays/overlay-hover-visualizer.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/overlays/overlay-hover-visualizer.ts index 1147a38f5d..1eb58dbb1f 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/overlays/overlay-hover-visualizer.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/overlays/overlay-hover-visualizer.ts @@ -5,7 +5,7 @@ import { Actions } from '@ngrx/effects'; import { select, Store } from '@ngrx/store'; import { AutoSubscription } from 'auto-subscriptions'; import { map, switchMap, tap, withLatestFrom } from 'rxjs/operators'; -import { EntitiesVisualizer, OpenLayersMap } from '@ansyn/ol'; +import { EntitiesVisualizer, OpenLayersMap } from '@ansyn/imagery-ol'; import { ExtendMap } from "../../../../../overlays/reducers/extendedMap.class"; import { IMarkUpData, MarkUpClass, selectDropMarkup } from "../../../../../overlays/reducers/overlays.reducer"; import { OverlaysService } from "../../../../../overlays/services/overlays.service"; diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/overlays/polyline-visualizer.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/overlays/polyline-visualizer.ts index 8fc901c4d5..15c9f0eacd 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/overlays/polyline-visualizer.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/overlays/polyline-visualizer.ts @@ -18,7 +18,7 @@ import { Store } from '@ngrx/store'; import { MultiLineString } from 'geojson'; import { distinctUntilChanged, pluck, tap } from 'rxjs/operators'; import { AutoSubscription } from 'auto-subscriptions'; -import { OpenLayersMap } from '@ansyn/ol'; +import { OpenLayersMap } from '@ansyn/imagery-ol'; import { BaseFootprintsVisualizer } from './base-footprints-visualizer'; import { DisplayOverlayFromStoreAction, SetMarkUp } from '../../../../../overlays/actions/overlays.actions'; import { diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/region/pin-point.visualizer.spec.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/region/pin-point.visualizer.spec.ts index 777d49ebea..2fbcd433bd 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/region/pin-point.visualizer.spec.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/region/pin-point.visualizer.spec.ts @@ -2,7 +2,7 @@ import { inject, TestBed } from '@angular/core/testing'; import { Store, StoreModule } from '@ngrx/store'; import { Actions } from '@ngrx/effects'; import { PinPointVisualizer } from './pin-point.visualizer'; -import { OpenLayersProjectionService } from '@ansyn/ol'; +import { OpenLayersProjectionService } from '@ansyn/imagery-ol'; describe('PinPointVisualizer', () => { let pinPointVisualizer: PinPointVisualizer; diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/region/pin-point.visualizer.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/region/pin-point.visualizer.ts index d878eceeb8..39d12342ec 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/region/pin-point.visualizer.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/region/pin-point.visualizer.ts @@ -7,7 +7,7 @@ import { Actions } from '@ngrx/effects'; import * as turf from '@turf/turf'; import { getPointByGeometry, ImageryVisualizer } from '@ansyn/imagery'; import { Position } from 'geojson'; -import { OpenLayersMap, OpenLayersProjectionService } from '@ansyn/ol'; +import { OpenLayersMap, OpenLayersProjectionService } from '@ansyn/imagery-ol'; import { RegionVisualizer } from './region.visualizer'; import { CaseGeoFilter, CaseRegionState } from '../../../../../menu-items/cases/models/case.model'; import { SetOverlaysCriteriaAction } from '../../../../../overlays/actions/overlays.actions'; @@ -37,7 +37,7 @@ export class PinPointVisualizer extends RegionVisualizer { } drawRegionOnMap(region: CaseRegionState): Observable { - const coordinates = getPointByGeometry(region).coordinates; + const coordinates = getPointByGeometry(region).coordinates; const id = 'pinPoint'; const featureJson = turf.point(coordinates); const entities = [{ id, featureJson }]; diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/region/polygon-search.visualizer.spec.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/region/polygon-search.visualizer.spec.ts index 8037a3ad51..aee19d07ad 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/region/polygon-search.visualizer.spec.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/region/polygon-search.visualizer.spec.ts @@ -6,7 +6,7 @@ import { EMPTY } from 'rxjs'; import { Feature, Polygon } from 'geojson'; import { UpdateGeoFilterStatus } from '../../../../../status-bar/actions/status-bar.actions'; import { PolygonSearchVisualizer } from './polygon-search.visualizer'; -import { OpenLayersProjectionService } from '@ansyn/ol'; +import { OpenLayersProjectionService } from '@ansyn/imagery-ol'; describe('PolygonSearchVisualizer', () => { let polygonSearchVisualizer: PolygonSearchVisualizer; diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/region/polygon-search.visualizer.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/region/polygon-search.visualizer.ts index 6d7e13d293..2c7e5d4268 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/region/polygon-search.visualizer.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/region/polygon-search.visualizer.ts @@ -7,7 +7,7 @@ import { Position } from 'geojson'; import { getPolygonByPointAndRadius, ImageryVisualizer, MarkerSize } from '@ansyn/imagery'; import { UpdateGeoFilterStatus } from '../../../../../status-bar/actions/status-bar.actions'; import { RegionVisualizer } from './region.visualizer'; -import { OpenLayersMap, OpenLayersProjectionService } from '@ansyn/ol'; +import { OpenLayersMap, OpenLayersProjectionService } from '@ansyn/imagery-ol'; import { CaseGeoFilter, CaseRegionState } from '../../../../../menu-items/cases/models/case.model'; import { Injectable } from '@angular/core'; diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/region/region.visualizer.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/region/region.visualizer.ts index c3fe5e09c0..fcba49aa91 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/region/region.visualizer.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/region/region.visualizer.ts @@ -14,7 +14,7 @@ import { VisualizerInteractions } from '@ansyn/imagery'; import Draw from 'ol/interaction/Draw'; import { AutoSubscription } from 'auto-subscriptions'; import { distinctUntilChanged, filter, map, mergeMap, take, tap, withLatestFrom } from 'rxjs/operators'; -import { EntitiesVisualizer, OpenLayersProjectionService } from '@ansyn/ol'; +import { EntitiesVisualizer, OpenLayersProjectionService } from '@ansyn/imagery-ol'; import { selectGeoFilterActive, selectGeoFilterType diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/scanned-area/scanned-area.visualizer.spec.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/scanned-area/scanned-area.visualizer.spec.ts index 59142377c9..8e569f3431 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/scanned-area/scanned-area.visualizer.spec.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/scanned-area/scanned-area.visualizer.spec.ts @@ -2,7 +2,7 @@ import { inject, TestBed } from '@angular/core/testing'; import { Store, StoreModule } from '@ngrx/store'; import { EffectsModule } from '@ngrx/effects'; import { ScannedAreaVisualizer } from './scanned-area.visualizer'; -import { OpenLayersProjectionService } from '@ansyn/ol'; +import { OpenLayersProjectionService } from '@ansyn/imagery-ol'; describe('ScannedAreaVisualizer', () => { let scannedAreaVisualizer: ScannedAreaVisualizer; diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/scanned-area/scanned-area.visualizer.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/scanned-area/scanned-area.visualizer.ts index 8e9b7c6fcd..cecbeebe12 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/scanned-area/scanned-area.visualizer.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/scanned-area/scanned-area.visualizer.ts @@ -5,7 +5,7 @@ import { selectOverlayByMapId } from '@ansyn/map-facade'; import { ImageryVisualizer, IVisualizerEntity, MarkerSize } from '@ansyn/imagery'; import { AutoSubscription } from 'auto-subscriptions'; import { filter, mergeMap } from 'rxjs/operators'; -import { EntitiesVisualizer, OpenLayersMap, OpenLayersProjectionService } from '@ansyn/ol'; +import { EntitiesVisualizer, OpenLayersMap, OpenLayersProjectionService } from '@ansyn/imagery-ol'; import { IOverlaysScannedAreaData } from '../../../../../menu-items/cases/models/case.model'; import { selectScannedAreaData } from '../../../../../overlays/overlay-status/reducers/overlay-status.reducer'; import { IOverlay } from '../../../../../overlays/models/overlay.model'; diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/tools/ansyn.annotations.visualizer.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/tools/ansyn.annotations.visualizer.ts index 1b5681487b..6a5991afb8 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/tools/ansyn.annotations.visualizer.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/tools/ansyn.annotations.visualizer.ts @@ -22,7 +22,7 @@ import { OL_PLUGINS_CONFIG, OpenLayersMap, OpenLayersProjectionService -} from '@ansyn/ol'; +} from '@ansyn/imagery-ol'; import { ILayer, LayerType } from '../../../../../menu-items/layers-manager/models/layers.model'; import { selectActiveAnnotationLayer, diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/tools/goto.visualizer.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/tools/goto.visualizer.ts index 8f47dea703..715985966a 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/tools/goto.visualizer.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/tools/goto.visualizer.ts @@ -8,7 +8,7 @@ import { selectActiveMapId } from '@ansyn/map-facade'; import * as turf from '@turf/turf'; import { ImageryVisualizer } from '@ansyn/imagery'; import { AutoSubscription } from 'auto-subscriptions'; -import { EntitiesVisualizer, OpenLayersMap, OpenLayersProjectionService } from '@ansyn/ol'; +import { EntitiesVisualizer, OpenLayersMap, OpenLayersProjectionService } from '@ansyn/imagery-ol'; import { distinctUntilChanged, map, mergeMap, pluck, take, tap } from 'rxjs/operators'; import { IToolsState, diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/tools/measure-distance.visualizer.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/tools/measure-distance.visualizer.ts index 7f868ba904..7a970d20af 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/tools/measure-distance.visualizer.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/tools/measure-distance.visualizer.ts @@ -31,7 +31,7 @@ import { combineLatest, Observable, Subject } from 'rxjs'; import { selectActiveMapId } from '@ansyn/map-facade'; import { Store } from '@ngrx/store'; import { AutoSubscription } from 'auto-subscriptions'; -import { EntitiesVisualizer, OpenLayersMap, OpenLayersProjectionService } from '@ansyn/ol'; +import { EntitiesVisualizer, OpenLayersMap, OpenLayersProjectionService } from '@ansyn/imagery-ol'; import { distinctUntilChanged, filter, switchMap, tap } from 'rxjs/operators'; import { selectIsMeasureToolActive, diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/tools/mouse-shadow.visualizer.spec.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/tools/mouse-shadow.visualizer.spec.ts index 7e95bc4ad2..55a0bf9f76 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/tools/mouse-shadow.visualizer.spec.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/tools/mouse-shadow.visualizer.spec.ts @@ -2,7 +2,7 @@ import { inject, TestBed } from '@angular/core/testing'; import { Store, StoreModule } from '@ngrx/store'; import { Actions, EffectsModule } from '@ngrx/effects'; import { MouseShadowVisualizer } from './mouse-shadow.visualizer'; -import { OpenLayersProjectionService } from '@ansyn/ol'; +import { OpenLayersProjectionService } from '@ansyn/imagery-ol'; describe('mouseShadowVisualizer', () => { let mouseShadowVisualizer: MouseShadowVisualizer; diff --git a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/tools/mouse-shadow.visualizer.ts b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/tools/mouse-shadow.visualizer.ts index 99a1c6af69..c667323891 100644 --- a/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/tools/mouse-shadow.visualizer.ts +++ b/src/app/@ansyn/ansyn/modules/plugins/openlayers/plugins/visualizers/tools/mouse-shadow.visualizer.ts @@ -10,7 +10,7 @@ import * as turf from '@turf/turf'; import { ImageryVisualizer, IVisualizerEntity } from '@ansyn/imagery'; import { selectToolFlag, toolsFlags } from '../../../../../menu-items/tools/reducers/tools.reducer'; import { AutoSubscription } from 'auto-subscriptions'; -import { EntitiesVisualizer, OpenLayersMap, OpenLayersProjectionService } from '@ansyn/ol'; +import { EntitiesVisualizer, OpenLayersMap, OpenLayersProjectionService } from '@ansyn/imagery-ol'; import { filter, map, mergeMap, take, tap } from 'rxjs/operators'; import { Inject } from '@angular/core'; import { IToolsConfig, toolsConfig } from '../../../../../menu-items/tools/models/tools-config'; diff --git a/src/app/@ansyn/ansyn/package.json b/src/app/@ansyn/ansyn/package.json index 461989347e..6784fc246a 100644 --- a/src/app/@ansyn/ansyn/package.json +++ b/src/app/@ansyn/ansyn/package.json @@ -29,7 +29,7 @@ "primeng": "^9.0.3", "file-saver": "^1.3.8", "lodash-decorators": "^4.5.0", - "ngx-bootstrap": "^5.5.0", + "ngx-bootstrap": "^5.6.2", "proj4": "^2.5.0", "rison": "^0.1.1", "auto-subscriptions": "^2.0.5" diff --git a/src/app/@ansyn/ansyn/tsconfig.json b/src/app/@ansyn/ansyn/tsconfig.json index 907cef52ac..1c5026bc3c 100644 --- a/src/app/@ansyn/ansyn/tsconfig.json +++ b/src/app/@ansyn/ansyn/tsconfig.json @@ -3,19 +3,19 @@ "compilerOptions": { "paths": { "@ansyn/imagery": [ - "src/app/@ansyn/imagery/public_api" + "src/app/@ansyn/imagery-submodules/imagery/public_api" ], "@ansyn/map-facade": [ "src/app/@ansyn/map-facade/public_api" ], - "@ansyn/ol": [ - "src/app/@ansyn/ol/public_api" + "@ansyn/imagery-ol": [ + "src/app/@ansyn/imagery-submodules/imagery-ol/public_api" ], "@ansyn/imagery-cesium": [ - "src/app/@ansyn/imagery-cesium/public_api" + "src/app/@ansyn/imagery-submodules/imagery-cesium/public_api" ], "@ansyn/imagery-video": [ - "src/app/@ansyn/imagery-video/public_api" + "src/app/@ansyn/imagery-submodules/imagery-video/public_api" ], "@ansyn/menu": [ "src/app/@ansyn/menu/public_api" diff --git a/src/app/@ansyn/ansyn/tsconfig.lib.json b/src/app/@ansyn/ansyn/tsconfig.lib.json index 1bafccc4dd..6d19e86c61 100644 --- a/src/app/@ansyn/ansyn/tsconfig.lib.json +++ b/src/app/@ansyn/ansyn/tsconfig.lib.json @@ -12,16 +12,16 @@ "dist/ansyn/map-facade/*" ], "@ansyn/imagery": [ - "dist/ansyn/imagery" + "src/app/@ansyn/imagery-submodules/dist/ansyn/imagery" ], - "@ansyn/ol": [ - "dist/ansyn/ol" + "@ansyn/imagery-ol": [ + "src/app/@ansyn/imagery-submodules/dist/ansyn/imagery-ol" ], "@ansyn/imagery-cesium": [ - "dist/ansyn/imagery-cesium" + "src/app/@ansyn/imagery-submodules/dist/ansyn/imagery-cesium" ], "@ansyn/imagery-video": [ - "dist/ansyn/imagery-video" + "src/app/@ansyn/imagery-submodules/dist/ansyn/imagery-video" ] }, "outDir": "../../../out-tsc/lib", @@ -48,7 +48,8 @@ "fullTemplateTypeCheck": true, "strictInjectionParameters": true, "flatModuleId": "AUTOGENERATED", - "flatModuleOutFile": "AUTOGENERATED" + "flatModuleOutFile": "AUTOGENERATED", + "enableIvy": false }, "exclude": [ "src/test.ts", diff --git a/src/app/@ansyn/imagery-cesium/mapSourceProviders/cesium-BING-source-provider.ts b/src/app/@ansyn/imagery-cesium/mapSourceProviders/cesium-BING-source-provider.ts deleted file mode 100644 index fea3363617..0000000000 --- a/src/app/@ansyn/imagery-cesium/mapSourceProviders/cesium-BING-source-provider.ts +++ /dev/null @@ -1,32 +0,0 @@ -import { - IBaseImageryLayer, - BaseMapSourceProvider, - IBaseImageryMapConstructor, - ImageryMapSource, - IMapSettings -} from '@ansyn/imagery'; -import { CesiumMap } from '../maps/cesium-map/cesium-map'; -import { CesiumLayer } from '../models/cesium-layer'; - -declare const Cesium: any; - -export const CesiumBingSourceProviderSourceType = 'CESIUM_BING'; - -@ImageryMapSource({ - sourceType: CesiumBingSourceProviderSourceType, - supported: [CesiumMap] -}) -export class CesiumBINGSourceProvider extends BaseMapSourceProvider { - readonly supported: IBaseImageryMapConstructor[]; - - protected create(metaData: IMapSettings): Promise { - const cesiumBingLayer = new Cesium.BingMapsImageryProvider({ - url: 'https://dev.virtualearth.net', - key: 'Ag9RlBTbfJQMhFG3fxO9fLAbYMO8d5sevTe-qtDsAg6MjTYYFMFfFFrF2SrPIZNq', - mapStyle: Cesium.BingMapsStyle.AERIAL_WITH_LABELS - }); - const layer = new CesiumLayer(cesiumBingLayer); - return Promise.resolve(layer); - } - -} diff --git a/src/app/@ansyn/imagery-cesium/mapSourceProviders/cesium-GEO-SERVER-source-provider.ts b/src/app/@ansyn/imagery-cesium/mapSourceProviders/cesium-GEO-SERVER-source-provider.ts deleted file mode 100644 index a64432af26..0000000000 --- a/src/app/@ansyn/imagery-cesium/mapSourceProviders/cesium-GEO-SERVER-source-provider.ts +++ /dev/null @@ -1,32 +0,0 @@ -import { - IBaseImageryLayer, - BaseMapSourceProvider, - IBaseImageryMapConstructor, - ImageryMapSource, - IMapSettings -} from '@ansyn/imagery'; -import { CesiumMap } from '../maps/cesium-map/cesium-map'; -import { CesiumLayer } from '../models/cesium-layer'; - -declare const Cesium: any; - -export const CesiumGeoServerSourceProviderSourceType = 'CESIUM_GEO_SERVER'; - -@ImageryMapSource({ - supported: [CesiumMap], - sourceType: CesiumGeoServerSourceProviderSourceType -}) -export class CesiumGeoServerSourceProvider extends BaseMapSourceProvider { - readonly supported: IBaseImageryMapConstructor[]; - - protected create(metaData: IMapSettings): Promise { - const config = {...this.config, ...metaData.data.config}; - const layers = config.layers.join(','); - const cesiumGeoServerLayer = new Cesium.WebMapServiceImageryProvider({ - url: config.url, - layers: layers - }); - const layer = new CesiumLayer(cesiumGeoServerLayer); - return Promise.resolve(layer); - } -} diff --git a/src/app/@ansyn/imagery-cesium/mapSourceProviders/cesium-OSM-source-provider.ts b/src/app/@ansyn/imagery-cesium/mapSourceProviders/cesium-OSM-source-provider.ts deleted file mode 100644 index 5659eb3c6e..0000000000 --- a/src/app/@ansyn/imagery-cesium/mapSourceProviders/cesium-OSM-source-provider.ts +++ /dev/null @@ -1,29 +0,0 @@ -import { - IBaseImageryLayer, - BaseMapSourceProvider, - IBaseImageryMapConstructor, - ImageryMapSource, - IMapSettings -} from '@ansyn/imagery'; -import { CesiumMap } from '../maps/cesium-map/cesium-map'; -import { CesiumLayer } from '../models/cesium-layer'; - -declare const Cesium: any; - -export const CesiumOSMSourceProviderSourceType = 'CESIUM_OSM'; - -@ImageryMapSource({ - supported: [CesiumMap], - sourceType: CesiumOSMSourceProviderSourceType -}) -export class CesiumOsmSourceProvider extends BaseMapSourceProvider { - readonly supported: IBaseImageryMapConstructor[]; - - protected create(metaData: IMapSettings): Promise { - const cesiumOsmLayer = new Cesium.OpenStreetMapImageryProvider({ - url : 'https://a.tile.openstreetmap.org/' - }); - const layer = new CesiumLayer(cesiumOsmLayer); - return Promise.resolve(layer); - } -} diff --git a/src/app/@ansyn/imagery-cesium/mapSourceProviders/cesium-PLANET-source-provider.ts b/src/app/@ansyn/imagery-cesium/mapSourceProviders/cesium-PLANET-source-provider.ts deleted file mode 100644 index b233c00e2f..0000000000 --- a/src/app/@ansyn/imagery-cesium/mapSourceProviders/cesium-PLANET-source-provider.ts +++ /dev/null @@ -1,28 +0,0 @@ -import { - IBaseImageryLayer, - BaseMapSourceProvider, - IBaseImageryMapConstructor, - ImageryMapSource, - IMapSettings -} from '@ansyn/imagery'; -import { CesiumMap } from '../maps/cesium-map/cesium-map'; -import { CesiumLayer } from '../models/cesium-layer'; - -declare const Cesium: any; - -@ImageryMapSource({ - sourceType: 'PLANET', - supported: [CesiumMap] -}) -export class CesiumPlanetSourceProvider extends BaseMapSourceProvider { - readonly supported: IBaseImageryMapConstructor[]; - - protected create(metaData: IMapSettings): Promise { - const planetLayer = new Cesium.UrlTemplateImageryProvider({ - url: metaData.data.overlay.imageUrl, - credit: new Cesium.Credit('© Imagery provided by Planet.com', 'https://www.planet.com/assets/logos/logo-dark.png', 'https://www.planet.com') - }); - const layer = new CesiumLayer(planetLayer); - return Promise.resolve(layer); - } -} diff --git a/src/app/@ansyn/imagery-cesium/mapSourceProviders/cesium-open-aerial-source-provider.ts b/src/app/@ansyn/imagery-cesium/mapSourceProviders/cesium-open-aerial-source-provider.ts deleted file mode 100644 index 6ebc96f995..0000000000 --- a/src/app/@ansyn/imagery-cesium/mapSourceProviders/cesium-open-aerial-source-provider.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { - IBaseImageryLayer, - BaseMapSourceProvider, - IBaseImageryMapConstructor, - ImageryMapSource, - IMapSettings -} from '@ansyn/imagery'; -import { CesiumMap } from '../maps/cesium-map/cesium-map'; -import { CesiumLayer } from '../models/cesium-layer'; - -declare const Cesium: any; - -@ImageryMapSource({ - sourceType: 'OPEN_AERIAL', - supported: [CesiumMap] -}) -export class CesiumOpenAerialSourceProvider extends BaseMapSourceProvider { - readonly supported: IBaseImageryMapConstructor[]; - - protected create(metaData: IMapSettings): Promise { - const openAerialLayer = new Cesium.UrlTemplateImageryProvider({ - url: metaData.data.overlay.imageUrl - }); - const layer = new CesiumLayer(openAerialLayer); - return Promise.resolve(layer); - } -} diff --git a/src/app/@ansyn/imagery-cesium/maps/cesium-map/cesium-map.ts b/src/app/@ansyn/imagery-cesium/maps/cesium-map/cesium-map.ts deleted file mode 100644 index e32ff9bbd7..0000000000 --- a/src/app/@ansyn/imagery-cesium/maps/cesium-map/cesium-map.ts +++ /dev/null @@ -1,597 +0,0 @@ -import { - BaseImageryMap, - ExtentCalculator, - IMAGERY_BASE_MAP_LAYER, - IMAGERY_MAIN_LAYER_NAME, - ImageryLayerProperties, - ImageryMap, - ImageryMapExtent, - IImageryMapPosition, - IImageryMapProjectedState, - toDegrees -} from '@ansyn/imagery'; -import { featureCollection } from '@turf/helpers'; -import { feature, geometry } from '@turf/turf'; -import { GeoJsonObject, Point, Polygon } from 'geojson'; -import { Observable, of } from 'rxjs'; - -import { fromPromise } from 'rxjs/internal-compatibility'; -import { map, mergeMap, take } from 'rxjs/operators'; -import { CesiumLayer, ISceneMode } from '../../models/cesium-layer'; -import { CesiumProjectionService } from '../../projection/cesium-projection.service'; -import { Cartesian2, Cartesian3, ImageryLayer, Viewer } from 'cesium'; - -declare const Cesium: any; - -Cesium.buildModuleUrl.setBaseUrl('assets/Cesium/'); -Cesium.BingMapsApi.defaultKey = 'AnjT_wAj_juA_MsD8NhcEAVSjCYpV-e50lUypkWm1JPxVu0XyVqabsvD3r2DQpX-'; - -export const CesiumMapName = 'CesiumMap'; - -// @dynamic -@ImageryMap({ - mapType: CesiumMapName, - deps: [CesiumProjectionService] -}) -export class CesiumMap extends BaseImageryMap { - static groupLayers = new Map(); - mapObject: Viewer; - element: HTMLElement; - _moveEndListener; - _mouseMoveHandler; - lastRotation = 0; - mainLayer: CesiumLayer; - layersToCesiumLayer: Map; - - constructor(public projectionService: CesiumProjectionService) { - super(); - this.layersToCesiumLayer = new Map(); - } - - initMap(element: HTMLElement, shadowElement: HTMLElement, shadowDoubleBufferElement: HTMLElement, layer: CesiumLayer, position?: IImageryMapPosition): Observable { - this.element = element; - - return this.resetView(layer, position); - } - - initListeners() { - this._moveEndListener = () => { - this.getPosition().pipe(take(1)).subscribe(position => { - if (position) { - this.positionChanged.emit(position); - } - }); - }; - - this.mapObject.camera.moveEnd.addEventListener(this._moveEndListener); - this._mouseMoveHandler = this.registerScreenEvents(); - } - - getCenter(): Observable { - const point = this.getInnerCenter(); - return of(point); - } - - getInnerCenter() { - const viewer = this.mapObject; - // const windowPosition = new Cesium.Cartesian2(viewer.container.clientWidth / 2, viewer.container.clientHeight / 2); - // const pickRay = viewer.scene.camera.getPickRay(windowPosition); - // const pickPosition = viewer.scene.globe.pick(pickRay, viewer.scene); - // const pickPositionCartographic = viewer.scene.globe.ellipsoid.cartesianToCartographic(pickPosition); - const rect = this.mapObject.camera.computeViewRectangle(this.mapObject.scene.globe.ellipsoid); - const centerRect = Cesium.Rectangle.center(rect); - - const longitude = Cesium.Math.toDegrees(centerRect.longitude); - const latitude = Cesium.Math.toDegrees(centerRect.latitude); - const height = this.mapObject.camera.positionCartographic.height; - // TODO: add projection - const point: Point = { - type: 'Point', - coordinates: [longitude, latitude, height] - }; - return point; - } - - setCenter(center: Point, animation: boolean): Observable { - const currentPosition = this.mapObject.camera.positionCartographic; - - const extentFeature = feature(center); - const collection: any = featureCollection([extentFeature]); - return this.projectionService.projectCollectionAccuratelyToImage(collection, this).pipe( - map((geoJsonFeature: any) => { - const geoJsonCenter = geoJsonFeature.features[0].geometry.coordinates; - // TODO: add animation == false option - this.mapObject.camera.flyTo({ - destination: Cesium.Cartesian3.fromDegrees(geoJsonCenter[0], geoJsonCenter[1], currentPosition.height) - }); - // this.mapObject.camera.setView({ - // destination: Cesium.Rectangle.fromDegrees(...rec) - // }); - return true; - }) - ); - } - - toggleGroup(groupName: string, newState: boolean) { - throw new Error('Method not implemented.'); - } - - registerScreenEvents(): any { - const handler = new Cesium.ScreenSpaceEventHandler(this.mapObject.scene.canvas); - handler.setInputAction((movement: { startPosition: Cartesian2, endPosition: Cartesian2 }) => { - // Cesium's camera.pickEllipsoid works in 2D, 2.5D (Columbus View), and 3D. - // PickEllipsoid produces a coordinate on the surface of the 3D globe, - // but this can easily be converted to a latitude/longitude coordinate - // using Cesium.Cartographic.fromCartesian. - const latLongCoord: [number, number, number] = this.getCoordinateFromScreenPixel(movement.endPosition); - if (latLongCoord) { - this.mousePointerMoved.emit({ - long: latLongCoord[0], - lat: latLongCoord[1], - height: latLongCoord[2] - }); - } else { - this.mousePointerMoved.emit({ long: NaN, lat: NaN, height: NaN }); - } - - }, Cesium.ScreenSpaceEventType.MOUSE_MOVE); - - handler.setInputAction(function (movement) { - (document.activeElement).blur(); - }, Cesium.ScreenSpaceEventType.LEFT_DOWN); - - handler.setInputAction(function (movement) { - (document.activeElement).blur(); - }, Cesium.ScreenSpaceEventType.WHEEL); - - handler.setInputAction(function (movement) { - (document.activeElement).blur(); - }, Cesium.ScreenSpaceEventType.MIDDLE_DOWN); - - handler.setInputAction(function (movement) { - (document.activeElement).blur(); - }, Cesium.ScreenSpaceEventType.RIGHT_DOWN); - - handler.setInputAction(function (movement) { - (document.activeElement).blur(); - }, Cesium.ScreenSpaceEventType.PINCH_START); - return handler; - } - - unregisterScreenEvents(handler) { - handler = handler && handler.destroy(); - } - - getCoordinateFromScreenPixel(screenPixel: Cartesian2): [number, number, number] { - const cartesian = this.mapObject.camera.pickEllipsoid(screenPixel, this.mapObject.scene.globe.ellipsoid); - if (cartesian) { - const cartographic = Cesium.Cartographic.fromCartesian(cartesian); - - const result: [number, number, number] = [+Cesium.Math.toDegrees(cartographic.longitude).toFixed(10), +Cesium.Math.toDegrees(cartographic.latitude).toFixed(10), +cartographic.height.toFixed(10)]; - return result; - } - return null; - } - - getHtmlContainer(): HTMLElement { - return this.element; - } - - createMapObject(layer: CesiumLayer): Observable { - layer.set(ImageryLayerProperties.NAME, IMAGERY_MAIN_LAYER_NAME); - this.mainLayer = layer; - let cesiumSceneMode = this.getCesiumSceneMode(layer.sceneMode); - if (this.mapObject) { - if (!layer.sceneMode) { - cesiumSceneMode = this.mapObject.scene.mode; - } - this.internalDestroyCesium(); - } - - if (layer.mapProjection) { - return fromPromise(layer.mapProjection.readyPromise).pipe( - map(() => { - const viewer = new Cesium.Viewer(this.element, { - terrainProvider: Cesium.createWorldTerrain(), - mapProjection: layer.mapProjection, - sceneMode: cesiumSceneMode, - imageryProvider: layer.layer, - shadows: false, - automaticallyTrackDataSourceClocks: false - }); - - // Set the global imagery layer to fully transparent and set the globe's base color to black - // const baseImageryLayer = viewer.imageryLayers.get(0); - // baseImageryLayer.alpha = 0.0; - this.mapObject = viewer; - this.mapObject.imageryLayers.addImageryProvider(layer.layer); - this.initListeners(); - this.setCesuimImprovements(); - return true; - }) - ); - } else { - const viewer = new Cesium.Viewer(this.element, { - terrainProvider: Cesium.createWorldTerrain(), - sceneMode: cesiumSceneMode, - imageryProvider: layer.layer, - baseLayerPicker: false, - sceneModePicker: false, - timeline: false, - navigationHelpButton: false, - navigationInstructionsInitiallyVisible: false, - animation: false, - fullscreenButton: false, - homeButton: false, - infoBox: false, - geocoder: false, - shadows: false, - automaticallyTrackDataSourceClocks: false, - orderIndependentTranslucency: false - }); - - // Set the global imagery layer to fully transparent and set the globe's base color to black - // const baseImageryLayer = viewer.imageryLayers.get(0); - // baseImageryLayer.alpha = 0.0; - this.mapObject = viewer; - this.initListeners(); - } - - this.setCesuimImprovements(); - return of(true); - } - - getCesiumSceneMode(sceneMode: ISceneMode): any { - switch (sceneMode) { - case ISceneMode.COLUMBUS_VIEW: { - return Cesium.SceneMode.COLUMBUS_VIEW; - } - case ISceneMode.MORPHING: { - return Cesium.SceneMode.MORPHING; - } - case ISceneMode.SCENE2D: { - return Cesium.SceneMode.SCENE2D; - } - case ISceneMode.SCENE3D: { - return Cesium.SceneMode.SCENE3D; - } - default: { - console.warn('un supported scene mode ', sceneMode); - return Cesium.SceneMode.SCENE2D; - } - } - } - - resetView(layer: CesiumLayer, position: IImageryMapPosition, extent ?: ImageryMapExtent): Observable { - if (!this.mapObject || (layer.mapProjection && (this.mapObject.scene.mapProjection).projectionName !== layer.mapProjection.projectionName)) { - return this.createMapObject(layer).pipe( - mergeMap((isReady) => { - if (extent) { - return this.fitToExtent(extent); - } - return this.setPosition(position); - })); - } - - // else - const imageryLayers = this.mapObject.imageryLayers; - - if (layer.removePrevLayers) { - imageryLayers.removeAll(false); - } - - imageryLayers.addImageryProvider(layer.layer); - if (layer.terrainProvider) { - this.mapObject.terrainProvider = layer.terrainProvider; - } - - if (layer.sceneMode) { - let cesiumSceneMode = this.getCesiumSceneMode(layer.sceneMode); - this.mapObject.scene.mode = cesiumSceneMode; - } - - if (extent) { - return this.fitToExtent(extent); - } - return this.setPosition(position); - } - - setCesuimImprovements() { - this.mapObject.cesiumWidget.screenSpaceEventHandler.removeInputAction(Cesium.ScreenSpaceEventType.LEFT_CLICK); - (this.mapObject)._enableInfoOrSelection = false; - Cesium.Label.enableRightToLeftDetection = true; - - this.mapObject.scene.globe.depthTestAgainstTerrain = false; - this.mapObject.resolutionScale = 1; - this.mapObject.scene.useDepthPicking = false; - this.mapObject.scene.postProcessStages.fxaa.enabled = false; - // const SKY_COLOR = 'rgb(81,202,232)'; - // this.mapObject.scene.backgroundColor = Cesium.Color.fromCssColorString(SKY_COLOR); - // this.mapObject.scene.globe.baseColor = Cesium.Color.fromCssColorString(SKY_COLOR); - this.mapObject.trackedEntityChanged.addEventListener(() => { - this.mapObject.trackedEntity = undefined; - }); - - this.mapObject.shadowMap.enabled = false; - this.mapObject.scene.skyBox.show = false; - this.mapObject.scene.sunBloom = false; - this.mapObject.scene.fog.enabled = false; - this.mapObject.scene.sun.show = false; - this.mapObject.scene.moon.show = false; - this.mapObject.scene.globe.showWaterEffect = false; - (this.mapObject.scene.globe).showGroundAtmosphere = false; - - let originalRotateUp = Cesium.Camera.prototype.rotateUp; - Cesium.Camera.prototype.rotateUp = function (angle) { - const maxAngle = -0.1; - if (angle > 0 && this.pitch + angle > maxAngle) { - angle = maxAngle - this.pitch; - } - originalRotateUp.call(this, angle); - }; - Cesium.Camera.DEFAULT_VIEW_FACTOR = 0; - } - - fitToExtent(extent: ImageryMapExtent) { - const polygon = ExtentCalculator.extentToPolygon(extent); - return this.internalSetPosition((polygon.geometry)); - } - - getMainLayer(): CesiumLayer { - return this.mainLayer; - } - - public addMapLayer(layer: CesiumLayer) { - const main = this.getMainLayer(); - const mainLayerId = main.get(ImageryLayerProperties.ID); - const baseMapLayer = Array.from(this.layersToCesiumLayer.keys()).find((currentLayer: CesiumLayer) => currentLayer.get(ImageryLayerProperties.NAME) === IMAGERY_BASE_MAP_LAYER && currentLayer.get(ImageryLayerProperties.ID) !== mainLayerId); - if (baseMapLayer) { - this.removeLayer(baseMapLayer); - } - if (layer.get(ImageryLayerProperties.ID) !== mainLayerId) { - this.addLayer(layer); - } - } - - addLayer(layer: CesiumLayer): void { - const actualCesiumLayer = this.mapObject.imageryLayers.addImageryProvider(layer.layer); - this.layersToCesiumLayer.set(layer, actualCesiumLayer); - } - - removeLayer(layer: CesiumLayer): void { - const actualCesiumLayer = this.layersToCesiumLayer.get(layer); - if (actualCesiumLayer) { - this.mapObject.imageryLayers.remove(actualCesiumLayer); - this.layersToCesiumLayer.delete(layer); - } - } - - setCameraView(heading: number, pitch: number, roll: number, destination: Cartesian3) { - this.mapObject.camera.setView({ - destination: destination, - orientation: { - heading: heading, - pitch: pitch, - roll: roll - } - }); - } - - setPosition(position: IImageryMapPosition): Observable { - if (position.projectedState && position.projectedState.projection && - position.projectedState.projection.code === 'cesium_WGS84') { - this.setCameraView(position.projectedState.rotation, position.projectedState.pitch, position.projectedState.roll, position.projectedState.cameraPosition); - return of(true); - } else { - const { extentPolygon } = position; - return this.internalSetPosition(extentPolygon); - } - } - - internalSetPosition(extentPolygon: Polygon): Observable { - const extentFeature = feature(extentPolygon); - const collection: any = featureCollection([extentFeature]); - return this.projectionService.projectCollectionAccuratelyToImage(collection, this).pipe( - map((geoJsonFeature: any) => { - const geoJsonExtent = geoJsonFeature.features[0].geometry; - const rec = [...geoJsonExtent.coordinates[0][0], ...geoJsonExtent.coordinates[0][2]]; - this.mapObject.camera.setView({ - destination: Cesium.Rectangle.fromDegrees(...rec) - }); - return true; - }) - ); - } - - _imageToGround(cartesian2: Cartesian2) { - const position = this.mapObject.camera.getPickRay(cartesian2); - const cartesian = this.mapObject.scene.globe.pick(position, this.mapObject.scene); - if (cartesian) { - const cartographic = Cesium.Cartographic.fromCartesian(cartesian); - const longitude = Cesium.Math.toDegrees(cartographic.longitude); - const latitude = Cesium.Math.toDegrees(cartographic.latitude); - return [longitude, latitude]; - } else { - throw new Error('Empty Point'); - } - } - - getPosition(): Observable { - try { - const center = this.getInnerCenter(); - const projectedState: IImageryMapProjectedState = { - center: [center.coordinates[0], center.coordinates[1], center.coordinates[2]], - cameraPosition: this.mapObject.camera.position, - rotation: +this.mapObject.camera.heading.toFixed(7), - pitch: +this.mapObject.camera.pitch.toFixed(7), - roll: +this.mapObject.camera.roll.toFixed(7), - projection: { - code: 'cesium_WGS84' - } - }; - - const rect = this.mapObject.camera.computeViewRectangle(this.mapObject.scene.globe.ellipsoid); - const north: number = +Cesium.Math.toDegrees(rect.north).toFixed(10); - const east: number = +Cesium.Math.toDegrees(rect.east).toFixed(10); - const south: number = +Cesium.Math.toDegrees(rect.south).toFixed(10); - const west: number = +Cesium.Math.toDegrees(rect.west).toFixed(10); - const topLeft = [west, north]; - const topRight = [east, north]; - const bottomLeft = [west, south]; - const bottomRight = [east, south]; - - // const bounds = this.getBounds(); - // console.log('bounds: ', bounds); - // const center1 = new Cesium.Cartesian2(rect.width / 2, rect.height / 2); - // let position = this.mapObject.camera.pickEllipsoid(center1, this.mapObject.scene.globe.ellipsoid); - // let cartographic = Cesium.Cartographic.fromCartesian(position); - // cartographic.height = this.mapObject.camera.positionCartographic.height; - - // position = Cesium.Cartesian3.fromRadians(cartographic.longitude, cartographic.latitude, cartographic.height); - - // const { height, width } = this.mapObject.canvas; - // const topLeft = this._imageToGround({ x: 0, y: 0 }); - // const topRight = this._imageToGround({ x: width, y: 0 }); - // const bottomRight = this._imageToGround({ x: width, y: height }); - // const bottomLeft = this._imageToGround({ x: 0, y: height }); - const extentPolygon = geometry('Polygon', [[topLeft, topRight, bottomRight, bottomLeft, topLeft]]); - // const extentPolygon = geometry('Polygon', [[topLeft, bottomLeft, bottomRight, topRight, topLeft]]); - return of({ extentPolygon, projectedState }); - } catch (error) { - return of(null); - } - } - - setRotation(rotation: number): void { - if (this.mapObject && this.mapObject.camera) { - const center = this.getInnerCenter(); - const position = Cesium.Cartesian3.fromDegrees(center.coordinates[0], center.coordinates[1], center.coordinates[2]); - this.setCameraView(rotation, this.mapObject.camera.pitch, this.mapObject.camera.roll, position); - } - } - - zoomIn(): void { - this.mapObject.camera.zoomIn(); - } - - zoomOut(): void { - this.mapObject.camera.zoomOut(); - } - - one2one(): void { - this.mapObject.resolutionScale = 1 - } - - updateSize(): void { - console.log('Update size cesium'); - } - - addGeojsonLayer(data: GeoJsonObject) { - throw new Error('Method not implemented.'); - } - - setAutoImageProcessing(shouldPerform: boolean): void { - throw new Error('Method not implemented.'); - } - - setManualImageProcessing(processingParams: Object): void { - throw new Error('Method not implemented.'); - } - - setPointerMove(enable: boolean) { - } - - getPointerMove() { - return new Observable(); - } - - getLayers(): CesiumLayer[] { - return []; - } - - addLayerIfNotExist() { - - } - - getRotation(): number { - if (this.mapObject && this.mapObject.camera) { - const rotation = +this.mapObject.camera.heading.toFixed(7); - const lastRotationDeg = toDegrees(this.lastRotation) % 360; - const currentRotationDeg = toDegrees(rotation) % 360; - if (Math.abs(Math.abs(lastRotationDeg) - Math.abs(currentRotationDeg)) < 0.0001 || - Math.abs(Math.abs(lastRotationDeg) - Math.abs(currentRotationDeg)) > 359.9999) { - return this.lastRotation; - } - this.lastRotation = rotation; - return rotation; - } - return NaN; - } - - removeAllLayers(): void { - - } - - public dispose() { - this.removeAllLayers(); - this.internalDestroyCesium(); - } - - internalDestroyCesium() { - if (this.mapObject) { - this.mapObject.camera.moveEnd.removeEventListener(this._moveEndListener); - this.unregisterScreenEvents(this._mouseMoveHandler); - this.mapObject.destroy(); - this.mapObject = null; - } - } - - set2DPosition(go_north: boolean = false): Observable { - - if (this.mapObject.scene.mode === Cesium.SceneMode.SCENE2D) { - return of(true); - } - - if (Math.cos(this.mapObject.camera.pitch) < 0.001) { - return of(true); - } - - return new Observable(obs => { - let position; - try { - const rect = this.mapObject.canvas.getBoundingClientRect(); - const center = new Cesium.Cartesian2(rect.width / 2, rect.height / 2); - position = this.mapObject.camera.pickEllipsoid(center, this.mapObject.scene.globe.ellipsoid); - let cartographic = Cesium.Cartographic.fromCartesian(position); - cartographic.height = this.mapObject.camera.positionCartographic.height; - - position = Cesium.Cartesian3.fromRadians(cartographic.longitude, cartographic.latitude, cartographic.height); - } catch (err) { - position = this.mapObject.camera.position; - } - - let flyToObj = { - destination: position, - easingFunction: Cesium.EasingFunction.LINEAR_NONE, - orientation: { - heading: go_north ? 0 : this.mapObject.camera.heading, - pitch: Cesium.Math.toRadians(-90.0), // look down - roll: 0.0 // no change - }, - duration: 0.5, - complete: () => { - this.getPosition().pipe(take(1)).subscribe(position => { - if (position) { - this.positionChanged.emit(position); - } - obs.next(true); - }); - } - }; - this.mapObject.camera.flyTo(flyToObj); - }); - } - getProjectionCode(): string { - throw new Error("Not implemented yet!"); - } -} diff --git a/src/app/@ansyn/imagery-cesium/models/cesium-layer.ts b/src/app/@ansyn/imagery-cesium/models/cesium-layer.ts deleted file mode 100644 index e4f2667d17..0000000000 --- a/src/app/@ansyn/imagery-cesium/models/cesium-layer.ts +++ /dev/null @@ -1,31 +0,0 @@ -export enum ISceneMode { - COLUMBUS_VIEW = 'COLUMBUS_VIEW', - MORPHING = 'MORPHING', - SCENE2D = 'SCENE2D', - SCENE3D = 'SCENE3D' -} - -export class CesiumLayer { - - propeties: Map; - - constructor(public layer: any, - public mapProjection: any = null, - public terrainProvider: any = null, - public sceneMode: ISceneMode = ISceneMode.SCENE3D, - public removePrevLayers = false) { - this.propeties = new Map(); - } - - get(key) { - return this.propeties.get(key); - } - - set(key, value) { - this.propeties.set(key, value); - } - - delete(key) { - this.propeties.delete(key); - } -} diff --git a/src/app/@ansyn/imagery-cesium/ng-package.json b/src/app/@ansyn/imagery-cesium/ng-package.json deleted file mode 100644 index 1763496148..0000000000 --- a/src/app/@ansyn/imagery-cesium/ng-package.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "$schema": "../../../../node_modules/ng-packagr/ng-package.schema.json", - "dest": "../../../../dist/ansyn/imagery-cesium", - "whitelistedNonPeerDependencies": [ - "auto-subscriptions", - "@turf/turf", - "cesium", - "ngx-color-picker", - "angular2-uuid" - ], - "lib": { - "entryFile": "./public_api.ts", - "styleIncludePaths": [ - "../" - ] - } -} diff --git a/src/app/@ansyn/imagery-cesium/package.json b/src/app/@ansyn/imagery-cesium/package.json deleted file mode 100644 index a821e75dd6..0000000000 --- a/src/app/@ansyn/imagery-cesium/package.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "name": "@ansyn/imagery-cesium", - "version": "2.1.1", - "peerDependencies": { - "@angular/core": "~9.1.0", - "@angular/common": "~9.1.0", - "@ansyn/imagery": "2.1.1", - "rxjs": "~6.5.4", - "cesium": "^1.70.1", - "auto-subscriptions": "^2.0.5", - "@turf/turf": "^5.1.6", - "ngx-color-picker": "^9.1.0", - "angular2-uuid": "^1.1.1" - }, - "dependencies": {}, - "license": "MIT" -} diff --git a/src/app/@ansyn/imagery-cesium/plugins/entities-visualizer/base-entities-visualizer.ts b/src/app/@ansyn/imagery-cesium/plugins/entities-visualizer/base-entities-visualizer.ts deleted file mode 100644 index 7a4b814d17..0000000000 --- a/src/app/@ansyn/imagery-cesium/plugins/entities-visualizer/base-entities-visualizer.ts +++ /dev/null @@ -1,112 +0,0 @@ -import { BaseImageryVisualizer, IVisualizerEntity, VisualizerInteractionTypes } from '@ansyn/imagery'; -import { Observable, of } from 'rxjs'; - -declare const Cesium: any; - -export abstract class BaseEntitiesVisualizer extends BaseImageryVisualizer { - - billboardCollection; - - public idToEntity: Map = new Map(); - - onInit() { - this.billboardCollection = this.iMap.mapObject.scene.primitives.add(new Cesium.BillboardCollection()); - } - - getIds(entity: IVisualizerEntity): string { - if (entity.icon) { - return `billboard_${ entity.id }`; - } - return entity.id; - } - - addInteraction(type: VisualizerInteractionTypes, interactionInstance: any): void { - } - - addOrUpdateEntities(logicalEntities: IVisualizerEntity[]): Observable { - logicalEntities.forEach((entity: IVisualizerEntity) => { - if (entity.icon) { - const id = this.getIds(entity); - const billboardEntity = { - show: true, - position: Cesium.Cartesian3.fromDegrees( - entity.featureJson.geometry.coordinates[0], - entity.featureJson.geometry.coordinates[1], - entity.featureJson.geometry.coordinates[2] ? entity.featureJson.geometry.coordinates[2] : 0 - ), - pixelOffset: Cesium.Cartesian2.ZERO, - eyeOffset: Cesium.Cartesian3.ZERO, - heightReference: Cesium.HeightReference.NONE, - horizontalOrigin: Cesium.HorizontalOrigin.CENTER, - verticalOrigin: Cesium.VerticalOrigin.CENTER, - scale: 1.0, - image: entity.icon, - imageSubRegion: undefined, - color: Cesium.Color.WHITE, - id: id, - rotation: 0.0, - alignedAxis: Cesium.Cartesian3.ZERO, - width: undefined, - height: undefined, - scaleByDistance: undefined, - translucencyByDistance: undefined, - pixelOffsetScaleByDistance: undefined, - sizeInMeters: false, - distanceDisplayCondition: undefined - }; - const feature = this.billboardCollection.add(billboardEntity); - this.idToEntity.set(id, { - originalEntity: entity, - feature: feature - }); - } - }); - return of(true); - } - - clearEntities() { - this.billboardCollection.removeAll(); - } - - getEntities(): IVisualizerEntity[] { - const entities: IVisualizerEntity[] = []; - this.idToEntity.forEach((val, key) => entities.push(val.originalEntity)); - return entities; - } - - removeEntity(logicalEntityId: string) { - const entity = this.getEntities().find((entity: IVisualizerEntity) => { - const cesiumEntityId = this.getIds(entity); - return cesiumEntityId === logicalEntityId - }); - if (entity) { - const cesiumEntityId = this.getIds(entity); - const visEntity = this.idToEntity.get(cesiumEntityId); - this.billboardCollection.remove(visEntity.feature); - visEntity.feature = undefined; - this.idToEntity.delete(cesiumEntityId); - } - } - - removeInteraction(type: VisualizerInteractionTypes, interactionInstance: any): void { - } - - setEntities(logicalEntities: IVisualizerEntity[]): Observable { - const removedEntities = []; - this.idToEntity.forEach(((value, key: string) => { - const item = logicalEntities.find((entity) => entity.id === key); - if (!item) { - removedEntities.push(key); - } - })); - - removedEntities.forEach((id) => { - this.removeEntity(id); - }); - - return this.addOrUpdateEntities(logicalEntities); - } - - setVisibility(isVisible: boolean): void { - } -} diff --git a/src/app/@ansyn/imagery-cesium/projection/cesium-projection.service.ts b/src/app/@ansyn/imagery-cesium/projection/cesium-projection.service.ts deleted file mode 100644 index c3fa94120f..0000000000 --- a/src/app/@ansyn/imagery-cesium/projection/cesium-projection.service.ts +++ /dev/null @@ -1,53 +0,0 @@ -import { Injectable } from '@angular/core'; -import { BaseImageryMap, CommunicatorEntity } from '@ansyn/imagery'; -import { Observable, of } from 'rxjs'; -import { FeatureCollection, GeometryObject, Point } from 'geojson'; - -@Injectable({ - providedIn: 'root' -}) -export class CesiumProjectionService /* extends ProjectionService */ { - - /* points */ - projectAccurately(point: Point, map: BaseImageryMap): Observable { - return this.projectApproximately(point, map); - } - - projectAccuratelyToImage(point: Point, map: BaseImageryMap): Observable { - return of(point); - } - - projectApproximatelyToImage(point: Point, map: BaseImageryMap): Observable { - return of(point); - } - - projectApproximately(point: Point, map: BaseImageryMap): Observable { - return of(point); - } - - projectApproximatelyFromProjection(point: Point, sourceProjection: string, destProjection: string): Observable { - return of(point); - } - - /* collections */ - projectCollectionAccuratelyToImage(featureCollection: any, map: BaseImageryMap): Observable { - return this.projectCollectionApproximatelyToImage(featureCollection, map); - } - - projectCollectionAccurately(features: any, map: BaseImageryMap): Observable { - return this.projectCollectionApproximately(features, map); - } - - projectCollectionApproximatelyToImage(featureCollection: any, map: BaseImageryMap): Observable { - return of(featureCollection); - } - - projectCollectionApproximately(features: FeatureCollection | any, map: BaseImageryMap): Observable { - return of(features); - } - - getProjectionProperties(communicator: CommunicatorEntity, annotationLayer: any, feature: any, overlay: any): Object { - return undefined; - } - -} diff --git a/src/app/@ansyn/imagery-cesium/public_api.ts b/src/app/@ansyn/imagery-cesium/public_api.ts deleted file mode 100644 index a9812e9d75..0000000000 --- a/src/app/@ansyn/imagery-cesium/public_api.ts +++ /dev/null @@ -1,12 +0,0 @@ -export { BaseEntitiesVisualizer } from './plugins/entities-visualizer/base-entities-visualizer'; -export { CesiumGeoServerSourceProvider } from './mapSourceProviders/cesium-GEO-SERVER-source-provider'; -export { CesiumOpenAerialSourceProvider } from './mapSourceProviders/cesium-open-aerial-source-provider'; -export { CesiumProjectionService } from './projection/cesium-projection.service'; -export { CesiumPlanetSourceProvider } from './mapSourceProviders/cesium-PLANET-source-provider'; -export { - CesiumOSMSourceProviderSourceType, CesiumOsmSourceProvider -}from './mapSourceProviders/cesium-OSM-source-provider'; -export { - CesiumBINGSourceProvider, CesiumBingSourceProviderSourceType -}from './mapSourceProviders/cesium-BING-source-provider'; -export { CesiumMap, CesiumMapName } from './maps/cesium-map/cesium-map'; diff --git a/src/app/@ansyn/imagery-cesium/tsconfig.json b/src/app/@ansyn/imagery-cesium/tsconfig.json deleted file mode 100644 index 41c80adab0..0000000000 --- a/src/app/@ansyn/imagery-cesium/tsconfig.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "extends": "../../../../tsconfig.json", - "compilerOptions": { - "module": "commonjs", - "paths": { - "@ansyn/imagery": [ - "src/app/@ansyn/imagery/public_api" - ] - }, - "target": "es5", - "sourceMap": true - }, - "exclude": [ - "node_modules" - ] -} diff --git a/src/app/@ansyn/imagery-cesium/tsconfig.lib.json b/src/app/@ansyn/imagery-cesium/tsconfig.lib.json deleted file mode 100644 index a394e7fb82..0000000000 --- a/src/app/@ansyn/imagery-cesium/tsconfig.lib.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "extends": "../../../../tsconfig.json", - "compilerOptions": { - "paths": { - "@ansyn/imagery": [ - "dist/ansyn/imagery" - ] - }, - "outDir": "../../../out-tsc/lib", - "target": "es2015", - "module": "es2015", - "moduleResolution": "node", - "declaration": true, - "sourceMap": true, - "inlineSources": true, - "emitDecoratorMetadata": true, - "experimentalDecorators": true, - "importHelpers": true, - "types": [], - "lib": [ - "es2017", - "es2017.object", - "es2016.array.include", - "dom" - ] - }, - "angularCompilerOptions": { - "skipTemplateCodegen": true, - "strictMetadataEmit": true, - "fullTemplateTypeCheck": true, - "strictInjectionParameters": true, - "flatModuleId": "AUTOGENERATED", - "flatModuleOutFile": "AUTOGENERATED" - }, - "exclude": [ - "src/test.ts", - "**/*.spec.ts" - ] -} diff --git a/src/app/@ansyn/imagery-cesium/tsconfig.lib.prod.json b/src/app/@ansyn/imagery-cesium/tsconfig.lib.prod.json deleted file mode 100644 index b1d501abbc..0000000000 --- a/src/app/@ansyn/imagery-cesium/tsconfig.lib.prod.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "extends": "./tsconfig.lib.json", - "angularCompilerOptions": { - "enableIvy": false - } -} \ No newline at end of file diff --git a/src/app/@ansyn/imagery-submodules b/src/app/@ansyn/imagery-submodules new file mode 160000 index 0000000000..cc52f2bc0d --- /dev/null +++ b/src/app/@ansyn/imagery-submodules @@ -0,0 +1 @@ +Subproject commit cc52f2bc0d5b8b8cc1cfabc9f143de08a85553a6 diff --git a/src/app/@ansyn/imagery-video/components/imagery-video/imagery-video.component.ts b/src/app/@ansyn/imagery-video/components/imagery-video/imagery-video.component.ts index 57be01f30d..e5e35face6 100644 --- a/src/app/@ansyn/imagery-video/components/imagery-video/imagery-video.component.ts +++ b/src/app/@ansyn/imagery-video/components/imagery-video/imagery-video.component.ts @@ -14,6 +14,8 @@ export class ImageryVideoComponent { error: boolean; _src: string; + @Input() rotation = 0; + @Input() set src(value: string) { this.error = false; @@ -25,7 +27,6 @@ export class ImageryVideoComponent { return this._src; } - @Input() rotation = 0; constructor(public sanitization: DomSanitizer) { } diff --git a/src/app/@ansyn/imagery/README.md b/src/app/@ansyn/imagery/README.md deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/src/app/@ansyn/imagery/cache-service/cache.service.spec.ts b/src/app/@ansyn/imagery/cache-service/cache.service.spec.ts deleted file mode 100644 index 80ee5a7158..0000000000 --- a/src/app/@ansyn/imagery/cache-service/cache.service.spec.ts +++ /dev/null @@ -1,30 +0,0 @@ -import { inject, TestBed } from '@angular/core/testing'; -import { CacheService } from './cache.service'; -import { IMAGERY_CONFIG } from '../model/configuration.token'; -import { ImageryCommunicatorService } from '../communicator-service/communicator.service'; - -describe('CacheService', () => { - beforeEach(() => { - TestBed.configureTestingModule({ - providers: [ - { - provide: CacheService, - useClass: CacheService, - deps: [IMAGERY_CONFIG, ImageryCommunicatorService] - }, - { - provide: IMAGERY_CONFIG, - useValue: {} - }, - { - provide: ImageryCommunicatorService, - useValue: { communicatorsAsArray: () => [] } - } - ] - }); - }); - - it('should be created', inject([CacheService], (service: CacheService) => { - expect(service).toBeTruthy(); - })); -}); diff --git a/src/app/@ansyn/imagery/cache-service/cache.service.ts b/src/app/@ansyn/imagery/cache-service/cache.service.ts deleted file mode 100644 index 9fd345cca4..0000000000 --- a/src/app/@ansyn/imagery/cache-service/cache.service.ts +++ /dev/null @@ -1,63 +0,0 @@ -import { Inject, Injectable } from '@angular/core'; -import { IImageryConfig } from '../model/iimagery-config'; -import { IMAGERY_CONFIG } from '../model/configuration.token'; -import { ImageryCommunicatorService } from '../communicator-service/communicator.service'; -import { ImageryLayerProperties } from '../model/imagery-layer.model'; - -@Injectable() -export class CacheService { - - protected cacheSize = this.config.maxCachedLayers || 100; - protected cachedLayersMap: Map = new Map(); - - constructor(@Inject(IMAGERY_CONFIG) protected config: IImageryConfig, - public imageryCommunicatorService: ImageryCommunicatorService) { - } - - isDisplayedLayer(cacheId) { - return this.imageryCommunicatorService - .communicatorsAsArray() - .some((communicator) => { - const communicatorLayers = communicator.getLayers(); - return communicatorLayers.some((layer) => (layer.get && layer.get(ImageryLayerProperties.CACHE_ID)) === cacheId); - }); - } - - getLayerFromCache(cacheId: string): any { - const layer = this.cachedLayersMap.get(cacheId); - return layer && !this.isDisplayedLayer(cacheId) ? layer : null; - } - - addLayerToCache(cacheId: string, layer: any) { - if (this.cachedLayersMap.size >= this.cacheSize) { - this.removeLayerFromCache(); - } - if (layer.set) { - layer.set(ImageryLayerProperties.CACHE_ID, cacheId) - } - this.cachedLayersMap.set(cacheId, layer); - } - - private removeLayerFromCache() { - const keys = Array.from(this.cachedLayersMap.keys()); - let key: string; - for ( let i = 0; i < keys.length; i++) { - const isLayerDisplayed = this.isDisplayedLayer(keys[i]); - if (!isLayerDisplayed) { - key = keys[i]; - break; - } - } - if (Boolean(key)) { - let disposedLayer = this.cachedLayersMap.get(key); - if (disposedLayer && disposedLayer.disposeLayer) { - disposedLayer.disposeLayer(disposedLayer); - } - this.cachedLayersMap.delete(key); - disposedLayer = undefined; - if (this.cachedLayersMap.size > this.cacheSize) { - this.removeLayerFromCache(); - } - } - } -} diff --git a/src/app/@ansyn/imagery/communicator-service/communicator.entity.ts b/src/app/@ansyn/imagery/communicator-service/communicator.entity.ts deleted file mode 100644 index 0e82f4d684..0000000000 --- a/src/app/@ansyn/imagery/communicator-service/communicator.entity.ts +++ /dev/null @@ -1,345 +0,0 @@ -import { - ComponentFactoryResolver, - ComponentRef, - EventEmitter, - Inject, - Injectable, - Injector, - OnDestroy, - OnInit, - ViewContainerRef -} from '@angular/core'; -import { BaseImageryPlugin } from '../model/base-imagery-plugin'; -import { BaseImageryMap } from '../model/base-imagery-map'; -import { forkJoin, Observable, of, throwError } from 'rxjs'; -import { Feature, GeoJsonObject, Point, Polygon } from 'geojson'; -import { ImageryCommunicatorService } from './communicator.service'; -import { BaseImageryVisualizer } from '../model/base-imagery-visualizer'; -import { map, mergeMap, tap } from 'rxjs/operators'; -import { IMAGERY_MAPS, IImageryMaps } from '../providers/imagery-map-collection'; -import { BaseMapSourceProvider } from '../model/base-map-source-provider'; -import { MapComponent } from '../map/map.component'; -import { BaseImageryPluginProvider } from '../imagery/providers/imagery.providers'; -import { AutoSubscriptions } from 'auto-subscriptions'; -import { IImageryMapSources } from '../providers/map-source-providers'; -import { get as _get } from 'lodash'; -import { ImageryMapExtent, IImageryMapPosition } from '../model/case-map-position.model'; -import { getPolygonByPointAndRadius } from '../utils/geo'; -import { - IMapProviderConfig, - IMapProvidersConfig, - IMapSource, - MAP_PROVIDERS_CONFIG -} from '../model/map-providers-config'; -import { IMapSettings } from '../model/map-settings'; -import { IBaseImageryLayer, IMAGERY_BASE_MAP_LAYER, ImageryLayerProperties } from '../model/imagery-layer.model'; - -export interface IMapInstanceChanged { - id: string; - newMapInstanceName: string; - oldMapInstanceName: string; -} - -@Injectable() -@AutoSubscriptions({ - init: 'ngOnInit', - destroy: 'ngOnDestroy' -}) -export class CommunicatorEntity implements OnInit, OnDestroy { - public mapSettings: IMapSettings; - public mapComponentElem: ViewContainerRef; - private _mapComponentRef: ComponentRef; - private _activeMap: BaseImageryMap; - private _virtualNorth = 0; - public mapInstanceChanged: EventEmitter = new EventEmitter(); - - constructor(protected injector: Injector, - @Inject(IMAGERY_MAPS) protected imageryMaps: IImageryMaps, - protected componentFactoryResolver: ComponentFactoryResolver, - public imageryCommunicatorService: ImageryCommunicatorService, - @Inject(BaseMapSourceProvider) public imageryMapSources: IImageryMapSources, - @Inject(MAP_PROVIDERS_CONFIG) protected mapProvidersConfig: IMapProvidersConfig - ) { - } - - get plugins() { - return _get(this._mapComponentRef, 'instance.plugins') || []; - } - - get visualizers(): BaseImageryVisualizer[] { - return this.plugins.filter(plugin => plugin instanceof BaseImageryVisualizer); - } - - get positionChanged() { - return this.ActiveMap.positionChanged; - } - - get id() { - return _get(this.mapSettings, 'id'); - } - - public get ActiveMap(): BaseImageryMap { - return this._activeMap; - } - - public get activeMapName() { - return this.ActiveMap && this.ActiveMap.mapType; - } - - getMapSourceProvider({ mapType, sourceType }: { mapType?: string, sourceType: string }): BaseMapSourceProvider { - return this.imageryMapSources[mapType][sourceType]; - } - - initPlugins() { - this.plugins.forEach((plugin) => plugin.init(this as any)); - } - - public async replaceMapMainLayer(sourceType: string): Promise { // TODO: change all promise to observable - const newSourceTypeLayer = await this.createMapSourceForMapType(this.activeMapName, sourceType); - newSourceTypeLayer.set(ImageryLayerProperties.NAME, IMAGERY_BASE_MAP_LAYER); - if (newSourceTypeLayer) { - this._activeMap.addMapLayer(newSourceTypeLayer); - return true; - } - return false; - } - - public setActiveMap(mapType: string, position: IImageryMapPosition, sourceType?, layer?: IBaseImageryLayer): Promise { - if (this._mapComponentRef) { - this.destroyCurrentComponent(); - } - const imageryMap = this.imageryMaps[mapType]; - - const factory = this.componentFactoryResolver.resolveComponentFactory(MapComponent); - const providers = [ - { - provide: BaseImageryMap, - useClass: imageryMap, - deps: imageryMap.prototype.deps || [] - }, - BaseImageryPluginProvider]; - - const injector = Injector.create({ parent: this.injector, providers }); - this._mapComponentRef = this.mapComponentElem.createComponent(factory, undefined, injector); - const mapComponent = this._mapComponentRef.instance; - - if (!layer && !sourceType) { - const mapProviderConfig: IMapProviderConfig = this.mapProvidersConfig[imageryMap.prototype.mapType]; - sourceType = mapProviderConfig && mapProviderConfig.defaultMapSource; - if (!sourceType) { - console.warn(`Couldn't find defaultMapSource setting in config, for map type ${ imageryMap.prototype.mapType }`); - } - this.mapSettings.worldView.sourceType = sourceType; - } - - const getLayers = layer ? Promise.resolve(layer) : this.createMapSourceForMapType(mapType, sourceType); - return getLayers.then((layer) => { - if (!Boolean(layer)) { - return Promise.reject('failed to load map layer: ' + sourceType); - } - return mapComponent.createMap(layer, position) - .pipe( - tap((map: BaseImageryMap) => { - this._activeMap = map; - }), - tap(this.initPlugins.bind(this)), - tap(() => { - this.raiseMapInstanceChanged(mapType, this.activeMapName) - }) - ) - .toPromise(); - }); - } - - loadInitialMapSource(position?: IImageryMapPosition): Promise { - return new Promise(resolve => { - if (!this._activeMap) { - resolve(); - } - - this.createMapSourceForMapType(this.mapSettings.worldView.mapType, this.mapSettings.worldView.sourceType) - .then((layer) => { - this.resetView(layer, position).subscribe(() => { - resolve(layer); - }); - }); - }); - } - - public getCenter(): Observable { - if (this.ActiveMap) { - return this.ActiveMap.getCenter(); - } - return of(null); - } - - public updateSize(): void { - if (this.ActiveMap) { - this.ActiveMap.updateSize(); - } - } - - public addGeojsonLayer(data: GeoJsonObject) { - if (this.ActiveMap) { - this.ActiveMap.addGeojsonLayer(data); - } - } - - setVirtualNorth(north: number) { - this._virtualNorth = north; - } - - getVirtualNorth() { - return this._virtualNorth; - } - - public setCenter(center: Point, animation: boolean = true): Observable { - if (this.ActiveMap) { - return this.ActiveMap.setCenter(center, animation); - } - - return of(true); - } - - public setPosition(position: IImageryMapPosition): Observable { - if (!this.ActiveMap) { - return throwError(new Error('missing active map')); - } - - return this.ActiveMap.setPosition(position); - } - - public getPosition(): Observable { - if (!this.ActiveMap) { - return throwError(new Error('missing active map')); - } - return this.ActiveMap.getPosition(); - } - - setPositionByRect(rect: Polygon): Observable { - const position: IImageryMapPosition = { - extentPolygon: rect - }; - return this.setPosition(position); - } - - setPositionByRadius(center: Point, radiusInMeters: number): Observable { - const polygon: Feature = getPolygonByPointAndRadius(center.coordinates, radiusInMeters / 1000); - const position: IImageryMapPosition = { - extentPolygon: polygon.geometry - }; - return this.setPosition(position); - } - - public setRotation(rotation: number) { - if (!this.ActiveMap) { - throw new Error('missing active map'); - } - this.ActiveMap.setRotation(rotation); - } - - getRotation(): number { - if (!this.ActiveMap) { - throw new Error('missing active map'); - } - return this.ActiveMap.getRotation(); - } - - public getPlugin(plugin: new(...args) => T): T { - return this.plugins.find((_plugin) => _plugin instanceof plugin); - } - - public resetView(layer: IBaseImageryLayer, position: IImageryMapPosition, extent?: ImageryMapExtent, useDoubleBuffer: boolean = false): Observable { - this.setVirtualNorth(0); - if (this.ActiveMap) { - return this.ActiveMap.resetView(layer, position, extent, useDoubleBuffer).pipe( - mergeMap(() => this.resetPlugins()) - ); - } - return of(true); - } - - public addLayer(layer: IBaseImageryLayer) { - if (this.ActiveMap) { - this.ActiveMap.addLayer(layer); - } - } - - public getLayers(): IBaseImageryLayer[] { - if (this.ActiveMap) { - return this.ActiveMap.getLayers(); - } - return []; - } - - public removeLayer(layer: IBaseImageryLayer) { - if (this.ActiveMap) { - this.ActiveMap.removeLayer(layer); - } - } - - ngOnInit() { - const { worldView: { mapType, sourceType }, data: { position } } = this.mapSettings; - this.setActiveMap(mapType, position, sourceType).then(() => { - this.imageryCommunicatorService.createCommunicator(this); - }, err => { - console.error('Error loading map: ', err); - }); - } - - ngOnDestroy() { - this.imageryCommunicatorService.remove(this.id); - this.destroyCurrentComponent(); - } - - destroyPlugins(): void { - this.plugins.forEach((plugin) => plugin.dispose()); - } - - private raiseMapInstanceChanged(activeMapName, oldMapName) { - if (activeMapName !== oldMapName && Boolean(oldMapName)) { - this.mapInstanceChanged.emit({ - id: this.id, - newMapInstanceName: activeMapName, - oldMapInstanceName: oldMapName - }); - } - }; - - private resetPlugins(): Observable { - if (!this.plugins || this.plugins.length === 0) { - return of(true); - } - const resetObservables = this.plugins.map((plugin) => plugin.onResetView()); - return forkJoin(resetObservables).pipe(map(results => results.every(b => b === true))); - } - - private createMapSourceForMapType(mapType: string, sourceType: string): Promise { - const sources: IMapSource[] = this.mapProvidersConfig[mapType].sources; - const mapSource: IMapSource = sources.find(source => source.key === sourceType); - const sourceProvider = this.getMapSourceProvider({ - mapType, sourceType: mapSource && mapSource.sourceType || '' - }); - if (sourceProvider) { - return sourceProvider.createAsync({ - ...this.mapSettings, - worldView: { ...this.mapSettings.worldView, sourceType: mapSource.sourceType }, - data: { ...this.mapSettings.data, overlay: null, config: mapSource.config, key: mapSource.key } - }); - } else { - return Promise.resolve(null); - } - } - - private destroyCurrentComponent(): void { - this.destroyPlugins(); - if (this._activeMap) { - this._activeMap.dispose(); - } - if (this._mapComponentRef) { - this._mapComponentRef.destroy(); - this._mapComponentRef = undefined; - } - } - -} diff --git a/src/app/@ansyn/imagery/communicator-service/communicator.service.spec.ts b/src/app/@ansyn/imagery/communicator-service/communicator.service.spec.ts deleted file mode 100644 index 7fa8276832..0000000000 --- a/src/app/@ansyn/imagery/communicator-service/communicator.service.spec.ts +++ /dev/null @@ -1,87 +0,0 @@ -import { async, inject, TestBed } from '@angular/core/testing'; -import { ImageryCommunicatorService } from './communicator.service'; -import { EventEmitter } from '@angular/core'; -import { IImageryMapPosition } from '../model/case-map-position.model'; -import { CommunicatorEntity, IMapInstanceChanged } from './communicator.entity'; - -describe('ImageryCommunicatorService', () => { - let imageryCommunicatorService: ImageryCommunicatorService; - const componentManager1: CommunicatorEntity = { - id: '1', - positionChanged: new EventEmitter<{ id: string, position: IImageryMapPosition }>(), - pointerMove: new EventEmitter(), - contextMenu: new EventEmitter(), - imageryCommunicatorService: { instanceCreated: new EventEmitter() }, - mapInstanceChanged: new EventEmitter(), - plugins: [] - }; - - const componentManager2: CommunicatorEntity = { - id: '2', - positionChanged: new EventEmitter<{ id: string, position: IImageryMapPosition }>(), - imageryCommunicatorService: { instanceCreated: new EventEmitter() }, - mapInstanceChanged: new EventEmitter(), - plugins: [] - }; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [], - providers: [ImageryCommunicatorService] - }).compileComponents(); - })); - - beforeEach(inject([ImageryCommunicatorService], (_imageryCommunicatorService) => { - imageryCommunicatorService = _imageryCommunicatorService; - })); - - it('should create "imageryCommunicatorService" service', () => { - expect(imageryCommunicatorService).toBeTruthy(); - }); - - it('createCommunicator should raise instanceCreated event', () => { - - spyOn(imageryCommunicatorService.instanceCreated, 'emit'); - imageryCommunicatorService.createCommunicator(componentManager1); - expect(imageryCommunicatorService.instanceCreated.emit).toHaveBeenCalledWith({ id: '1' }); - }); - - it('provide Communicator should return expected communicator', () => { - - imageryCommunicatorService.createCommunicator(componentManager1); - imageryCommunicatorService.createCommunicator(componentManager2); - - expect(((imageryCommunicatorService.provide(componentManager2.id)))).toEqual(componentManager2); - expect(((imageryCommunicatorService.provide(componentManager1.id)))).toEqual(componentManager1); - expect(imageryCommunicatorService.provide('3')).toEqual(null); - }); - - it('communicators should return object containing the communicators', () => { - - imageryCommunicatorService.createCommunicator(componentManager1); - imageryCommunicatorService.createCommunicator(componentManager2); - - const communicatorsObject = imageryCommunicatorService.communicators; - expect(((communicatorsObject[componentManager1.id]))).toEqual(componentManager1); - }); - - it('communicatorsAsArray should return array of communicators', () => { - - imageryCommunicatorService.createCommunicator(componentManager1); - imageryCommunicatorService.createCommunicator(componentManager2); - - const communicatorsArray = imageryCommunicatorService.communicatorsAsArray(); - expect(communicatorsArray.length).toEqual(2); - }); - - it('remove should remove the communicator from service', () => { - - imageryCommunicatorService.createCommunicator(componentManager1); - imageryCommunicatorService.createCommunicator(componentManager2); - - spyOn(imageryCommunicatorService.instanceRemoved, 'emit'); - const id = componentManager2.id; - imageryCommunicatorService.remove(id); - expect(imageryCommunicatorService.instanceRemoved.emit).toHaveBeenCalledWith({ id }); - }); -}); diff --git a/src/app/@ansyn/imagery/communicator-service/communicator.service.ts b/src/app/@ansyn/imagery/communicator-service/communicator.service.ts deleted file mode 100644 index 3d8396b90e..0000000000 --- a/src/app/@ansyn/imagery/communicator-service/communicator.service.ts +++ /dev/null @@ -1,44 +0,0 @@ -import { EventEmitter, Injectable } from '@angular/core'; -import { CommunicatorEntity } from './communicator.entity'; - -export interface ICommunicators { - [id: string]: CommunicatorEntity; -} - -@Injectable() -export class ImageryCommunicatorService { - - public communicators: ICommunicators = {}; - public instanceCreated = new EventEmitter<{ id: string }>(); - public instanceRemoved = new EventEmitter<{ id: string }>(); - - public provide(id: string): CommunicatorEntity { - - if (!this.communicators[id]) { - return null; - } - return this.communicators[id]; - } - - communicatorsAsArray(): CommunicatorEntity[] { - return Object.values(this.communicators) as CommunicatorEntity[]; - } - - public createCommunicator(communicatorEntity: CommunicatorEntity): void { - if (this.communicators[communicatorEntity.id]) { - throw new Error(`'Can't create communicator ${ communicatorEntity.id }, already exists!'`); - } - - this.communicators[communicatorEntity.id] = communicatorEntity; - this.instanceCreated.emit({ id: communicatorEntity.id }); - } - - public remove(id: string) { - if (!this.communicators[id]) { - return; - } - this.communicators[id] = null; - delete (this.communicators[id]); - this.instanceRemoved.emit({ id }); - } -} diff --git a/src/app/@ansyn/imagery/decorators/imagery-map.ts b/src/app/@ansyn/imagery/decorators/imagery-map.ts deleted file mode 100644 index 1d7747c14b..0000000000 --- a/src/app/@ansyn/imagery/decorators/imagery-map.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { IBaseImageryMapConstructor, IImageryMapMetaData } from '../model/base-imagery-map'; -import { ImageryDecorator } from './index'; -import { AutoSubscriptions } from 'auto-subscriptions'; - -export function ImageryMap(metaData: IImageryMapMetaData): any { - return function (constructor: IBaseImageryMapConstructor): void { - ImageryDecorator(metaData)(constructor); - AutoSubscriptions({ init: 'initMapSubscriptions', destroy: 'dispose' })(constructor); - }; -} diff --git a/src/app/@ansyn/imagery/decorators/imagery-plugin.ts b/src/app/@ansyn/imagery/decorators/imagery-plugin.ts deleted file mode 100644 index 7dda94d1b5..0000000000 --- a/src/app/@ansyn/imagery/decorators/imagery-plugin.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { ImageryDecorator } from './index'; -import { IBaseImageryPluginConstructor, IImageryPluginMetaData } from '../model/base-imagery-plugin'; -import { AutoSubscriptions } from 'auto-subscriptions'; - - -export function ImageryPlugin(metaData: IImageryPluginMetaData) { - return function (constructor: IBaseImageryPluginConstructor) { - ImageryDecorator(metaData)(constructor); - AutoSubscriptions({ init: 'onInitSubscriptions', destroy: 'onDispose' })(constructor); - }; -} diff --git a/src/app/@ansyn/imagery/decorators/imagery-visualizer.ts b/src/app/@ansyn/imagery/decorators/imagery-visualizer.ts deleted file mode 100644 index 6aab6bbf34..0000000000 --- a/src/app/@ansyn/imagery/decorators/imagery-visualizer.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { IBaseImageryVisualizerClass, IImageryVisualizerMetaData } from '../model/base-imagery-visualizer'; -import { ImageryPlugin } from './imagery-plugin'; - -export function ImageryVisualizer(metaData: IImageryVisualizerMetaData) { - return function (constructor: IBaseImageryVisualizerClass) { - ImageryPlugin(metaData)(constructor); - }; -} diff --git a/src/app/@ansyn/imagery/decorators/index.ts b/src/app/@ansyn/imagery/decorators/index.ts deleted file mode 100644 index 4ff2a473a5..0000000000 --- a/src/app/@ansyn/imagery/decorators/index.ts +++ /dev/null @@ -1,10 +0,0 @@ -/** - * @description Add depths to constructor - */ -export function ImageryDecorator(metaData) { - return function (constructor: any) { - Object.entries(metaData).forEach(([key, value]) => { - constructor.prototype[key] = value; - }); - }; -} diff --git a/src/app/@ansyn/imagery/decorators/map-source-provider.ts b/src/app/@ansyn/imagery/decorators/map-source-provider.ts deleted file mode 100644 index 7657657e6a..0000000000 --- a/src/app/@ansyn/imagery/decorators/map-source-provider.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { ImageryDecorator } from './index'; -import { IBaseMapSourceProviderConstructor, IImageryMapSourceMetaData } from '../model/base-map-source-provider'; -import { Injectable } from '@angular/core'; - -export function ImageryMapSource(metaData: IImageryMapSourceMetaData) { - return function (constructor: IBaseMapSourceProviderConstructor) { - Injectable()(constructor); - ImageryDecorator(metaData)(constructor); - }; -} diff --git a/src/app/@ansyn/imagery/imagery.module.ts b/src/app/@ansyn/imagery/imagery.module.ts deleted file mode 100644 index 518945b846..0000000000 --- a/src/app/@ansyn/imagery/imagery.module.ts +++ /dev/null @@ -1,63 +0,0 @@ -import { ModuleWithProviders, NgModule } from '@angular/core'; -import { CommonModule } from '@angular/common'; -import { ImageryComponent } from './imagery/imagery.component'; -import { ImageryCommunicatorService } from './communicator-service/communicator.service'; -import { IImageryConfig, initialImageryConfig } from './model/iimagery-config'; -import { CacheService } from './cache-service/cache.service'; -import { createImageryMapsCollection, ImageryMapsProvider } from './providers/imagery-map-collection'; -import { MapComponent } from './map/map.component'; -import { IBaseImageryMapConstructor } from './model/base-imagery-map'; -import { BaseMapSourceProviderProvider, createMapSourceProviders } from './providers/map-source-providers'; -import { createConfig } from './providers/config'; -import { createPluginsCollection } from './providers/plugins-collection'; -import { IBaseImageryPluginConstructor } from './model/base-imagery-plugin'; -import { IBaseMapSourceProviderConstructor } from './model/base-map-source-provider'; -import { HttpClientModule } from '@angular/common/http'; - -export interface IImageryMetaData { - maps: IBaseImageryMapConstructor[], - plugins: IBaseImageryPluginConstructor[], - mapSourceProviders: IBaseMapSourceProviderConstructor[] -} - -// @dynamic -@NgModule({ - imports: [ - CommonModule, - HttpClientModule - ], - declarations: [ImageryComponent, MapComponent], - entryComponents: [MapComponent], - providers: [ - ImageryCommunicatorService, - CacheService, - createConfig(initialImageryConfig), - createPluginsCollection([]), - createImageryMapsCollection([]), - createMapSourceProviders([]), - BaseMapSourceProviderProvider, - ImageryMapsProvider - ], - exports: [ImageryComponent] -}) -export class ImageryModule { - - static provide(metadata: IImageryMetaData): ModuleWithProviders { - return { - ngModule: ImageryModule, - providers: [ - createImageryMapsCollection(metadata.maps), - createPluginsCollection(metadata.plugins), - createMapSourceProviders(metadata.mapSourceProviders) - ] - }; - } - - static provideConfig(config: IImageryConfig): ModuleWithProviders { - return { - ngModule: ImageryModule, - providers: [createConfig(config)] - }; - } - -} diff --git a/src/app/@ansyn/imagery/imagery/imagery.component.html b/src/app/@ansyn/imagery/imagery/imagery.component.html deleted file mode 100644 index 8933daa337..0000000000 --- a/src/app/@ansyn/imagery/imagery/imagery.component.html +++ /dev/null @@ -1 +0,0 @@ - diff --git a/src/app/@ansyn/imagery/imagery/imagery.component.less b/src/app/@ansyn/imagery/imagery/imagery.component.less deleted file mode 100644 index 9bb4cd3cbc..0000000000 --- a/src/app/@ansyn/imagery/imagery/imagery.component.less +++ /dev/null @@ -1,10 +0,0 @@ -:host { - position: relative; - width: 100%; - height: 100%; - background: black; - display: flex; - justify-content: center; - box-sizing: border-box; - z-index: 1; -} diff --git a/src/app/@ansyn/imagery/imagery/imagery.component.spec.ts b/src/app/@ansyn/imagery/imagery/imagery.component.spec.ts deleted file mode 100644 index e492aa1e27..0000000000 --- a/src/app/@ansyn/imagery/imagery/imagery.component.spec.ts +++ /dev/null @@ -1,73 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; -import { ImageryComponent } from './imagery.component'; -import { ImageryCommunicatorService } from '../communicator-service/communicator.service'; -import { BaseMapSourceProvider, MAP_SOURCE_PROVIDERS_CONFIG } from '../model/base-map-source-provider'; -import { CacheService } from '../cache-service/cache.service'; -import { PLUGINS_COLLECTIONS } from '../providers/plugins-collection'; -import { IMAGERY_MAPS } from '../providers/imagery-map-collection'; -import { ImageryMapSource } from '../decorators/map-source-provider'; -import { MAP_PROVIDERS_CONFIG } from '../model/map-providers-config'; -import { IMapSettings } from '../model/map-settings'; - -@ImageryMapSource({ - sourceType: 'sourceType1', - supported: ['mapType1'] -}) -class SourceProviderMock1 extends BaseMapSourceProvider { - create(metaData: any): Promise { - return Promise.resolve(true); - } - - createAsync(metaData: IMapSettings): Promise { - return Promise.resolve(); - } - - startTimingLog(key) { - - } - - endTimingLog(key) { - - } -} - -describe('ImageryComponent', () => { - let component: ImageryComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - imports: [], - declarations: [ImageryComponent], - providers: [ - { provide: CacheService, useValue: null }, - { provide: PLUGINS_COLLECTIONS, useValue: [] }, - { provide: BaseMapSourceProvider, useClass: SourceProviderMock1, multi: true }, - { - provide: MAP_SOURCE_PROVIDERS_CONFIG, - useValue: {} - }, - { - provide: MAP_PROVIDERS_CONFIG, - useValue: {} - }, - { provide: IMAGERY_MAPS, useValue: {} }, - ImageryCommunicatorService - ] - }).compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(ImageryComponent); - component = fixture.componentInstance; - component.communicator = { - ngOnInit: () => { - } - }; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/src/app/@ansyn/imagery/imagery/imagery.component.ts b/src/app/@ansyn/imagery/imagery/imagery.component.ts deleted file mode 100644 index 418d91e4f9..0000000000 --- a/src/app/@ansyn/imagery/imagery/imagery.component.ts +++ /dev/null @@ -1,29 +0,0 @@ -import { Component, Input, OnInit, ViewChild, ViewContainerRef } from '@angular/core'; -import { CommunicatorEntity } from '../communicator-service/communicator.entity'; -import { IMapSettings } from '../model/map-settings'; - -@Component({ - selector: 'ansyn-imagery-view', - templateUrl: './imagery.component.html', - styleUrls: ['./imagery.component.less'], - providers: [CommunicatorEntity] -}) - -export class ImageryComponent implements OnInit { - @ViewChild('mapComponentElem', { read: ViewContainerRef, static: true }) - set mapComponentElem(value: ViewContainerRef) { - this.communicator.mapComponentElem = value - } - - @Input() - set settings(value: IMapSettings) { - this.communicator.mapSettings = value; - }; - - constructor(public communicator: CommunicatorEntity) { - } - - ngOnInit() { - this.communicator.ngOnInit(); - } -} diff --git a/src/app/@ansyn/imagery/imagery/providers/imagery.providers.ts b/src/app/@ansyn/imagery/imagery/providers/imagery.providers.ts deleted file mode 100644 index ef4cfe187a..0000000000 --- a/src/app/@ansyn/imagery/imagery/providers/imagery.providers.ts +++ /dev/null @@ -1,31 +0,0 @@ -import { FactoryProvider, Injector } from '@angular/core'; -import { BaseImageryPlugin, IBaseImageryPluginConstructor } from '../../model/base-imagery-plugin'; -import { ImageryCollectionEntity, PLUGINS_COLLECTIONS } from '../../providers/plugins-collection'; -import { BaseImageryMap } from '../../model/base-imagery-map'; -import { StaticClassProvider } from '@angular/core'; - -export function BaseImageryPluginProviderFactory(pluginsCollections: Array, parent: Injector, map: BaseImageryMap) { - const providers: StaticClassProvider[] = pluginsCollections - .reduce((previousValue, collection) => [...previousValue, ...collection], []) - .filter((value: IBaseImageryPluginConstructor) => value.prototype instanceof BaseImageryPlugin) - .filter((value: IBaseImageryPluginConstructor) => value.prototype.supported.some(ins => map instanceof ins)) - .map((value: IBaseImageryPluginConstructor) => ({ - provide: BaseImageryPlugin, - useClass: value, - multi: true, - deps: [...value.prototype.deps] - })); - - if (providers.length === 0) { - return []; - } - - const childInjector = Injector.create(providers, parent); - return childInjector.get(BaseImageryPlugin); -} - -export const BaseImageryPluginProvider: FactoryProvider = { - provide: BaseImageryPlugin, - useFactory: BaseImageryPluginProviderFactory, - deps: [PLUGINS_COLLECTIONS, Injector, BaseImageryMap] -}; diff --git a/src/app/@ansyn/imagery/map/map.component.html b/src/app/@ansyn/imagery/map/map.component.html deleted file mode 100644 index 844cbd5ca6..0000000000 --- a/src/app/@ansyn/imagery/map/map.component.html +++ /dev/null @@ -1,4 +0,0 @@ -
-
-
- diff --git a/src/app/@ansyn/imagery/map/map.component.less b/src/app/@ansyn/imagery/map/map.component.less deleted file mode 100644 index e58a82cd23..0000000000 --- a/src/app/@ansyn/imagery/map/map.component.less +++ /dev/null @@ -1,9 +0,0 @@ -div { - position: absolute; - width: 100%; - height: 100%; - left: 0; - top: 0; - display: block; - box-sizing: border-box; -} diff --git a/src/app/@ansyn/imagery/map/map.component.spec.ts b/src/app/@ansyn/imagery/map/map.component.spec.ts deleted file mode 100644 index 0ca796aa75..0000000000 --- a/src/app/@ansyn/imagery/map/map.component.spec.ts +++ /dev/null @@ -1,68 +0,0 @@ -import { async, ComponentFixture, inject, TestBed } from '@angular/core/testing'; -import { MapComponent } from './map.component'; -import { cold } from 'jasmine-marbles'; -import { BaseImageryMap } from '../model/base-imagery-map'; -import { BaseImageryPlugin } from '../model/base-imagery-plugin'; -import { of } from 'rxjs'; - -describe('MapComponent', () => { - let component: MapComponent; - let fixture: ComponentFixture; - let map: BaseImageryMap; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [MapComponent], - providers: [ - { - provide: BaseImageryMap, - useValue: { - initMap: () => of(true), - initMapSubscriptions: () => { - }, - dispose: () => { - } - } - }, - { - provide: BaseImageryPlugin, - useValue: [] - } - ] - }) - .compileComponents(); - })); - - beforeEach(inject([BaseImageryMap], (_map: BaseImageryMap) => { - fixture = TestBed.createComponent(MapComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - map = _map; - })); - - it('should create', () => { - expect(component).toBeTruthy(); - }); - - describe('createMap should raise map via success', () => { - let success: boolean; - - beforeEach(() => { - spyOn(map, 'initMap').and.callFake(() => of(success)); - }); - - it('on success', () => { - success = true; - const expectedResult = cold('(b|)', { b: map }); - expect(component.createMap([])).toBeObservable(expectedResult); - - }); - - it('on failed', () => { - success = false; - const expectedResult = cold('|'); - expect(component.createMap([])).toBeObservable(expectedResult); - }); - - }); -}); diff --git a/src/app/@ansyn/imagery/map/map.component.ts b/src/app/@ansyn/imagery/map/map.component.ts deleted file mode 100644 index bb55508d15..0000000000 --- a/src/app/@ansyn/imagery/map/map.component.ts +++ /dev/null @@ -1,42 +0,0 @@ -import { Component, ElementRef, Inject, OnDestroy, OnInit, ViewChild, ViewContainerRef } from '@angular/core'; -import { Observable } from 'rxjs'; -import { BaseImageryPlugin } from '../model/base-imagery-plugin'; -import { filter, map, take, tap } from 'rxjs/operators'; -import { BaseImageryMap } from '../model/base-imagery-map'; -import { IImageryMapPosition } from '../model/case-map-position.model'; - -@Component({ - selector: 'ansyn-map', - templateUrl: './map.component.html', - styleUrls: ['./map.component.less'] -}) -export class MapComponent implements OnInit, OnDestroy { - @ViewChild('mapElement', {static: true}) protected mapElement: ElementRef; - @ViewChild('mapElementShadowNorth', {static: true}) protected mapElementShadowNorth: ElementRef; - @ViewChild('mapElementShadowDoubleBuffer', {static: true}) protected mapElementShadowDoubleBuffer: ElementRef; - @ViewChild('mapViewContainerRef', { read: ViewContainerRef, static: true }) mapViewContainerRef: ViewContainerRef; - - constructor(public map: BaseImageryMap, @Inject(BaseImageryPlugin) public plugins: BaseImageryPlugin[]) { - } - - createMap(layer: any, position?: IImageryMapPosition): Observable { - return this.map - .initMap(this.mapElement.nativeElement, this.mapElementShadowNorth.nativeElement, this.mapElementShadowDoubleBuffer.nativeElement, layer, position, this.mapViewContainerRef) - .pipe( - filter(success => success), - map(() => this.map), - tap(() => this.map.initMapSubscriptions()), - take(1) - ); - }; - - ngOnDestroy(): void { - if (this.map) { - this.map.dispose(); - } - } - - ngOnInit() { - } - -} diff --git a/src/app/@ansyn/imagery/model/base-imagery-map.ts b/src/app/@ansyn/imagery/model/base-imagery-map.ts deleted file mode 100644 index fa08309514..0000000000 --- a/src/app/@ansyn/imagery/model/base-imagery-map.ts +++ /dev/null @@ -1,113 +0,0 @@ -import { EventEmitter, ViewContainerRef } from '@angular/core'; -import { Observable } from 'rxjs'; -import { GeoJsonObject, Point } from 'geojson'; -import { ImageryMapExtent, IImageryMapPosition, IMousePointerMove, IMouseClick } from './case-map-position.model'; -import { IMapErrorMessage, IMapProgress } from './map-progress.model'; -import { IBaseImageryLayer } from './imagery-layer.model'; - -export interface IImageryMapMetaData { - deps?: any[]; - mapType?: string; - defaultMapSource?: string; -} - -export interface ICanvasExportData { - width: number; - height: number; - data: string; -} - -export interface IBaseImageryMapConstructor { - groupLayers: Map; - - new(...args): BaseImageryMap; -} - -// @dynamic -export abstract class BaseImageryMap { - static groupLayers = new Map(); - readonly deps?: any[]; - readonly mapType?: string; - readonly defaultMapSource?: string; - - public positionChanged: EventEmitter = new EventEmitter(); - public mousePointerMoved: EventEmitter = new EventEmitter(); - public mouseSingleClick: EventEmitter = new EventEmitter(); - public mouseRightClick: EventEmitter = new EventEmitter(); - public mouseDoubleClick: EventEmitter = new EventEmitter(); - public moveStart: EventEmitter = new EventEmitter(); - public mapLayerChangedEventEmitter: EventEmitter = new EventEmitter(); - - public tilesLoadProgressEventEmitter: EventEmitter = new EventEmitter(); - public tilesLoadErrorEventEmitter: EventEmitter = new EventEmitter(); - public mapObject: T; - - abstract getCenter(): Observable; - - abstract setCenter(center: Point, animation: boolean): Observable; - - abstract toggleGroup(groupName: string, newState: boolean); - - abstract initMap(element: HTMLElement, shadowNorthElement: HTMLElement, shadowDoubleBufferElement: HTMLElement, layer?: IBaseImageryLayer, position?: IImageryMapPosition, mapViewContainerRef?: ViewContainerRef): Observable; - - // This method is for the use of the @AutoSubscription decorator - initMapSubscriptions(): void { - }; - - /** - * @description Reset the Map view with a new view with the new layer projection (NOTE: also Delete's previous layers) - * @param layer The new layer to set the view with. this layer projection will be the views projection - * @param extent The extent (bounding box points) of the map at ESPG:4326 - */ - abstract resetView(layer: IBaseImageryLayer, position: IImageryMapPosition, extent?: ImageryMapExtent, useDoubleBuffer?: boolean): Observable; - - abstract addLayer(layer: IBaseImageryLayer): void; - - addMapLayer(layer: IBaseImageryLayer): void { - throw new Error('Method not implemented.'); - }; - - getMainLayer(): IBaseImageryLayer { - throw new Error('Method not implemented.'); - } - - abstract getLayers(): IBaseImageryLayer[]; - - abstract removeLayer(layer: IBaseImageryLayer): void; - - abstract setPosition(position: IImageryMapPosition): Observable; - - abstract setRotation(rotation: number): void; - - abstract getRotation(): number; - - abstract zoomIn(): void; - - abstract zoomOut(): void; - - abstract one2one(): void; - - abstract getPosition(): Observable; - - abstract updateSize(): void; - - abstract addGeojsonLayer(data: GeoJsonObject); - - abstract dispose(): void; - - abstract addLayerIfNotExist(layer: IBaseImageryLayer); - - abstract getCoordinateFromScreenPixel(screenPixel: { x, y }): [number, number, number]; - - abstract getHtmlContainer(): HTMLElement; - - abstract getProjectionCode(): string; - - fitToExtent(extent: any): Observable { - throw new Error('Method not implemented.'); - }; - - getExtraData(): { [key: string]: any } { - return {} - } -} diff --git a/src/app/@ansyn/imagery/model/base-imagery-plugin.ts b/src/app/@ansyn/imagery/model/base-imagery-plugin.ts deleted file mode 100644 index 2bf53da06f..0000000000 --- a/src/app/@ansyn/imagery/model/base-imagery-plugin.ts +++ /dev/null @@ -1,55 +0,0 @@ -import { EventEmitter } from '@angular/core'; -import { CommunicatorEntity } from '../communicator-service/communicator.entity'; -import { Observable, of } from 'rxjs'; -import { BaseImageryMap, IBaseImageryMapConstructor } from './base-imagery-map'; - -export interface IImageryPluginMetaData { - readonly supported?: IBaseImageryMapConstructor[]; - readonly deps?: any[]; -} - -export type IBaseImageryPluginConstructor = new(...args) => BaseImageryPlugin; - -export class BaseImageryPlugin implements IImageryPluginMetaData { - readonly supported?: IBaseImageryMapConstructor[]; - readonly deps?: any[]; - - communicator: CommunicatorEntity; - isEnabled: boolean; - onDisposedEvent: EventEmitter = new EventEmitter(); - - get iMap(): BaseImageryMap { - return this.communicator && this.communicator.ActiveMap; - } - - get mapId(): string { - return this.communicator && this.communicator.id; - } - - onResetView(): Observable { - return of(true); - }; - - dispose() { - this.onDisposedEvent.emit(); - this.onDispose(); - } - - init(communicator: CommunicatorEntity) { - this.communicator = communicator; - this.onInit(); - this.onInitSubscriptions(); - }; - - onInit(): void { - - } - - onInitSubscriptions(): void { - - } - - onDispose(): void { - - } -} diff --git a/src/app/@ansyn/imagery/model/base-imagery-visualizer.ts b/src/app/@ansyn/imagery/model/base-imagery-visualizer.ts deleted file mode 100644 index 8082cf8c8e..0000000000 --- a/src/app/@ansyn/imagery/model/base-imagery-visualizer.ts +++ /dev/null @@ -1,93 +0,0 @@ -import { Observable } from 'rxjs'; -import { BaseImageryPlugin, IImageryPluginMetaData } from './base-imagery-plugin'; -import { IVisualizerEntity } from './visualizers/visualizers-entity'; - -export type VisualizerInteractionTypes = - 'click' - | 'pointerMove' - | 'doubleClick' - | 'contextMenu' - | 'drawInteractionHandler' - | 'translateInteractionHandler' - | 'labelTranslateHandler' - | 'editAnnotationTranslateHandler' - | 'modifyInteractionHandler'; - -export const VisualizerInteractions: { [key: string]: VisualizerInteractionTypes } = { - click: 'click', - pointerMove: 'pointerMove', - doubleClick: 'doubleClick', - contextMenu: 'contextMenu', - drawInteractionHandler: 'drawInteractionHandler', - translateInteractionHandler: 'translateInteractionHandler', // for pixel offset translate - labelTranslateHandler: 'labelTranslateHandler', - editAnnotationTranslateHandler: 'editAnnotationTranslateHandler', // for actual geometry change - modifyInteractionHandler: 'modifyInteractionHandler' -}; - -export interface IImageryVisualizerMetaData extends IImageryPluginMetaData { - readonly isHideable?: boolean; - readonly dontRestrictToExtent?: boolean; -} - -export abstract class BaseImageryVisualizer extends BaseImageryPlugin implements IImageryVisualizerMetaData { - readonly isHideable?: boolean; - readonly dontRestrictToExtent?: boolean; - type: string; - source: any; - vector: any; - isHidden: boolean; - interactions: Map; - - /** - * @description Replace all existing entities (CRUD) - * @param logicalEntities - */ - abstract setEntities(logicalEntities: IVisualizerEntity[]): Observable; - - /** - * @description ADD Or Update Entities (CRU) - * @param logicalEntities - */ - abstract addOrUpdateEntities(logicalEntities: IVisualizerEntity[]): Observable - - /** - * @description Delete Single Entity (D) - * @param logicalEntityId - */ - abstract removeEntity(logicalEntityId: string); - - /** - * @description Delete All Entities (D) - */ - abstract clearEntities(); - - /** - * @description Get All Entities - */ - abstract getEntities(): IVisualizerEntity[]; - - /** - * @description This function is called for Manually hover - */ - - abstract setVisibility(isVisible: boolean): void; - - /** - * @description This function is called for adding interactions ( mapObject and interactions ) - * @param type - * @param interactionInstance - */ - - abstract addInteraction(type: VisualizerInteractionTypes, interactionInstance: any): void; - - /** - * @description This function is called for removing interactions ( mapObject and interactions ) - * @param type - * @param interactionInstance - */ - - abstract removeInteraction(type: VisualizerInteractionTypes, interactionInstance: any): void; -} - -export type IBaseImageryVisualizerClass = new(...args) => BaseImageryVisualizer; diff --git a/src/app/@ansyn/imagery/model/base-map-source-provider.ts b/src/app/@ansyn/imagery/model/base-map-source-provider.ts deleted file mode 100644 index f901c2c18c..0000000000 --- a/src/app/@ansyn/imagery/model/base-map-source-provider.ts +++ /dev/null @@ -1,79 +0,0 @@ -import { Inject, Injectable, InjectionToken } from '@angular/core'; -import { CacheService } from '../cache-service/cache.service'; -import { ImageryCommunicatorService } from '../communicator-service/communicator.service'; -import { IBaseImageryMapConstructor } from './base-imagery-map'; -import { IBaseImageryLayer, ImageryLayerProperties } from './imagery-layer.model'; -import { IMapSettings } from './map-settings'; - -export const IMAGERY_MAP_SOURCE_PROVIDERS = new InjectionToken('IMAGERY_MAP_SOURCE_PROVIDERS'); - -export const MAP_SOURCE_PROVIDERS_CONFIG = 'mapSourceProvidersConfig'; - -export interface IMapSourceProvidersConfig { - [key: string]: T; -} - -export interface IImageryMapSourceMetaData { - readonly sourceType: string; - readonly supported?: IBaseImageryMapConstructor[]; -} - -export type IBaseMapSourceProviderConstructor = new(...args) => BaseMapSourceProvider; - -@Injectable() -export abstract class BaseMapSourceProvider implements IImageryMapSourceMetaData { - readonly sourceType: string; - readonly supported?: IBaseImageryMapConstructor[]; - - protected get config(): CONF { - return this.mapSourceProvidersConfig[this.sourceType]; - } - - constructor(protected cacheService: CacheService, - protected imageryCommunicatorService: ImageryCommunicatorService, - @Inject(MAP_SOURCE_PROVIDERS_CONFIG) protected mapSourceProvidersConfig: IMapSourceProvidersConfig) { - } - - generateLayerId(metaData: META): string { - return new Date().toISOString() - }; - - protected createOrGetFromCache(metaData: META): Promise { - const cacheId = this.generateLayerId(metaData); - const cacheLayer = this.cacheService.getLayerFromCache(cacheId); - if (cacheLayer) { - this.setExtraData(cacheLayer, { [ImageryLayerProperties.FROM_CACHE]: true }); - return Promise.resolve(cacheLayer); - } - - return this.create(metaData).then((layer) => { - layer.set(ImageryLayerProperties.ID, cacheId); - this.cacheService.addLayerToCache(cacheId, layer); - const extraData = this.generateExtraData(metaData); - this.setExtraData(layer, extraData); - return layer; - }); - } - - protected abstract create(metaData: META): Promise; - - createAsync(metaData: META): Promise { - return this.createOrGetFromCache(metaData) - } - - existsInCache(metaData: META): boolean { - const cacheId = this.generateLayerId(metaData); - const cacheLayer = this.cacheService.getLayerFromCache(cacheId); - return Boolean(cacheLayer); - } - - generateExtraData(metaData: META): any { - return {} - }; - - setExtraData(layer: IBaseImageryLayer, extraData: any): void { - } - - removeExtraData(layer: IBaseImageryLayer) { - } -} diff --git a/src/app/@ansyn/imagery/model/case-map-position.model.ts b/src/app/@ansyn/imagery/model/case-map-position.model.ts deleted file mode 100644 index 5dd4f2c2ec..0000000000 --- a/src/app/@ansyn/imagery/model/case-map-position.model.ts +++ /dev/null @@ -1,37 +0,0 @@ -import { Point, Polygon } from 'geojson'; - -export type ImageryMapExtent = [number, number, number, number]; - -export interface IImageryMapProjectedState { - projection: { - code: string; - }; - center?: [number, number, number]; - resolution?: number; - rotation?: number; - pitch?: number; - roll?: number; - zoom?: number; - cameraPosition?: any; -} - -export interface IMousePointerMove { - lat: number; - long: number; - height: number; -} - -export interface IMouseClick { - worldLocation: Point; - screenPixel: [number, number]; - originalEvent: MouseEvent; -} - -export type ImageryMapExtentPolygon = Polygon; - -export interface IImageryMapPosition { - projectedState?: IImageryMapProjectedState; - extentPolygon?: ImageryMapExtentPolygon; - customResolution?: number; -} - diff --git a/src/app/@ansyn/imagery/model/configuration.token.ts b/src/app/@ansyn/imagery/model/configuration.token.ts deleted file mode 100644 index d13eb6a1b2..0000000000 --- a/src/app/@ansyn/imagery/model/configuration.token.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { InjectionToken } from '@angular/core'; -import { IImageryConfig } from './iimagery-config'; - -export const IMAGERY_CONFIG: InjectionToken = new InjectionToken('IMAGERY_CONFIG'); diff --git a/src/app/@ansyn/imagery/model/iimagery-config.ts b/src/app/@ansyn/imagery/model/iimagery-config.ts deleted file mode 100644 index 75d9e17876..0000000000 --- a/src/app/@ansyn/imagery/model/iimagery-config.ts +++ /dev/null @@ -1,9 +0,0 @@ -export interface IImageryConfig { - maxCachedLayers: number; - stayInImageryVerticalPadding: number; -} - -export const initialImageryConfig: IImageryConfig = { - maxCachedLayers: 20, - stayInImageryVerticalPadding: 35 -}; diff --git a/src/app/@ansyn/imagery/model/imagery-layer.model.ts b/src/app/@ansyn/imagery/model/imagery-layer.model.ts deleted file mode 100644 index f85bbf031d..0000000000 --- a/src/app/@ansyn/imagery/model/imagery-layer.model.ts +++ /dev/null @@ -1,20 +0,0 @@ -export interface IBaseImageryLayer { - get(key: any): any; - set(key: any, value: any): void; - [key: string]: any; -} - -export enum ImageryLayerProperties { - NAME = 'name', - ID = 'id', - FROM_CACHE = 'fromCache', - CACHE_ID = 'cacheId', - MAIN_EXTENT = 'mainExtent', - FOOTPRINT = 'footprint', - DESCRIPTION = 'description' -} - -export const IMAGERY_MAIN_LAYER_NAME = 'main'; - -export const IMAGERY_BASE_MAP_LAYER = 'base_map_layer'; - diff --git a/src/app/@ansyn/imagery/model/map-progress.model.ts b/src/app/@ansyn/imagery/model/map-progress.model.ts deleted file mode 100644 index 0e32d939dc..0000000000 --- a/src/app/@ansyn/imagery/model/map-progress.model.ts +++ /dev/null @@ -1,9 +0,0 @@ -export interface IMapProgress { - mapId?: string, - progress: number -} - -export interface IMapErrorMessage { - mapId?: string, - message: string -} diff --git a/src/app/@ansyn/imagery/model/map-providers-config.ts b/src/app/@ansyn/imagery/model/map-providers-config.ts deleted file mode 100644 index 232a495b03..0000000000 --- a/src/app/@ansyn/imagery/model/map-providers-config.ts +++ /dev/null @@ -1,20 +0,0 @@ -export interface IMapSource { - key: string; - displayName: string; - thumbnail: string; - sourceType: string; - config: { - [key: string]: any - } -} - -export interface IMapProviderConfig { - defaultMapSource: string; - sources: IMapSource[]; -} - -export interface IMapProvidersConfig { - [key: string]: IMapProviderConfig; -} - -export const MAP_PROVIDERS_CONFIG = 'mapProvidersConfig'; diff --git a/src/app/@ansyn/imagery/model/map-settings.ts b/src/app/@ansyn/imagery/model/map-settings.ts deleted file mode 100644 index 2904e58f71..0000000000 --- a/src/app/@ansyn/imagery/model/map-settings.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { IImageryMapPosition } from './case-map-position.model'; -export type MapOrientation = 'User Perspective' | 'Imagery Perspective'; - -export interface IWorldViewMapState { - mapType: string; - sourceType: string; -} - -export interface IMapSettingsData { - position: IImageryMapPosition; - - [key: string]: any; -} - -export interface IMapSettings { - id: string; - worldView: IWorldViewMapState; - data: IMapSettingsData; - orientation?: MapOrientation; - flags: { - hideLayers?: boolean; - }; -} diff --git a/src/app/@ansyn/imagery/model/visualizers-config.token.ts b/src/app/@ansyn/imagery/model/visualizers-config.token.ts deleted file mode 100644 index 5ee74bded7..0000000000 --- a/src/app/@ansyn/imagery/model/visualizers-config.token.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { IVisualizerStateStyle } from './visualizers/visualizer-state'; - -export const VisualizersConfig = 'visualizersConfig'; - -export interface IVisualizersConfig { - [key: string]: Partial -} diff --git a/src/app/@ansyn/imagery/model/visualizers/visualizer-state.ts b/src/app/@ansyn/imagery/model/visualizers/visualizer-state.ts deleted file mode 100644 index 669a390990..0000000000 --- a/src/app/@ansyn/imagery/model/visualizers/visualizer-state.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { IVisualizerStyle } from './visualizer-style'; - -export interface IVisualizerStateStyle { - opacity: number; - colors?: { - active: string, - inactive: string, - display: string, - favorite: string - }, - initial?: IVisualizerStyle; - hover?: Partial; - minSimplifyVertexCountLimit?: number; - entities?: { - [key: string]: Partial; - }; - extra?: any; -} - -export enum VisualizerStates { - INITIAL = 'initial', - HOVER = 'hover', - ENTITIES = 'entities' -} diff --git a/src/app/@ansyn/imagery/model/visualizers/visualizer-style.ts b/src/app/@ansyn/imagery/model/visualizers/visualizer-style.ts deleted file mode 100644 index 534281612c..0000000000 --- a/src/app/@ansyn/imagery/model/visualizers/visualizer-style.ts +++ /dev/null @@ -1,52 +0,0 @@ -export type FeatureField = T | ((feature: any) => T); - -export interface IStroke { - stroke?: string | any; - 'stroke-width'?: number | any; - 'stroke-opacity'?: number | any; - 'stroke-dasharray'?: number | any; -} - -export interface IFill { - fill?: string | any; - 'fill-opacity'?: number | any; -} - -export interface ILabel extends IStroke { - fontSize?: number | any; - fill?: string; - offsetY?: FeatureField; // for first use - text?: FeatureField; - overflow?: boolean; -} - -export interface IIcon { - scale: number; - src: string; - anchor?: number[]; - rotation?: number; - rotateWithView?: boolean; -} - -export interface IVisualizerStyle extends IStroke, IFill { - zIndex?: number; - 'marker-color'?: string; - 'marker-size'?: MarkerSize; - shadow?: IStroke; - icon?: IIcon | any; - geometry?: any; - circle?: number | any; - label?: ILabel; -} - -export enum MarkerSize { - small = 'small', - medium = 'medium', - large = 'large' -} - -export enum MarkerSizeDic { - small = 4, - medium = 6, - large = 8 -} diff --git a/src/app/@ansyn/imagery/model/visualizers/visualizers-entity.ts b/src/app/@ansyn/imagery/model/visualizers/visualizers-entity.ts deleted file mode 100644 index bd00f32664..0000000000 --- a/src/app/@ansyn/imagery/model/visualizers/visualizers-entity.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { IVisualizerStateStyle } from './visualizer-state'; -import { Feature } from 'geojson'; - -export interface IVisualizerEntity { - id: string; - label?: {text?: string, geometry?: any}; - labelSize?: number; - featureJson: Feature; - icon?: any; - type?: string; - style?: Partial; - showMeasures?: boolean; - undeletable?: boolean; - showArea?: boolean; - labelTranslateOn?: boolean; -} diff --git a/src/app/@ansyn/imagery/ng-package.json b/src/app/@ansyn/imagery/ng-package.json deleted file mode 100644 index a778e61939..0000000000 --- a/src/app/@ansyn/imagery/ng-package.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "$schema": "../../../../node_modules/ng-packagr/ng-package.schema.json", - "dest": "../../../../dist/ansyn/imagery", - "whitelistedNonPeerDependencies": [ - "auto-subscriptions", - "@turf/turf" - ], - "lib": { - "entryFile": "./public_api.ts", - "styleIncludePaths": [ - "../" - ] - } -} diff --git a/src/app/@ansyn/imagery/package.json b/src/app/@ansyn/imagery/package.json deleted file mode 100644 index 0de19e6d5e..0000000000 --- a/src/app/@ansyn/imagery/package.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "name": "@ansyn/imagery", - "version": "2.1.1", - "keywords": [], - "author": "ansyn", - "license": "MIT", - "peerDependencies": { - "@angular/common": "~9.1.0", - "@angular/core": "~9.1.0", - "@types/geojson": "7946.0.3" - }, - "dependencies": { - "auto-subscriptions": "^2.0.5", - "@turf/turf": "^5.1.6" - } -} diff --git a/src/app/@ansyn/imagery/projection-service/projection.service.ts b/src/app/@ansyn/imagery/projection-service/projection.service.ts deleted file mode 100644 index 90b25c34b5..0000000000 --- a/src/app/@ansyn/imagery/projection-service/projection.service.ts +++ /dev/null @@ -1,35 +0,0 @@ -import { Observable } from 'rxjs'; -import { FeatureCollection, GeometryObject, Point } from 'geojson'; -import { CommunicatorEntity } from '../communicator-service/communicator.entity'; - -export abstract class ProjectionService { - /* Image to ground */ - - // image point - abstract projectAccurately(point: Point, mapObject: any): Observable; - - abstract projectApproximately(point: Point, mapObject: any): Observable; - - abstract projectApproximatelyFromProjection(point: Point, sourceProjection: string, destProjection: string): Observable; - - // image collection - abstract projectCollectionAccurately(features: T[], mapObject: any): Observable>; - - abstract projectCollectionApproximately(features: T[], mapObject: any): Observable>; - - /* Ground to image */ - - // ground point - abstract projectAccuratelyToImage(point: Point, mapObject: any): Observable; - - abstract projectApproximatelyToImage(point: Point, mapObject: any): Observable; - - // ground collection - abstract projectCollectionAccuratelyToImage(featureCollection: FeatureCollection, mapObject: any): Observable; - - abstract projectCollectionApproximatelyToImage(featureCollection: FeatureCollection, mapObject: any): Observable; - - - abstract getProjectionProperties(communicator: CommunicatorEntity, annotationLayer: any, feature: any, overlay: any): Object - -} diff --git a/src/app/@ansyn/imagery/providers/config.ts b/src/app/@ansyn/imagery/providers/config.ts deleted file mode 100644 index f3c520bcee..0000000000 --- a/src/app/@ansyn/imagery/providers/config.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { IMAGERY_CONFIG } from '../model/configuration.token'; -import { IImageryConfig } from '../model/iimagery-config'; -import { ValueProvider } from '@angular/core'; - -export function createConfig(config: IImageryConfig): ValueProvider { - return { - provide: IMAGERY_CONFIG, - useValue: config - }; -} diff --git a/src/app/@ansyn/imagery/providers/imagery-map-collection.ts b/src/app/@ansyn/imagery/providers/imagery-map-collection.ts deleted file mode 100644 index fc44cd858a..0000000000 --- a/src/app/@ansyn/imagery/providers/imagery-map-collection.ts +++ /dev/null @@ -1,29 +0,0 @@ -import { FactoryProvider, InjectionToken, ValueProvider } from '@angular/core'; -import { IBaseImageryMapConstructor } from '../model/base-imagery-map'; - -export const IMAGERY_MAPS_COLLECTIONS = new InjectionToken('IMAGERY_MAPS_COLLECTIONS'); -export const IMAGERY_MAPS = new InjectionToken('IMAGERY_MAPS'); - -export interface IImageryMaps { - [mapType: string]: IBaseImageryMapConstructor; -} - -export function ImageryMapsFactory(imageryIMapCollection: IBaseImageryMapConstructor[][]) { - return imageryIMapCollection.reduce((a, b) => [...a, ...b], []).reduce((object, baseImageryMapConstructor: IBaseImageryMapConstructor) => { - return { ...object, [baseImageryMapConstructor.prototype.mapType]: baseImageryMapConstructor } - }, {}); -} - -export function createImageryMapsCollection(imageryMaps: IBaseImageryMapConstructor[]): ValueProvider { - return { - provide: IMAGERY_MAPS_COLLECTIONS, - useValue: imageryMaps, - multi: true - }; -} - -export const ImageryMapsProvider: FactoryProvider = { - provide: IMAGERY_MAPS, - useFactory: ImageryMapsFactory, - deps: [IMAGERY_MAPS_COLLECTIONS] -}; diff --git a/src/app/@ansyn/imagery/providers/map-source-providers.ts b/src/app/@ansyn/imagery/providers/map-source-providers.ts deleted file mode 100644 index 70618b919c..0000000000 --- a/src/app/@ansyn/imagery/providers/map-source-providers.ts +++ /dev/null @@ -1,51 +0,0 @@ -import { - BaseMapSourceProvider, - IBaseMapSourceProviderConstructor, - IMAGERY_MAP_SOURCE_PROVIDERS -} from '../model/base-map-source-provider'; -import { FactoryProvider, Provider } from '@angular/core'; - -export interface IImageryMapSources { - [mapType: string]: { [sourceType: string]: BaseMapSourceProvider } -} - -/** - * @description Factory for Merge an array of arrays to single array ( BaseMapSourceProvider[] ) - */ -export function BaseMapSourceProviderFactory(mapSourceProviders) { - return mapSourceProviders.reduce((a, mapSourceProvider) => [...a, ...mapSourceProvider], []) - .reduce((obj, item) => { - item.supported.forEach((support) => { - obj[support.prototype.mapType] = { ...obj[support.prototype.mapType], [item.sourceType]: item }; - }); - return { ...obj } - }, {}); -} - -/** - * @description Enable to get single array of BaseMapSourceProvider[] for multi array - */ -export function MapSourceProvidersFactory(...mapSourceProviders) { - return mapSourceProviders; -} - -/** - * @description Factory for Merge an array of arrays ( BaseMapSourceProvider ) - */ -export function createMapSourceProviders(mapSourceProviders: IBaseMapSourceProviderConstructor[]): Provider[] { - return [ - mapSourceProviders, - { - provide: IMAGERY_MAP_SOURCE_PROVIDERS, - useFactory: MapSourceProvidersFactory, - deps: mapSourceProviders, - multi: true - } - ]; -} - -export const BaseMapSourceProviderProvider: FactoryProvider = { - provide: BaseMapSourceProvider, - useFactory: BaseMapSourceProviderFactory, - deps: [IMAGERY_MAP_SOURCE_PROVIDERS] -}; diff --git a/src/app/@ansyn/imagery/providers/plugins-collection.ts b/src/app/@ansyn/imagery/providers/plugins-collection.ts deleted file mode 100644 index 1889ef9151..0000000000 --- a/src/app/@ansyn/imagery/providers/plugins-collection.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { InjectionToken, ValueProvider } from '@angular/core'; -import { IBaseImageryPluginConstructor } from '../model/base-imagery-plugin'; - -export const PLUGINS_COLLECTIONS: InjectionToken = new InjectionToken('PLUGINS_COLLECTIONS'); -export type ImageryCollectionEntity = IBaseImageryPluginConstructor; - -export interface IPluginsCollectionProvider extends ValueProvider { - provide: InjectionToken; - useValue: Array; - multi: true; -} - -export function createPluginsCollection(providers: Array): IPluginsCollectionProvider { - return { - provide: PLUGINS_COLLECTIONS, - useValue: providers, - multi: true - }; -} diff --git a/src/app/@ansyn/imagery/public_api.ts b/src/app/@ansyn/imagery/public_api.ts deleted file mode 100644 index dec49cb806..0000000000 --- a/src/app/@ansyn/imagery/public_api.ts +++ /dev/null @@ -1,82 +0,0 @@ -export { MapOrientation } from "./model/map-settings"; -export { IMapSource } from './model/map-providers-config'; -export { IStroke, IIcon } from './model/visualizers/visualizer-style'; -export { ICanvasExportData } from './model/base-imagery-map'; -export { - ImageryMapExtent, ImageryMapExtentPolygon, IImageryMapProjectedState, IImageryMapPosition, IMousePointerMove, IMouseClick -}from './model/case-map-position.model'; - -export { MAP_SOURCE_PROVIDERS_CONFIG, IMapSourceProvidersConfig } from './model/base-map-source-provider'; -export { MarkerSizeDic } from './model/visualizers/visualizer-style'; -export { IVisualizerEntity } from './model/visualizers/visualizers-entity'; -export { MarkerSize } from './model/visualizers/visualizer-style'; -export { IVisualizerStyle } from './model/visualizers/visualizer-style'; -export { IVisualizerStateStyle } from './model/visualizers/visualizer-state'; -export { VisualizerStates } from './model/visualizers/visualizer-state'; -export { IMapProgress, IMapErrorMessage } from './model/map-progress.model'; -export { - IMapProviderConfig, - IMapProvidersConfig, - MAP_PROVIDERS_CONFIG -} from './model/map-providers-config'; -export { IImageryMapSources } from './providers/map-source-providers'; -export { IMapInstanceChanged } from './communicator-service/communicator.entity'; -export { IBaseMapSourceProviderConstructor } from './model/base-map-source-provider'; -export { VisualizerInteractions } from './model/base-imagery-visualizer'; -export { IBaseImageryMapConstructor } from './model/base-imagery-map'; -export { - createImageryMapsCollection, - IMAGERY_MAPS, - IMAGERY_MAPS_COLLECTIONS, - ImageryMapsFactory, ImageryMapsProvider -} from './providers/imagery-map-collection'; -export { - areCoordinatesNumeric, - bboxFromGeoJson, - polygonFromBBOX, - geojsonMultiPolygonToFirstPolygon, - geojsonMultiPolygonToBBOXPolygon, - geojsonMultiPolygonToPolygons, - geojsonPolygonToMultiPolygon, - getPointByGeometry, - getPolygonByPoint, - getPolygonByPointAndRadius, - getPolygonByBufferRadius, - getPolygonIntersectionRatio, - polygonsDontIntersect, - isPointContainedInGeometry, - unifyPolygons, - calculateLineDistance, - calculateGeometryArea, - getDistanceBetweenPoints, - getNewPoint, - EPSG_4326, - EPSG_3857 -} from './utils/geo'; - -export { IVisualizersConfig, VisualizersConfig } from './model/visualizers-config.token'; -export { ImageryVisualizer } from './decorators/imagery-visualizer'; -export { BaseImageryPlugin, IImageryPluginMetaData } from './model/base-imagery-plugin'; -export { - BaseImageryVisualizer, - IBaseImageryVisualizerClass, - IImageryVisualizerMetaData, VisualizerInteractionTypes -} from './model/base-imagery-visualizer'; -export { ImageryPlugin } from './decorators/imagery-plugin'; -export { ImageryMap } from './decorators/imagery-map'; -export { ImageryMapSource } from './decorators/map-source-provider'; -export { BaseImageryMap } from './model/base-imagery-map'; -export { BaseMapSourceProvider } from './model/base-map-source-provider'; -export { CacheService } from './cache-service/cache.service'; -export { ImageryCommunicatorService } from './communicator-service/communicator.service'; -export { CommunicatorEntity } from './communicator-service/communicator.entity'; -export { ProjectionService } from './projection-service/projection.service'; -export { StayInImageryService } from './stay-in-imagery-service/stay-in-imagery.service'; -export { ImageryModule } from './imagery.module'; -export { IMAGERY_CONFIG } from './model/configuration.token'; -export { IBaseImageryLayer, ImageryLayerProperties, IMAGERY_MAIN_LAYER_NAME, IMAGERY_BASE_MAP_LAYER } from './model/imagery-layer.model'; - -export { IMapSettings, IMapSettingsData, IWorldViewMapState } from './model/map-settings'; -export { toDegrees, toRadians, getAngleDegreeBetweenPoints, getAngleDegreeBetweenCoordinates } from './utils/math'; -export { ExtentCalculator } from './utils/extent-calculator'; -export { ImageryComponent } from './imagery/imagery.component'; diff --git a/src/app/@ansyn/imagery/stay-in-imagery-service/stay-in-imagery.service.mock.ts b/src/app/@ansyn/imagery/stay-in-imagery-service/stay-in-imagery.service.mock.ts deleted file mode 100644 index 38202d6adf..0000000000 --- a/src/app/@ansyn/imagery/stay-in-imagery-service/stay-in-imagery.service.mock.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { StayInImageryService } from './stay-in-imagery.service'; - -export const mockStayInImageryService = { - provide: StayInImageryService, - useValue: { - init: () => {} - } -}; diff --git a/src/app/@ansyn/imagery/stay-in-imagery-service/stay-in-imagery.service.spec.ts b/src/app/@ansyn/imagery/stay-in-imagery-service/stay-in-imagery.service.spec.ts deleted file mode 100644 index 7b626d2fb0..0000000000 --- a/src/app/@ansyn/imagery/stay-in-imagery-service/stay-in-imagery.service.spec.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { TestBed } from '@angular/core/testing'; - -import { StayInImageryService } from './stay-in-imagery.service'; -import { IMAGERY_CONFIG } from '../model/configuration.token'; - -describe('StayInImageryService', () => { - beforeEach(() => TestBed.configureTestingModule({ - providers: [ - StayInImageryService, - { - provide: IMAGERY_CONFIG, - useValue: {} - } - ] - })); - - it('should be created', () => { - const service: StayInImageryService = TestBed.inject(StayInImageryService); - expect(service).toBeTruthy(); - }); -}); diff --git a/src/app/@ansyn/imagery/stay-in-imagery-service/stay-in-imagery.service.ts b/src/app/@ansyn/imagery/stay-in-imagery-service/stay-in-imagery.service.ts deleted file mode 100644 index 2c6d915fda..0000000000 --- a/src/app/@ansyn/imagery/stay-in-imagery-service/stay-in-imagery.service.ts +++ /dev/null @@ -1,67 +0,0 @@ -import { Inject, Injectable, OnDestroy } from '@angular/core'; -import { IImageryConfig } from '../model/iimagery-config'; -import { IMAGERY_CONFIG } from '../model/configuration.token'; - -@Injectable() -export class StayInImageryService implements OnDestroy { - elementCallback: Function; - timerCallback: Function; - timerId: number; - verticalPadding = this.imageryConfig.stayInImageryVerticalPadding || 0; - public moveLeft = 0; - public moveDown = 0; - - constructor(@Inject(IMAGERY_CONFIG) protected imageryConfig: IImageryConfig) { - } - - init(elementOrElementCallback: Function | Element, timerCallback: Function = null) { - this.elementCallback = elementOrElementCallback instanceof Function ? elementOrElementCallback : () => elementOrElementCallback; - this.timerCallback = timerCallback; - this.timerId = window.setInterval(this.calcPositionToStayInsideImagery.bind(this), 300); - } - - ngOnDestroy(): void { - if (this.timerId) { - window.clearInterval(this.timerId); - } - } - - calcPositionToStayInsideImagery() { - const targetElement = this.elementCallback(); - if (!targetElement) { - return; - } - const imageryElement = targetElement.closest('.imagery'); - if (!imageryElement) { - return; - } - - const myRect = targetElement.getBoundingClientRect(); - const imageryRect = imageryElement.getBoundingClientRect() as DOMRect; - - const deltaForRightEdge = myRect.right - imageryRect.right; - const deltaForLeftEdge = myRect.left - imageryRect.left; - if (deltaForRightEdge > 0) { - this.moveLeft += deltaForRightEdge; - } else if (deltaForLeftEdge < 0) { - this.moveLeft += deltaForLeftEdge; - } else if (deltaForRightEdge !== 0 && deltaForLeftEdge !== 0) { - this.moveLeft = 0; - } - - const deltaForBottomEdge = myRect.bottom - imageryRect.bottom + this.verticalPadding; - const deltaForTopEdge = imageryRect.top - myRect.top + this.verticalPadding; - if (deltaForBottomEdge > 0) { - this.moveDown -= deltaForBottomEdge; - } else if (deltaForTopEdge > 0) { - this.moveDown += deltaForTopEdge; - } else if (deltaForTopEdge !== 0 && deltaForBottomEdge !== 0) { - this.moveDown = 0; - } - - if (this.timerCallback) { - this.timerCallback(); - } - } - -} diff --git a/src/app/@ansyn/imagery/tsconfig.json b/src/app/@ansyn/imagery/tsconfig.json deleted file mode 100644 index f00962f878..0000000000 --- a/src/app/@ansyn/imagery/tsconfig.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "extends": "../../../../tsconfig.json", - "compilerOptions": { - "paths": {} - } -} diff --git a/src/app/@ansyn/imagery/tsconfig.lib.json b/src/app/@ansyn/imagery/tsconfig.lib.json deleted file mode 100644 index a35e904bc7..0000000000 --- a/src/app/@ansyn/imagery/tsconfig.lib.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "extends": "../../../../tsconfig.json", - "compilerOptions": { - "outDir": "../../../out-tsc/lib", - "target": "es2015", - "module": "es2015", - "moduleResolution": "node", - "declaration": true, - "sourceMap": true, - "inlineSources": true, - "emitDecoratorMetadata": true, - "experimentalDecorators": true, - "importHelpers": true, - "types": [], - "paths": {} - }, - "angularCompilerOptions": { - "skipTemplateCodegen": true, - "strictMetadataEmit": true, - "fullTemplateTypeCheck": true, - "strictInjectionParameters": true, - "flatModuleId": "AUTOGENERATED", - "flatModuleOutFile": "AUTOGENERATED" - }, - "exclude": [ - "src/test.ts", - "**/*.spec.ts" - ] -} diff --git a/src/app/@ansyn/imagery/tsconfig.lib.prod.json b/src/app/@ansyn/imagery/tsconfig.lib.prod.json deleted file mode 100644 index b1d501abbc..0000000000 --- a/src/app/@ansyn/imagery/tsconfig.lib.prod.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "extends": "./tsconfig.lib.json", - "angularCompilerOptions": { - "enableIvy": false - } -} \ No newline at end of file diff --git a/src/app/@ansyn/imagery/utils/extent-calculator.ts b/src/app/@ansyn/imagery/utils/extent-calculator.ts deleted file mode 100644 index 84730a8832..0000000000 --- a/src/app/@ansyn/imagery/utils/extent-calculator.ts +++ /dev/null @@ -1,48 +0,0 @@ -import { center, polygon } from '@turf/turf'; -import { Feature, Polygon } from 'geojson'; -import { ImageryMapExtent, ImageryMapExtentPolygon } from '../model/case-map-position.model'; -import { toRadians } from './math'; - -// @dynamic -export class ExtentCalculator { - - static polygonToExtent(extentPolygon: ImageryMapExtentPolygon): ImageryMapExtent { - return [...extentPolygon.coordinates[0][0], ...extentPolygon.coordinates[0][2]]; - } - - static extentToPolygon(extent: ImageryMapExtent): Feature { - const minX = extent[0]; - const minY = extent[1]; - const maxX = extent[2]; - const maxY = extent[3]; - - const coordinates = [[minX, minY], [minX, maxY], [maxX, maxY], [maxX, minY], [minX, minY]]; - - return polygon([coordinates]); - } - - static calcRotation(extentPolygon: ImageryMapExtentPolygon) { - // topLeft , topRight - const [[[x1, y1], [x2, y2]]] = extentPolygon.coordinates; - let theta = Math.atan2(x1 - x2, y1 - y2); - theta += Math.PI / 2.0; - const radRotate = toRadians(360); - return (radRotate - theta) % radRotate; - } - - static calcCenter(extentPolygon: ImageryMapExtentPolygon): [number, number] { - const type = 'Feature'; - const properties = {}; - const geometry = extentPolygon; - return <[number, number]>center({ type, geometry, properties }).geometry.coordinates; - } - - static calcResolution(extentPolygon: ImageryMapExtentPolygon, mapSize: [number, number], rotation: number) { - const [width, height] = mapSize; - const [[topLeft, topRight, bottomRight, bottomLeft]] = extentPolygon.coordinates; - const size = width * Math.cos(rotation) + height * Math.sin(rotation); - const xWidth = bottomRight[0] - topLeft[0]; - return xWidth / size; - } - -} diff --git a/src/app/@ansyn/imagery/utils/geo.spec.ts b/src/app/@ansyn/imagery/utils/geo.spec.ts deleted file mode 100644 index f6cee805e4..0000000000 --- a/src/app/@ansyn/imagery/utils/geo.spec.ts +++ /dev/null @@ -1,157 +0,0 @@ -import * as turf from '@turf/turf'; -import { getPolygonIntersectionRatio, isPointContainedInGeometry } from './geo'; - -describe('geo utils', () => { - // polygon region - const extent = turf.geometry('Polygon', [ - [ - [ - -123.13373565673827, - 45.51067773196122 - ], - [ - -123.08429718017577, - 45.47120673790691 - ], - [ - -123.0362319946289, - 45.48372492603276 - ], - [ - -123.03657531738281, - 45.50730933674183 - ], - [ - -123.07228088378906, - 45.52607354310015 - ], - [ - -123.13373565673827, - 45.51067773196122 - ] - ] - ]); - - const pointExtent = turf.geometry('Point', [ - -123.07090759277344, - 45.50514383337021 - ]); - // contain - const polygon1: GeoJSON.MultiPolygon = { - 'type': 'MultiPolygon', - 'coordinates': [[ - [ - [ - -123.13373565673827, - 45.51067773196122 - ], - [ - -123.08429718017577, - 45.47120673790691 - ], - [ - -123.0362319946289, - 45.48372492603276 - ], - [ - -123.03657531738281, - 45.50730933674183 - ], - [ - -123.07228088378906, - 45.52607354310015 - ], - [ - -123.13373565673827, - 45.51067773196122 - ] - ] - ]] - }; - - // intersect - const polygon2: GeoJSON.MultiPolygon = { - 'type': 'MultiPolygon', - coordinates: [[ - [ - [ - -123.0698776245117, - 45.538820010517036 - ], - [ - -123.08773040771483, - 45.51765448081993 - ], - [ - -123.06095123291016, - 45.502978246693786 - ], - [ - -123.00601959228514, - 45.51693278828882 - ], - [ - -123.04000854492188, - 45.538820010517036 - ], - [ - -123.0698776245117, - 45.538820010517036 - ] - ] - ]]}; - - // not contain - const polygon3: GeoJSON.MultiPolygon = { - type: 'MultiPolygon', - coordinates: [[ - [ - [ - -123.04344177246094, - 45.565265723023835 - ], - [ - -123.08704376220702, - 45.5469954685617 - ], - [ - -123.04790496826172, - 45.52054115838411 - ], - [ - -123.02318572998045, - 45.54002235832007 - ], - [ - -123.04344177246094, - 45.565265723023835 - ] - ] - ]] - }; - - describe('getPolygonIntersectionRatio', () => { - it('should extent intersection area be 1', function () { - expect(getPolygonIntersectionRatio(extent, polygon1)).toBeGreaterThanOrEqual(1); - }); - - it('should extent intersection area between 0 to 1', function () { - const ratio = getPolygonIntersectionRatio(extent, polygon2); - expect(ratio).toBeGreaterThan(0); - expect(ratio).toBeLessThan(1); - }); - - it('should extent intersection area be 0', () => { - expect(getPolygonIntersectionRatio(extent, polygon3)).toEqual(0) - }) - }); - - describe('isPointContainedInGeometry', () => { - it('should extent intersection area be 1', function () { - expect(isPointContainedInGeometry(pointExtent, polygon1)).toBeTruthy(); - }); - it('should extent intersection area be 0', function () { - expect(isPointContainedInGeometry(pointExtent, polygon3)).toBeFalsy(); - }); - }) -}); diff --git a/src/app/@ansyn/imagery/utils/geo.ts b/src/app/@ansyn/imagery/utils/geo.ts deleted file mode 100644 index f0e831b0c8..0000000000 --- a/src/app/@ansyn/imagery/utils/geo.ts +++ /dev/null @@ -1,208 +0,0 @@ -import { - Feature, - FeatureCollection, - GeometryObject, - LineString, - MultiPolygon, - Point, - Polygon, - Position -} from 'geojson'; -import { - AllGeoJSON, - area, - bbox, - bboxPolygon, - booleanEqual, - booleanPointInPolygon, - booleanPointOnLine, - centerOfMass, - circle, - destination, - feature, - geometry, - intersect, - lineIntersect, - point, - polygon, - union, - unkinkPolygon, - featureCollection, - envelope, - distance -} from '@turf/turf'; - -export type BBOX = [number, number, number, number] | [number, number, number, number, number, number]; - -export function getPolygonByPoint(lonLat: number[]): Feature { - return bboxPolygon(bbox(point(lonLat))); -} - -export function getPolygonByPointAndRadius(lonLat: number[], radius = 0.001): Feature { - const tPoint = point(lonLat); - return bboxPolygon(bbox(circle(tPoint, radius))); -} - -export function getPolygonByBufferRadius(polygonSource: Polygon, radiusInMeteres: number): Feature { - if (radiusInMeteres <= 0) { - return polygon(polygonSource.coordinates); - } - const bbox = bboxFromGeoJson(polygonSource); - const bboxedPolygon = polygonFromBBOX(bbox); - const possiblePointsInRadius = featureCollection([]); - - bboxedPolygon.coordinates[0].forEach((coordinate) => { - const pointByCoordinate = point(coordinate); - const bearings = [0, 90, 180, 270]; - bearings.forEach((bearing: number) => { - let destinationPoint = destination(pointByCoordinate, radiusInMeteres, bearing, { units: 'meters' }); - possiblePointsInRadius.features.push(destinationPoint); - }); - }); - const result: Feature = envelope(possiblePointsInRadius); - return result; -} - -export function getPointByGeometry(geometry: GeometryObject | FeatureCollection): Point { - if (geometry.type === 'FeatureCollection') { - return centerOfMass(geometry).geometry; - } else { - return centerOfMass(feature(geometry)).geometry; - } -} - -export function bboxFromGeoJson(geoJson: AllGeoJSON): BBOX { - let bboxFromPolygon = bbox(geoJson); - return bboxFromPolygon; -} - -export function polygonFromBBOX(bbox: BBOX): Polygon { - const bboxedPolygon: Feature = bboxPolygon(bbox); - return bboxedPolygon.geometry; -} - -export function geojsonMultiPolygonToBBOXPolygon(multiPolygon: MultiPolygon): Polygon { - const bbox = bboxFromGeoJson(multiPolygon); - const bboxedPolygon = polygonFromBBOX(bbox); - return bboxedPolygon; -} - -export function geojsonMultiPolygonToFirstPolygon(multiPolygon: MultiPolygon): Polygon { - return geometry('Polygon', multiPolygon.coordinates[0]); -} - -export function geojsonMultiPolygonToPolygons(multiPolygon: MultiPolygon): Polygon[] { - const polygons = multiPolygon.coordinates.map((polygonCoordinates) => { - return geometry('Polygon', polygonCoordinates); - }); - return polygons; -} - -export function geojsonPolygonToMultiPolygon(polygon: Polygon): MultiPolygon { - return geometry('MultiPolygon', [polygon.coordinates]); -} - -export function areCoordinatesNumeric(coord) { - return coord && !isNaN(coord[0]) && !isNaN(coord[1]) && (Math.abs(coord[0]) !== 999999) && (Math.abs(coord[1]) !== 999999); -} - -export function getPolygonIntersectionRatio(extent: Polygon, footprint: MultiPolygon | Point | LineString): number { - let intersection = 0; - switch (footprint.type) { - case 'MultiPolygon': - intersection = getPolygonIntersectionRatioWithMultiPolygon(extent, footprint); - break; - case 'LineString': - const intersectPoints = lineIntersect(footprint, extent); - intersection = intersectPoints.features.length / footprint.coordinates.length; - break; - case 'Point': - intersection = +booleanPointInPolygon(footprint, extent); - break - } - return intersection -} - -export function polygonsDontIntersect(extentPolygon, footprint, overlayCoverage): boolean { - const intersection = getPolygonIntersectionRatio(extentPolygon, footprint); - return intersection < overlayCoverage; -} - -export function getPolygonIntersectionRatioWithMultiPolygon(extent: Polygon, footprint: MultiPolygon): number { - let intersectionArea = 0; - let extentArea = 1; - try { - const extentPolygon = polygon(extent.coordinates); - const extentPolygons = unkinkPolygon(extentPolygon); - extentArea = area(extentPolygons); - - footprint.coordinates.forEach(coordinates => { - const tempPoly = polygon(coordinates); - const intersections = extentPolygons.features.map( feature => intersect(feature.geometry, tempPoly)); - intersectionArea = intersections.reduce( (acc, intersection) => { - if (intersection) { - acc = booleanEqual(intersection, tempPoly) ? extentArea : acc + area(intersection); - } - return acc; - }, 0) - }); - } catch (e) { - console.warn('getPolygonIntersectionRatioWithMultiPolygon: turf exception', e); - } - - return intersectionArea / extentArea > 0.99 ? 1 : intersectionArea / extentArea; -} - -export function isPointContainedInGeometry(point: Point, footprint: MultiPolygon | Point | LineString): boolean { - if (!Boolean(footprint) || !Boolean(point)) { - console.error('isPointContainedInMultiPolygon invalid params'); - return false; - } - switch (footprint.type) { - case 'Point': - return booleanEqual(point, footprint); - case 'LineString': - return booleanPointOnLine(point, footprint); - case 'MultiPolygon': - for (let i = 0; i < footprint.coordinates.length; i++) { - const contained = booleanPointInPolygon(point, polygon(footprint.coordinates[i])); - if (contained) { - return true; - } - } - break; - } - return false; -} - -export function unifyPolygons(features: Feature[]): Feature { - return union(...features); -} - -export function calculateLineDistance(aPoint: Point, bPoint: Point) { - return distance(aPoint, bPoint); -} - -export function calculateGeometryArea(polygon: Polygon) { - return area(polygon); -} - -export function getDistanceBetweenPoints(source: Point, destination: Point): number { - let distanceInKilometers = 0; - try { - distanceInKilometers = distance(source, destination, { units: 'kilometers' }); - } catch (e) { - console.warn('getDistanceBetweenPoints: turf exception', e); - } - return distanceInKilometers; -} - -export function getNewPoint(coordinates: Position): Point { - return { - type: 'Point', - coordinates - }; -} - -export const EPSG_4326 = 'EPSG:4326'; -export const EPSG_3857 = 'EPSG:3857'; diff --git a/src/app/@ansyn/imagery/utils/math.ts b/src/app/@ansyn/imagery/utils/math.ts deleted file mode 100644 index aed48af46e..0000000000 --- a/src/app/@ansyn/imagery/utils/math.ts +++ /dev/null @@ -1,24 +0,0 @@ -// Converts from degrees to radians. -import { Point as GeoPoint, Point } from 'geojson'; -import { bearing, geometry } from '@turf/turf'; - -export function toRadians(degrees: number): number { - return degrees * Math.PI / 180; -} - -// Converts from radians to degrees. -export function toDegrees(radians: number): number { - return radians * 180 / Math.PI; -} - -export function getAngleDegreeBetweenCoordinates(source: [], destination: []): number { - const sourcePoint = geometry('Point', source); - const destinationPoint = geometry('Point', destination); - const brng = bearing(sourcePoint, destinationPoint); - return brng; -} - -export function getAngleDegreeBetweenPoints(source: Point, destination: Point): number { - const brng = bearing(source, destination); - return brng; -} diff --git a/src/app/@ansyn/map-facade/components/imagery-loader/imagery-loader.component.ts b/src/app/@ansyn/map-facade/components/imagery-loader/imagery-loader.component.ts index 0727bd6981..d836a60511 100644 --- a/src/app/@ansyn/map-facade/components/imagery-loader/imagery-loader.component.ts +++ b/src/app/@ansyn/map-facade/components/imagery-loader/imagery-loader.component.ts @@ -14,6 +14,13 @@ export class ImageryLoaderComponent implements OnInit, OnDestroy { isLoadingMaps: Map = new Map(); subscriptions: Subscription[] = []; + isLoadingMaps$: Observable> = this.store$.select(mapStateSelector).pipe( + pluck>('isLoadingMaps'), + distinctUntilChanged(), + tap((isLoadingMaps) => this.isLoadingMaps = isLoadingMaps) + ); + + @HostBinding('class.show') get show() { return this.isLoadingMaps.has(this.mapId); @@ -23,11 +30,6 @@ export class ImageryLoaderComponent implements OnInit, OnDestroy { return this.isLoadingMaps.get(this.mapId); } - isLoadingMaps$: Observable> = this.store$.select(mapStateSelector).pipe( - pluck>('isLoadingMaps'), - distinctUntilChanged(), - tap((isLoadingMaps) => this.isLoadingMaps = isLoadingMaps) - ); constructor(public store$: Store) { } diff --git a/src/app/@ansyn/map-facade/components/map-search-box/map-search-box.component.spec.ts b/src/app/@ansyn/map-facade/components/map-search-box/map-search-box.component.spec.ts index 207434e595..d482d86cea 100644 --- a/src/app/@ansyn/map-facade/components/map-search-box/map-search-box.component.spec.ts +++ b/src/app/@ansyn/map-facade/components/map-search-box/map-search-box.component.spec.ts @@ -77,7 +77,7 @@ describe('MapSearchBoxComponent', () => { component.onSubmit(); tick(); expect(geocoderService.getLocation$).toHaveBeenCalledWith('hehe'); - expect(component._communicator.setCenter).toHaveBeenCalledWith('test', true); + expect(component._communicator.setCenter).toHaveBeenCalledWith('test' as any, true); })); it('should halt the flow, when given an empty string', fakeAsync(() => { diff --git a/src/app/@ansyn/map-facade/effects/map.effects.ts b/src/app/@ansyn/map-facade/effects/map.effects.ts index 5702f34285..e0705442a7 100644 --- a/src/app/@ansyn/map-facade/effects/map.effects.ts +++ b/src/app/@ansyn/map-facade/effects/map.effects.ts @@ -138,12 +138,12 @@ export class MapEffects { @Effect() imageryCreated$ = this.communicatorsService - .instanceCreated.pipe(map((payload) => new ImageryCreatedAction(payload))); + .instanceCreated.pipe(map((payload) => new ImageryCreatedAction(payload as {id: string}))); @Effect() imageryRemoved$ = this.communicatorsService .instanceRemoved.pipe( - map((payload) => new ImageryRemovedAction(payload))); + map((payload) => new ImageryRemovedAction(payload as {id: string}))); @Effect() activeMapEnter$ = this.actions$.pipe( diff --git a/src/app/@ansyn/map-facade/tsconfig.json b/src/app/@ansyn/map-facade/tsconfig.json index 41c80adab0..59b137d9b1 100644 --- a/src/app/@ansyn/map-facade/tsconfig.json +++ b/src/app/@ansyn/map-facade/tsconfig.json @@ -4,7 +4,7 @@ "module": "commonjs", "paths": { "@ansyn/imagery": [ - "src/app/@ansyn/imagery/public_api" + "src/app/@ansyn/imagery-submodules/imagery/public_api" ] }, "target": "es5", diff --git a/src/app/@ansyn/map-facade/tsconfig.lib.json b/src/app/@ansyn/map-facade/tsconfig.lib.json index a394e7fb82..b0137c88bf 100644 --- a/src/app/@ansyn/map-facade/tsconfig.lib.json +++ b/src/app/@ansyn/map-facade/tsconfig.lib.json @@ -3,7 +3,7 @@ "compilerOptions": { "paths": { "@ansyn/imagery": [ - "dist/ansyn/imagery" + "src/app/@ansyn/imagery-submodules/dist/ansyn/imagery" ] }, "outDir": "../../../out-tsc/lib", @@ -30,7 +30,8 @@ "fullTemplateTypeCheck": true, "strictInjectionParameters": true, "flatModuleId": "AUTOGENERATED", - "flatModuleOutFile": "AUTOGENERATED" + "flatModuleOutFile": "AUTOGENERATED", + "enableIvy": false }, "exclude": [ "src/test.ts", diff --git a/src/app/@ansyn/menu/tsconfig.lib.json b/src/app/@ansyn/menu/tsconfig.lib.json index 9e7ea8c25d..fb5464b54e 100644 --- a/src/app/@ansyn/menu/tsconfig.lib.json +++ b/src/app/@ansyn/menu/tsconfig.lib.json @@ -24,7 +24,8 @@ "fullTemplateTypeCheck": true, "strictInjectionParameters": true, "flatModuleId": "AUTOGENERATED", - "flatModuleOutFile": "AUTOGENERATED" + "flatModuleOutFile": "AUTOGENERATED", + "enableIvy": false }, "exclude": [ "src/test.ts", diff --git a/src/app/@ansyn/ol/config/ol-config.ts b/src/app/@ansyn/ol/config/ol-config.ts deleted file mode 100644 index cd23d74469..0000000000 --- a/src/app/@ansyn/ol/config/ol-config.ts +++ /dev/null @@ -1,9 +0,0 @@ -export const OL_CONFIG = 'olConfig'; - -export interface IOlConfig { - needToUseLayerExtent: boolean; - tilesLoadingDoubleBuffer: { - debounceTimeInMs: number, - timeoutInMs: number - }; -} diff --git a/src/app/@ansyn/ol/mapSourceProviders/marco/ol-utils/mp-image-projection.ts b/src/app/@ansyn/ol/mapSourceProviders/marco/ol-utils/mp-image-projection.ts deleted file mode 100644 index 2058105d66..0000000000 --- a/src/app/@ansyn/ol/mapSourceProviders/marco/ol-utils/mp-image-projection.ts +++ /dev/null @@ -1,115 +0,0 @@ -import { Utils } from './utils'; - -import * as proj from 'ol/proj'; -import * as Extent from 'ol/extent'; -import Projection from 'ol/proj/Projection'; -import { EPSG_4326, EPSG_3857 } from '@ansyn/imagery'; - -export class MpImageProjection extends Projection { - - private matrix: any; - private inversMatrix: any; - private _tileSizeAtLevel0: any; - private _projectionKey: string; - - constructor(meta, transform, csmKey) { - - const numLevels = meta.LevelsCount; // the pyramid level of the image - const tileSizeAtLevel0 = (512 * 1 << (numLevels)); // number of pixels in row in non pyramidal image - // const tileSizeAtLevel0 = meta.Height; - // calculate the extenet of the non pyramidal image (tileSizeAtLevel0 X tileSizeAtLevel0 pixels) pixel - let boundingExtent = Extent.boundingExtent([[0, 0], [tileSizeAtLevel0, tileSizeAtLevel0]]); - - // projection defenitions options - const options = { - code: Utils.uuid(), // get uniq id for projection, - extent: boundingExtent, - units: 'pixels' - }; - - super(options); - - this._tileSizeAtLevel0 = tileSizeAtLevel0; - this._projectionKey = csmKey; - // this.addCoordinateTransforms(this); - let transformStrSource = transform || meta.GeoTransform; // the transform is always to the world - if (transformStrSource === 'Identity') { - transformStrSource = '1,0,0,0,0,-1,0,0,0,0,1,0,0,1,0,1'; - } - let geoTransformStrArray = transformStrSource.split(','); - geoTransformStrArray.forEach((a) => { - geoTransformStrArray[a] = parseFloat(geoTransformStrArray[a]); // parsign from string to float - }); - const geoTransform = geoTransformStrArray; - const that = this; - that.matrix = Utils.m4CreateNumber(); - Utils.m4SetFromArray(that.matrix, geoTransform); // set values in matrix - that.inversMatrix = Utils.m4CreateNumber(); - Utils.m4Invert(that.matrix, that.inversMatrix); // Invert matrix ans set to inversMatrix - - // add transform to open layers //source //destination - proj.addCoordinateTransforms(EPSG_4326, this, - // forward from the source projection to the destination projection - function (coordinate) { - const res = Utils.m4MultVec3Projective(that.inversMatrix, [coordinate[0], coordinate[1], 0], []); - res[1] = tileSizeAtLevel0 - res[1]; - return res; - }, - // inverse from the destination projection to the source projection - function (coordinate) { - let y = coordinate[1]; - y = tileSizeAtLevel0 - y; - const res = Utils.m4MultVec3Projective(that.matrix, [coordinate[0], y, 0], []); - return res; - }); - - proj.addCoordinateTransforms(EPSG_3857, this, - // forward from the source projection to the destination projection - function (coordinate) { - let coord4326 = proj.transform(coordinate, EPSG_3857, EPSG_4326); - const res = Utils.m4MultVec3Projective(that.inversMatrix, [coord4326[0], coord4326[1], 0], []); - res[1] = tileSizeAtLevel0 - res[1]; - return res; - }, - // inverse from the destination projection to the source projection - function (coordinate) { - let y = coordinate[1]; - y = tileSizeAtLevel0 - y; - const res = Utils.m4MultVec3Projective(that.matrix, [coordinate[0], y, 0], []); - let coord3857 = proj.transform(res, EPSG_4326, EPSG_3857); - return coord3857; - }); - } - - // flip the y from buttom left to top left (how our server works) - private OLPixelToImagePixel(coordinate) { - let y = coordinate[1]; - y = this._tileSizeAtLevel0 - y; - return [coordinate[0], y]; - } - - public get projectionKey(): string { - return this._projectionKey; - } - - public addCoordinateTransforms(source) { - let that = this; - proj.addCoordinateTransforms(source, this, - // forward from the source projection to the destination projection - function (coordinate) { - let coord = proj.transform(coordinate, source, EPSG_4326); - const res = Utils.m4MultVec3Projective(that.inversMatrix, [coord[0], coord[1], 0], []); - res[1] = that._tileSizeAtLevel0 - res[1]; - return res; - }, - // inverse from the destination projection to the source projection - function (coordinate) { - let y = coordinate[1]; - y = that._tileSizeAtLevel0 - y; - let res = Utils.m4MultVec3Projective(that.matrix, [coordinate[0], y, 0], []); - res = proj.transform(res, EPSG_4326, source); - return res; - }); - } -} - diff --git a/src/app/@ansyn/ol/mapSourceProviders/marco/ol-utils/mp-tile-image-source.ts b/src/app/@ansyn/ol/mapSourceProviders/marco/ol-utils/mp-tile-image-source.ts deleted file mode 100644 index a5491ac7ce..0000000000 --- a/src/app/@ansyn/ol/mapSourceProviders/marco/ol-utils/mp-tile-image-source.ts +++ /dev/null @@ -1,97 +0,0 @@ -import * as proj from 'ol/proj'; -import * as Extent from 'ol/extent'; -import TileImage from 'ol/source/TileImage'; -import Projection from 'ol/proj/Projection'; -import TileGrid from 'ol/tilegrid/TileGrid'; - -import { MpImageProjection } from './mp-image-projection'; -import { ProjectableRaster } from '../../../maps/open-layers-map/models/projectable-raster'; - -const urlTemplate = '&tileMatrix={z}&tileCol={x}&tileRow={y}'; - -export class MpTileImageSource extends ProjectableRaster { - - public _url: any; - public crossOrigin: any; - public _meta: any; - public _projection: any; - - static createForExtent(extent, opt_maxZoom) { - const tileSize = 512; - - const resolutions = MpTileImageSource.resolutionsFromExtent( - extent, opt_maxZoom, tileSize); - - const widths = new Array(resolutions.length); - const extentWidth = Extent.getWidth(extent); - for (let z = resolutions.length - 1; z >= 0; --z) { - widths[z] = extentWidth / (2 * tileSize) / resolutions[z]; - } - - return new TileGrid({ - origin: Extent.getTopLeft(extent), - resolutions: resolutions, - tileSize: tileSize, - extent: extent - }); - } - - // ol.DEFAULT_MAX_ZOOM = 42; //by src/ol/index - // ol.DEFAULT_TILE_SIZE = 256; //by src/ol/index - static resolutionsFromExtent(extent, opt_maxZoom, opt_tileSize) { - const maxZoom = opt_maxZoom !== undefined ? opt_maxZoom : 42; - - const height = Extent.getHeight(extent); - const width = Extent.getWidth(extent); - - const tileSize = opt_tileSize !== undefined ? opt_tileSize : 512; - const maxResolution = Math.max( - width / (2 * tileSize), height / (2 * tileSize)); - - const length = maxZoom + 1; - const resolutions = new Array(length); - for (let z = 0; z < length; ++z) { - resolutions[z] = maxResolution / Math.pow(2, z); - } - return resolutions; - } - - static create(data, url, transform, csmKey) { - return new MpTileImageSource(data, url, transform, csmKey); - } - - constructor(meta, url, transform, csmKey) { - const projection = new MpImageProjection(meta, transform, csmKey); - proj.addProjection(projection); - - const tileGrid = MpTileImageSource.createForExtent(projection.getExtent(), meta.LevelsCount - 1); - - const innerTileImageSource: TileImage = new TileImage({ - tileUrlFunction: function (tileCoord, pixelRatio, proj) { - const z = tileCoord[0]; - const x = tileCoord[1]; - const y = -tileCoord[2] - 1; - return url + urlTemplate.replace('{z}', z.toString()) - .replace('{y}', y.toString()) - .replace('{x}', x.toString()); - - }, - tileGrid: tileGrid, - url: url, - crossOrigin: 'Anonymous', - projection: projection - }); - super({ - sources: [innerTileImageSource], - operation: function (pixels, data) { - return pixels[0]; - }, - operationType: 'image' - }); - - this._url = url; - this.crossOrigin = 'Anonymous'; - this._meta = meta; - this._projection = projection; - } -} diff --git a/src/app/@ansyn/ol/mapSourceProviders/marco/ol-utils/mp-tile-source.ts b/src/app/@ansyn/ol/mapSourceProviders/marco/ol-utils/mp-tile-source.ts deleted file mode 100644 index bbb317ed8b..0000000000 --- a/src/app/@ansyn/ol/mapSourceProviders/marco/ol-utils/mp-tile-source.ts +++ /dev/null @@ -1,88 +0,0 @@ -import * as proj from 'ol/proj'; -import * as Extent from 'ol/extent'; -import Projection from 'ol/proj/Projection'; -import TileGrid from 'ol/tilegrid/TileGrid'; -import XYZ from 'ol/source/XYZ'; - -import { MpImageProjection } from './mp-image-projection'; - -const urlTemplate = '&tileMatrix={z}&tileCol={x}&tileRow={y}'; - -export class MpTileSource extends XYZ { - - public _url: any; - public crossOrigin: any; - public _meta: any; - public _projection: any; - - static createForExtent(extent, opt_maxZoom) { - const tileSize = 512; - - const resolutions = MpTileSource.resolutionsFromExtent( - extent, opt_maxZoom, tileSize); - - const widths = new Array(resolutions.length); - const extentWidth = Extent.getWidth(extent); - for (let z = resolutions.length - 1; z >= 0; --z) { - widths[z] = extentWidth / (2 * tileSize) / resolutions[z]; - } - - return new TileGrid({ - origin: Extent.getTopLeft(extent), - resolutions: resolutions, - tileSize: tileSize, - extent: extent - }); - } - - // ol.DEFAULT_MAX_ZOOM = 42; //by src/ol/index - // ol.DEFAULT_TILE_SIZE = 256; //by src/ol/index - static resolutionsFromExtent(extent, opt_maxZoom, opt_tileSize) { - const maxZoom = opt_maxZoom !== undefined ? opt_maxZoom : 42; - - const height = Extent.getHeight(extent); - const width = Extent.getWidth(extent); - - const tileSize = opt_tileSize !== undefined ? opt_tileSize : 512; - const maxResolution = Math.max( - width / (2 * tileSize), height / (2 * tileSize)); - - const length = maxZoom + 1; - const resolutions = new Array(length); - for (let z = 0; z < length; ++z) { - resolutions[z] = maxResolution / Math.pow(2, z); - } - return resolutions; - } - - static create(data, url, transform, projectionKey) { - return new MpTileSource(data, url, transform, projectionKey); - } - - constructor(meta, url, transform, projectionKey) { - const projection = new MpImageProjection(meta, transform, projectionKey); - proj.addProjection(projection); - - const tileGrid = MpTileSource.createForExtent(projection.getExtent(), meta.LevelsCount - 1); - - super({ - tileUrlFunction: function (tileCoord, pixelRatio, proj) { - const z = tileCoord[0]; - const x = tileCoord[1]; - const y = -tileCoord[2] - 1; - return url + urlTemplate.replace('{z}', z.toString()) - .replace('{y}', y.toString()) - .replace('{x}', x.toString()); - }, - tileGrid: tileGrid, - url: url, - crossOrigin: 'Anonymous', - projection: projection - }); - - this._url = url; - this.crossOrigin = 'Anonymous'; - this._meta = meta; - this._projection = projection; - } -} diff --git a/src/app/@ansyn/ol/mapSourceProviders/marco/ol-utils/utils.ts b/src/app/@ansyn/ol/mapSourceProviders/marco/ol-utils/utils.ts deleted file mode 100644 index 33342290cc..0000000000 --- a/src/app/@ansyn/ol/mapSourceProviders/marco/ol-utils/utils.ts +++ /dev/null @@ -1,132 +0,0 @@ -export class Utils { - static m4SetFromArray(mat, values) { - mat[0] = values[0]; - mat[1] = values[1]; - mat[2] = values[2]; - mat[3] = values[3]; - mat[4] = values[4]; - mat[5] = values[5]; - mat[6] = values[6]; - mat[7] = values[7]; - mat[8] = values[8]; - mat[9] = values[9]; - mat[10] = values[10]; - mat[11] = values[11]; - mat[12] = values[12]; - mat[13] = values[13]; - mat[14] = values[14]; - mat[15] = values[15]; - return mat; - } - - static m4CreateNumber() { - return [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; - } - - static m4Invert(mat, resultMat) { - let m00 = mat[0], m10 = mat[1], m20 = mat[2], m30 = mat[3]; - let m01 = mat[4], m11 = mat[5], m21 = mat[6], m31 = mat[7]; - let m02 = mat[8], m12 = mat[9], m22 = mat[10], m32 = mat[11]; - let m03 = mat[12], m13 = mat[13], m23 = mat[14], m33 = mat[15]; - - let a0 = m00 * m11 - m10 * m01; - let a1 = m00 * m21 - m20 * m01; - let a2 = m00 * m31 - m30 * m01; - let a3 = m10 * m21 - m20 * m11; - let a4 = m10 * m31 - m30 * m11; - let a5 = m20 * m31 - m30 * m21; - let b0 = m02 * m13 - m12 * m03; - let b1 = m02 * m23 - m22 * m03; - let b2 = m02 * m33 - m32 * m03; - let b3 = m12 * m23 - m22 * m13; - let b4 = m12 * m33 - m32 * m13; - let b5 = m22 * m33 - m32 * m23; - - let det = a0 * b5 - a1 * b4 + a2 * b3 + a3 * b2 - a4 * b1 + a5 * b0; - if (det === 0) { - return false; - } - - let idet = 1.0 / det; - resultMat[0] = (m11 * b5 - m21 * b4 + m31 * b3) * idet; - resultMat[1] = (-m10 * b5 + m20 * b4 - m30 * b3) * idet; - resultMat[2] = (m13 * a5 - m23 * a4 + m33 * a3) * idet; - resultMat[3] = (-m12 * a5 + m22 * a4 - m32 * a3) * idet; - resultMat[4] = (-m01 * b5 + m21 * b2 - m31 * b1) * idet; - resultMat[5] = (m00 * b5 - m20 * b2 + m30 * b1) * idet; - resultMat[6] = (-m03 * a5 + m23 * a2 - m33 * a1) * idet; - resultMat[7] = (m02 * a5 - m22 * a2 + m32 * a1) * idet; - resultMat[8] = (m01 * b4 - m11 * b2 + m31 * b0) * idet; - resultMat[9] = (-m00 * b4 + m10 * b2 - m30 * b0) * idet; - resultMat[10] = (m03 * a4 - m13 * a2 + m33 * a0) * idet; - resultMat[11] = (-m02 * a4 + m12 * a2 - m32 * a0) * idet; - resultMat[12] = (-m01 * b3 + m11 * b1 - m21 * b0) * idet; - resultMat[13] = (m00 * b3 - m10 * b1 + m20 * b0) * idet; - resultMat[14] = (-m03 * a3 + m13 * a1 - m23 * a0) * idet; - resultMat[15] = (m02 * a3 - m12 * a1 + m22 * a0) * idet; - return true; - } - - static m4MultVec3Projective(mat, vec, resultVec) { - let x = vec[0], y = vec[1], z = vec[2]; - let invw = 1 / (x * mat[3] + y * mat[7] + z * mat[11] + mat[15]); - resultVec[0] = (x * mat[0] + y * mat[4] + z * mat[8] + mat[12]) * invw; - resultVec[1] = (x * mat[1] + y * mat[5] + z * mat[9] + mat[13]) * invw; - resultVec[2] = (x * mat[2] + y * mat[6] + z * mat[10] + mat[14]) * invw; - return resultVec; - } - - static uuid(): string { - if (typeof (window) !== 'undefined' && - typeof (window.crypto) !== 'undefined' && - typeof (window.crypto.getRandomValues) !== 'undefined') { - let buf: Uint16Array = new Uint16Array(8); - window.crypto.getRandomValues(buf); - return ( - this.pad4(buf[0]) + - this.pad4(buf[1]) + - '-' + - this.pad4(buf[2]) + - '-' + - this.pad4(buf[3]) + - '-' + - this.pad4(buf[4]) + - '-' + - this.pad4(buf[5]) + - '-' + - this.pad4(buf[6]) + - '-' + - this.pad4(buf[7]) - ); - } else { - return ( - this.random4() + - this.random4() + - '-' + - this.random4() + - '-' + - this.random4() + - '-' + - this.random4() + - '-' + - this.random4() + - '-' + - this.random4() + - '-' + - this.random4() - ); - } - } - - private static pad4(num: number): string { - let ret: string = num.toString(16); - while (ret.length < 4) { - ret = '0' + ret; - } - return ret; - } - - private static random4(): string { - return Math.floor((1 + Math.random()) * 0x10000).toString(16).substring(1); - } -} diff --git a/src/app/@ansyn/ol/mapSourceProviders/marco/open-layers-MARCO-source-provider.ts b/src/app/@ansyn/ol/mapSourceProviders/marco/open-layers-MARCO-source-provider.ts deleted file mode 100644 index aa50cc83dc..0000000000 --- a/src/app/@ansyn/ol/mapSourceProviders/marco/open-layers-MARCO-source-provider.ts +++ /dev/null @@ -1,167 +0,0 @@ -import { Inject } from '@angular/core'; -import { HttpClient } from '@angular/common/http'; - -import Layer from 'ol/layer/Layer'; -import TileLayer from 'ol/layer/Tile'; -import ImageLayer from 'ol/layer/Image'; -import { - CacheService, - ImageryCommunicatorService, - ImageryMapSource, - IMapSettings, - IMapSourceProvidersConfig, - MAP_SOURCE_PROVIDERS_CONFIG -} from '@ansyn/imagery'; -import { IMAGE_PROCESS_ATTRIBUTE, OpenLayersMapSourceProvider } from '../open-layers.map-source-provider'; -import { OpenLayersMap } from '../../maps/open-layers-map/openlayers-map/openlayers-map'; -import { OpenLayersDisabledMap } from '../../maps/openlayers-disabled-map/openlayers-disabled-map'; -import { removeWorkers } from '../../maps/open-layers-map/shared/openlayers-shared'; -import { MpTileSource } from './ol-utils/mp-tile-source'; -import { MpTileImageSource } from './ol-utils/mp-tile-image-source'; - -export const OpenLayerMarcoSourceProviderSourceType = 'MARCO_WMTS'; - -export interface IMarcoConfig { - imageUrl: string; - thumbnailImageUrl: string; - capabilitiesUrl: string; - tilesServerUrl: string; -} - -@ImageryMapSource({ - sourceType: OpenLayerMarcoSourceProviderSourceType, - supported: [OpenLayersMap, OpenLayersDisabledMap] -}) -export class OpenLayerMarcoSourceProvider extends OpenLayersMapSourceProvider { - - private server: string; - - constructor(protected cacheService: CacheService, - protected imageryCommunicatorService: ImageryCommunicatorService, - @Inject(MAP_SOURCE_PROVIDERS_CONFIG) protected mapSourceProvidersConfig: IMapSourceProvidersConfig, - protected http: HttpClient) { - super(cacheService, imageryCommunicatorService, mapSourceProvidersConfig); - this.server = this.config.tilesServerUrl; - } - - public create(caseMapState: IMapSettings | any): any { - const overlayMetaData = caseMapState.data.overlay; - const projectionKey = `projectionKey_${ overlayMetaData.id }`; - - return this.createTileLayer(overlayMetaData.imageUrl, overlayMetaData.approximateTransform, overlayMetaData.min, overlayMetaData.max, projectionKey); - } - - encodeImagePath(imagePath) { - let encodeImagePath = imagePath; - if (encodeImagePath.startsWith('file')) { - encodeImagePath = encodeImagePath.substr(7); - } - return encodeURIComponent(encodeImagePath); - } - - public createTileLayer(url: string, transform: number[], min: [number], max: [number], projectionKey): Promise { - - const approximateTramsforom = transform; - const imagePath = this.encodeImagePath(url); - - return this.getWMTSCapabilities(imagePath).then((capabilities) => { - let capabilitiesMeta = { - LevelsCount: capabilities.Capabilities.contents.tileMatrixSet[0].tileMatrix.length, - GeoTransform: approximateTramsforom, - Height: capabilities.Capabilities.contents.datasetDescriptionSummary[0].Layer.boundingBox[0]['ows:BoundingBox'].lowerCorner[1], - Width: capabilities.Capabilities.contents.datasetDescriptionSummary[0].Layer.boundingBox[0]['ows:BoundingBox'].lowerCorner[0] - }; - - const imageUrl = this.config.imageUrl.replace('{imagePath}', `${ imagePath }`); - let source = MpTileSource.create(capabilitiesMeta, - `${ this.server }${ imageUrl }`, - approximateTramsforom, - projectionKey); - - source.crossOrigin = 'Anonymous'; - const tileSizeAtLevel0 = (512 * 1 << (capabilitiesMeta.LevelsCount)); // number of pixels in row in non pyramidal image - const layerViewExtent: [number, number, number, number] = [0, - 0, - tileSizeAtLevel0, - tileSizeAtLevel0]; - - let tileLayer = new TileLayer({ - visible: true, - preload: Infinity, - source: source, - extent: layerViewExtent - }); - - const imageLayer = this.getMImageLayer(capabilitiesMeta, imagePath, approximateTramsforom, layerViewExtent, projectionKey); - tileLayer.set(IMAGE_PROCESS_ATTRIBUTE, imageLayer); - removeWorkers(imageLayer); - - console.log('marco service, layer ready:', tileLayer); - return Promise.resolve(tileLayer); - }); - } - - private getMImageLayer(capabilitiesMeta, imagePath, approximateTramsforom, extent, projectionKey) { - // create Image Layer - const imageUrl = this.config.imageUrl.replace('{imagePath}', `${ imagePath }`); - let source = MpTileImageSource.create( - capabilitiesMeta, - imageUrl, - approximateTramsforom, - projectionKey); - - source.crossOrigin = 'Anonymous'; - - let imageLayer = new ImageLayer({ - source: source, - visible: true, - extent - }); - - return imageLayer; - } - - private getWMTSCapabilities(url: string): Promise { - return this.http.get( - `${ this.server }${ url }${ this.config.capabilitiesUrl }`) - .toPromise(); - } - - // wmsThumbnailUrl(url: string, bbox: number[]) { - // let imageUrl = this.config.thumbnailImageUrl.replace('{url}', `${url}`); - // imageUrl = imageUrl.replace('{bbox}', `${bbox}`); - // return `${this.server}${imageUrl}`; - // } - - // getThumbnailUrl(overlay: IOverlay) { - // let { imageUrl, thumbnailUrl } = overlay; - // - // if (thumbnailUrl) { - // return of(thumbnailUrl); - // } - // - // imageUrl = this.encodeImagePath(imageUrl); - // - // return this.getWMSCapabilities(imageUrl).pipe( - // map((res: any) => { - // const { minx, miny, maxx, maxy } = res.WMS_Capabilities.capability.layer.boundingBox[0]; - // const thumbnailUrl = this.wmsThumbnailUrl(imageUrl, [minx, miny, maxx, maxy]); - // overlay.thumbnailUrl = thumbnailUrl; - // return thumbnailUrl; - // }) - // ); - // } - - // getWMSCapabilities(url: string) { - // return this.http.get(`${this.server}wms/${url}`, { - // params: { - // request: 'GetCapabilities', - // version: '1.0.0', - // format: 'json', - // service: 'WMS' - // } - // }).pipe( - // this.errorHandlerService.handleTimeoutError('Marco WMTSCapabilities.json') - // ); - // } -} diff --git a/src/app/@ansyn/ol/mapSourceProviders/open-layers-Airbus-source-provider.ts b/src/app/@ansyn/ol/mapSourceProviders/open-layers-Airbus-source-provider.ts deleted file mode 100644 index 7361cc0d47..0000000000 --- a/src/app/@ansyn/ol/mapSourceProviders/open-layers-Airbus-source-provider.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { ImageryMapSource, IMapSettings } from '@ansyn/imagery'; -import { OpenLayersMapSourceProvider } from './open-layers.map-source-provider'; -import { OpenLayersMap } from '../maps/open-layers-map/openlayers-map/openlayers-map'; -import { OpenLayersDisabledMap } from '../maps/openlayers-disabled-map/openlayers-disabled-map'; - - -export const OpenLayerAirbusSourceProviderSourceType = 'AIRBUS'; - -@ImageryMapSource({ - sourceType: OpenLayerAirbusSourceProviderSourceType, - supported: [OpenLayersMap, OpenLayersDisabledMap] -}) -export class OpenLayersAirbusSourceProvider extends OpenLayersMapSourceProvider { - id: string; - - create(metaData: IMapSettings): Promise { - this.id = metaData.data.overlay.id; - return super.create(metaData); - - } -} diff --git a/src/app/@ansyn/ol/mapSourceProviders/open-layers-BING-source-provider.ts b/src/app/@ansyn/ol/mapSourceProviders/open-layers-BING-source-provider.ts deleted file mode 100644 index 0af0fcfaff..0000000000 --- a/src/app/@ansyn/ol/mapSourceProviders/open-layers-BING-source-provider.ts +++ /dev/null @@ -1,29 +0,0 @@ -import BingMaps from 'ol/source/BingMaps'; -import { ImageryMapSource, IMapSettings } from '@ansyn/imagery'; -import { OpenLayersMapSourceProvider } from './open-layers.map-source-provider'; -import { OpenLayersMap } from '../maps/open-layers-map/openlayers-map/openlayers-map'; -import { OpenLayersDisabledMap } from '../maps/openlayers-disabled-map/openlayers-disabled-map'; - -export interface IBingMapsConfig { - key: string; - styles: string[]; -} - -export const OpenLayerBingSourceProviderSourceType = 'BING'; - -@ImageryMapSource({ - sourceType: OpenLayerBingSourceProviderSourceType, - supported: [OpenLayersMap, OpenLayersDisabledMap] -}) -export class OpenLayerBingSourceProvider extends OpenLayersMapSourceProvider { - createSource(metaData: IMapSettings): any { - const config = {...this.config, ...metaData.data.config}; - const source = new BingMaps({ - key: config.key, - imagerySet: config.style, - maxZoom: 19, - wrapX: false - }); - return source; - } -} diff --git a/src/app/@ansyn/ol/mapSourceProviders/open-layers-ESRI-4326-source-provider.ts b/src/app/@ansyn/ol/mapSourceProviders/open-layers-ESRI-4326-source-provider.ts deleted file mode 100644 index ac7d15d477..0000000000 --- a/src/app/@ansyn/ol/mapSourceProviders/open-layers-ESRI-4326-source-provider.ts +++ /dev/null @@ -1,42 +0,0 @@ -import XYZ from 'ol/source/XYZ'; -import TileLayer from 'ol/layer/Tile'; -import { EPSG_4326, ImageryMapSource, IMapSettings } from '@ansyn/imagery'; -import * as proj from 'ol/proj'; -import { OpenLayersMapSourceProvider } from './open-layers.map-source-provider'; -import { OpenLayersMap } from '../maps/open-layers-map/openlayers-map/openlayers-map'; -import { OpenLayersDisabledMap } from '../maps/openlayers-disabled-map/openlayers-disabled-map'; - -export interface IESRI4326Config { - baseUrl: string; - projection: string; - maxZoom: number; - tileSize: number; - attributions: string; -} - -export const OpenLayerESRI_4326SourceProviderSourceType = 'ESRI_4326'; - -@ImageryMapSource({ - sourceType: OpenLayerESRI_4326SourceProviderSourceType, - supported: [OpenLayersMap, OpenLayersDisabledMap] -}) -export class OpenLayerESRI4326SourceProvider extends OpenLayersMapSourceProvider { - createSource(metaData: IMapSettings): any { - const config = {...this.config, ...metaData.data.config}; - const source = new XYZ({ - attributions: config.attributions, - maxZoom: config.maxZoom, - projection: config.projection, - tileSize: config.tileSize, - crossOrigin: 'Anonymous', - tileUrlFunction: function (tileCoord) { - return config.baseUrl - .replace('{z}', (tileCoord[0] - 1).toString()) - .replace('{x}', tileCoord[1].toString()) - .replace('{y}', (-tileCoord[2] - 1).toString()); - }, - wrapX: true - }); - return source; - } -} diff --git a/src/app/@ansyn/ol/mapSourceProviders/open-layers-GEE-source-provider.ts b/src/app/@ansyn/ol/mapSourceProviders/open-layers-GEE-source-provider.ts deleted file mode 100644 index eaef34cd36..0000000000 --- a/src/app/@ansyn/ol/mapSourceProviders/open-layers-GEE-source-provider.ts +++ /dev/null @@ -1,61 +0,0 @@ -import XYZ from 'ol/source/XYZ'; -import { - CacheService, - ImageryCommunicatorService, - ImageryMapSource, - IMapSettings, IMapSourceProvidersConfig, - MAP_SOURCE_PROVIDERS_CONFIG -} from '@ansyn/imagery'; -import { IMAGE_PROCESS_ATTRIBUTE, OpenLayersMapSourceProvider } from './open-layers.map-source-provider'; -import { OpenLayersMap } from '../maps/open-layers-map/openlayers-map/openlayers-map'; -import { OpenLayersDisabledMap } from '../maps/openlayers-disabled-map/openlayers-disabled-map'; -import { HttpClient } from '@angular/common/http'; -import { Inject } from '@angular/core'; - -​ -export const OpenLayerGEESourceProviderSourceType = 'GEE'; -​ -@ImageryMapSource({ - sourceType: OpenLayerGEESourceProviderSourceType, - supported: [OpenLayersMap, OpenLayersDisabledMap] -}) -export class OpenLayerGEESourceProvider extends OpenLayersMapSourceProvider { - - layerData: any; - - constructor(protected httpClient: HttpClient, - protected cacheService: CacheService, - protected imageryCommunicatorService: ImageryCommunicatorService, - @Inject(MAP_SOURCE_PROVIDERS_CONFIG) protected mapSourceProvidersConfig: IMapSourceProvidersConfig) { - super(cacheService, imageryCommunicatorService, mapSourceProvidersConfig); - } - - async create(metaData: IMapSettings): Promise { - const config = { ...this.config, ...metaData.data.config }; - - if (!this.layerData) { - this.layerData = await this.getLayersData(config.serverUrl); - } - - const extent = this.createExtent(metaData); - const source = this.createSource(metaData); - const tileLayer = this.createLayer(source, extent); - tileLayer.set(IMAGE_PROCESS_ATTRIBUTE, this.getImageLayer(source, extent)); - return Promise.resolve(tileLayer); - } - - createSource(metaData: IMapSettings): any { - const geeDefs = JSON.parse(this.layerData.replace(/([\[\{,])\s*(\w+)\s*:/g, '$1 "$2":')); - const source = new XYZ({ - url: this.config.serverUrl + `/query?request=` + geeDefs.layers[0].requestType + `&channel=` + geeDefs.layers[0].id + `&version=` + geeDefs.layers[0].version + `&x={x}&y={y}&z={z}`, - crossOrigin: 'anonymous', - minZoom: 1 - }); - return source; - } - - getLayersData(serverURL: string): Promise { - const fileUrl = serverURL + `/query?request=Json&is2d=t`; - return this.httpClient.get(fileUrl, { responseType: 'text' }).toPromise(); - } -} diff --git a/src/app/@ansyn/ol/mapSourceProviders/open-layers-IDAHO-source-provider.ts b/src/app/@ansyn/ol/mapSourceProviders/open-layers-IDAHO-source-provider.ts deleted file mode 100644 index a311603951..0000000000 --- a/src/app/@ansyn/ol/mapSourceProviders/open-layers-IDAHO-source-provider.ts +++ /dev/null @@ -1,121 +0,0 @@ -import { - CacheService, - ImageryCommunicatorService, - ImageryMapSource, - IMapSettings, - IMapSourceProvidersConfig, - MAP_SOURCE_PROVIDERS_CONFIG, -} from '@ansyn/imagery'; -import { HttpClient } from '@angular/common/http'; -import { Inject } from '@angular/core'; -import { OpenLayersMapSourceProvider } from './open-layers.map-source-provider'; -import { OpenLayersMap } from '../maps/open-layers-map/openlayers-map/openlayers-map'; -import { OpenLayersDisabledMap } from '../maps/openlayers-disabled-map/openlayers-disabled-map'; - -export const OpenLayerIDAHOSourceProviderSourceType = 'IDAHO'; - -@ImageryMapSource({ - sourceType: OpenLayerIDAHOSourceProviderSourceType, - supported: [OpenLayersMap, OpenLayersDisabledMap] -}) -export class OpenLayerIDAHOSourceProvider extends OpenLayersMapSourceProvider { - - constructor(protected httpClient: HttpClient, - protected cacheService: CacheService, - protected imageryCommunicatorService: ImageryCommunicatorService, - @Inject(MAP_SOURCE_PROVIDERS_CONFIG) protected mapSourceProvidersConfig: IMapSourceProvidersConfig) { - super(cacheService, imageryCommunicatorService, mapSourceProvidersConfig); - } - - /* - not in use - */ - create(metaData: IMapSettings): Promise { - let layerPromise; - - if (metaData.data.overlay.channel === 1) { - const bands = this.getBandsSection(metaData.data.overlay, '0'); - metaData.data.overlay.imageUrl = metaData.data.overlay.baseImageUrl + bands; - } - - if (metaData.data.overlay.imageUrl) { - let layer = this.createOrGetFromCache(metaData); - layerPromise = Promise.resolve(layer[0]); - } else { - const token = (metaData.data.overlay).token; - let imageData, associationData; - const getImagePromise = this.getImageData(metaData.data.overlay, token, 'image') - .then((data) => { - imageData = data; - }) - .catch((excpetion) => { - }); - - const getAssociationPromise = this.getImageData(metaData.data.overlay, token, 'associations') - .then((data) => { - associationData = data; - }) - .catch((excpetion) => { - }); - - layerPromise = Promise.all([getImagePromise, getAssociationPromise]).then(() => { - let imageUrl = metaData.data.overlay.baseImageUrl; - let bands = this.getColorChannel(metaData.data.overlay, imageData); - imageUrl += bands; - - if (associationData) { - const panned = this.getPannedSection(metaData.data.overlay, associationData); - imageUrl += panned; - } - metaData.data.overlay.imageUrl = imageUrl; - let layer = this.createOrGetFromCache(metaData); - return Promise.resolve(layer[0]); - }); - } - - return layerPromise; - } - - getColorChannel(overlay: any, imageData: any): string { - let rgbBans: string; - if (imageData && imageData.bandAliases) { - const rIndex = imageData.bandAliases.indexOf('R'); - const gIndex = imageData.bandAliases.indexOf('G'); - const bIndex = imageData.bandAliases.indexOf('B'); - rgbBans = `${ rIndex },${ gIndex },${ bIndex }`; - } else { - rgbBans = '0'; - if (overlay.channel > 1 && overlay.channel < 5) { - rgbBans = '2,1,0'; - } else if (overlay.channel >= 5) { - rgbBans = '4,2,1'; - } - } - return this.getBandsSection(overlay, rgbBans); - } - - getBandsSection(overlay: any, bands: string): string { - return '&bands=' + bands; - } - - getPannedSection(overlay: any, associationData: any): string { - if (associationData.associations && associationData.associations.length > 0) { - // overlay.imageUrl = overlay.baseImageUrl + '&panId=' + associationData.associations[0].imageId; - return '&panId=' + associationData.associations[0].imageId; - } - return ''; - } - - getImageData(overlay: any, token, fileName: string): Promise { - const idahoElement = overlay.tag; - const fileUrl = `http://idaho.geobigdata.io/v1/metadata/${ idahoElement.properties.bucketName }/${ overlay.id }/${ fileName }.json`; - - const httpOptions = { - headers: { - 'Authorization': 'Bearer ' + token - } - }; - - return this.httpClient.get(fileUrl, httpOptions).toPromise(); - } -} diff --git a/src/app/@ansyn/ol/mapSourceProviders/open-layers-MapBox-source-provider.ts b/src/app/@ansyn/ol/mapSourceProviders/open-layers-MapBox-source-provider.ts deleted file mode 100644 index cdeb730b04..0000000000 --- a/src/app/@ansyn/ol/mapSourceProviders/open-layers-MapBox-source-provider.ts +++ /dev/null @@ -1,15 +0,0 @@ -import XYZ from 'ol/source/XYZ'; -import TileLayer from 'ol/layer/Tile'; -import { EPSG_3857, ImageryMapSource, IMapSettings } from '@ansyn/imagery'; -import { OpenLayersMapSourceProvider } from './open-layers.map-source-provider'; -import { OpenLayersMap } from '../maps/open-layers-map/openlayers-map/openlayers-map'; -import { OpenLayersDisabledMap } from '../maps/openlayers-disabled-map/openlayers-disabled-map'; - -export const OpenLayerMapBoxSourceProviderSourceType = 'MapBox'; - -@ImageryMapSource({ - sourceType: OpenLayerMapBoxSourceProviderSourceType, - supported: [OpenLayersMap, OpenLayersDisabledMap] -}) -export class OpenLayerMapBoxSourceProvider extends OpenLayersMapSourceProvider { -} diff --git a/src/app/@ansyn/ol/mapSourceProviders/open-layers-OSM-source-provider.ts b/src/app/@ansyn/ol/mapSourceProviders/open-layers-OSM-source-provider.ts deleted file mode 100644 index f3f519d8c8..0000000000 --- a/src/app/@ansyn/ol/mapSourceProviders/open-layers-OSM-source-provider.ts +++ /dev/null @@ -1,19 +0,0 @@ -import OSM from 'ol/source/OSM'; -import TileLayer from 'ol/layer/Tile'; -import { ImageryMapSource, IMapSettings } from '@ansyn/imagery'; -import { OpenLayersMapSourceProvider } from './open-layers.map-source-provider'; -import { OpenLayersMap } from '../maps/open-layers-map/openlayers-map/openlayers-map'; -import { OpenLayersDisabledMap } from '../maps/openlayers-disabled-map/openlayers-disabled-map'; - -export const OpenLayerOSMSourceProviderSourceType = 'OSM'; - - -@ImageryMapSource({ - sourceType: OpenLayerOSMSourceProviderSourceType, - supported: [OpenLayersMap, OpenLayersDisabledMap] -}) -export class OpenLayerOSMSourceProvider extends OpenLayersMapSourceProvider { - createSource(metaData: IMapSettings): any { - return new OSM({wrapX: false}); - } -} diff --git a/src/app/@ansyn/ol/mapSourceProviders/open-layers-Pic4Carto-source-provider.ts b/src/app/@ansyn/ol/mapSourceProviders/open-layers-Pic4Carto-source-provider.ts deleted file mode 100644 index bcc89ca047..0000000000 --- a/src/app/@ansyn/ol/mapSourceProviders/open-layers-Pic4Carto-source-provider.ts +++ /dev/null @@ -1,71 +0,0 @@ -import { - CacheService, - ImageryCommunicatorService, - ImageryMapSource, IMapSettings, - IMapSourceProvidersConfig, - MAP_SOURCE_PROVIDERS_CONFIG -} from '@ansyn/imagery'; -import Projection from 'ol/proj/Projection'; -import Static from 'ol/source/ImageStatic'; -import ImageLayer from 'ol/layer/Image'; -import { Inject } from '@angular/core'; -import { HttpClient } from '@angular/common/http'; -import { OpenLayersMap } from '../maps/open-layers-map/openlayers-map/openlayers-map'; -import { OpenLayersDisabledMap } from '../maps/openlayers-disabled-map/openlayers-disabled-map'; -import { OpenLayersMapSourceProvider } from './open-layers.map-source-provider'; - -export const OpenLayerPic4CartoSourceProviderSourceType = 'PIC4CARTO'; - -@ImageryMapSource({ - sourceType: OpenLayerPic4CartoSourceProviderSourceType, - supported: [OpenLayersMap, OpenLayersDisabledMap] -}) -export class OpenLayerPic4CartoSourceProvider extends OpenLayersMapSourceProvider { - readonly sourceType; - - constructor( - protected cacheService: CacheService, - protected imageryCommunicatorService: ImageryCommunicatorService, - @Inject(MAP_SOURCE_PROVIDERS_CONFIG) protected mapSourceProvidersConfig: IMapSourceProvidersConfig, - protected http: HttpClient - ) { - super(cacheService, imageryCommunicatorService, mapSourceProvidersConfig); - } - - create(metaData: IMapSettings): Promise { - return new Promise(resolve => { - const image = new Image(); - - image.onload = () => { - const extent: any = [0, 0, image.width, image.height]; - - const source = new Static({ - url: metaData.data.overlay.imageUrl, - crossOrigin: null, - projection: new Projection({ - code: metaData.data.overlay.id, - units: 'pixels', - extent - }), - imageExtent: extent - }); - - resolve( - new ImageLayer({ - source, - extent - }) - ); - }; - - image.src = metaData.data.overlay.imageUrl; - }); - } - - setExtraData(layer, extraData) { - if (layer && layer.set) { - return super.setExtraData(layer, extraData); - } - return; - } -} diff --git a/src/app/@ansyn/ol/mapSourceProviders/open-layers-TileWMS-source-provider.ts b/src/app/@ansyn/ol/mapSourceProviders/open-layers-TileWMS-source-provider.ts deleted file mode 100644 index 5b00441fb5..0000000000 --- a/src/app/@ansyn/ol/mapSourceProviders/open-layers-TileWMS-source-provider.ts +++ /dev/null @@ -1,30 +0,0 @@ -import TileWMS from 'ol/source/TileWMS'; -import { ImageryMapSource, IMapSettings } from '@ansyn/imagery'; -import { OpenLayersMapSourceProvider } from './open-layers.map-source-provider'; -import { OpenLayersMap } from '../maps/open-layers-map/openlayers-map/openlayers-map'; -import { OpenLayersDisabledMap } from '../maps/openlayers-disabled-map/openlayers-disabled-map'; - -export const OpenLayerTileWMSSourceProviderSourceType = 'TileWMS'; - -@ImageryMapSource({ - sourceType: OpenLayerTileWMSSourceProviderSourceType, - supported: [OpenLayersMap, OpenLayersDisabledMap] -}) -export class OpenLayerTileWMSSourceProvider extends OpenLayersMapSourceProvider { - createSource(metaData: IMapSettings) { - const { config } = this; - const layers = config.layers.join(','); - - const source = new TileWMS({ - preload: Infinity, - url: config.url, - params: { - 'VERSION': '1.1.1', - LAYERS: layers - }, - projection: config.projection - }); - - return source; - } -} diff --git a/src/app/@ansyn/ol/mapSourceProviders/open-layers-open-aerial-source-provider.ts b/src/app/@ansyn/ol/mapSourceProviders/open-layers-open-aerial-source-provider.ts deleted file mode 100644 index d1f447d563..0000000000 --- a/src/app/@ansyn/ol/mapSourceProviders/open-layers-open-aerial-source-provider.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { ImageryMapSource } from '@ansyn/imagery'; -import { OpenLayersMapSourceProvider } from './open-layers.map-source-provider'; -import { OpenLayersMap } from '../maps/open-layers-map/openlayers-map/openlayers-map'; -import { OpenLayersDisabledMap } from '../maps/openlayers-disabled-map/openlayers-disabled-map'; - -export const OpenLayerOpenAerialSourceProviderSourceType = 'OPEN_AERIAL'; - -@ImageryMapSource({ - sourceType: OpenLayerOpenAerialSourceProviderSourceType, - supported: [OpenLayersMap, OpenLayersDisabledMap] -}) -export class OpenLayerOpenAerialSourceProvider extends OpenLayersMapSourceProvider { - -} diff --git a/src/app/@ansyn/ol/mapSourceProviders/open-layers-planet-source-provider.ts b/src/app/@ansyn/ol/mapSourceProviders/open-layers-planet-source-provider.ts deleted file mode 100644 index d0533bd9b7..0000000000 --- a/src/app/@ansyn/ol/mapSourceProviders/open-layers-planet-source-provider.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { ImageryMapSource } from '@ansyn/imagery'; -import { OpenLayersMapSourceProvider } from './open-layers.map-source-provider'; -import { OpenLayersMap } from '../maps/open-layers-map/openlayers-map/openlayers-map'; -import { OpenLayersDisabledMap } from '../maps/openlayers-disabled-map/openlayers-disabled-map'; - -export const OpenLayerPlanetSourceProviderSourceType = 'PLANET'; - -@ImageryMapSource({ - sourceType: OpenLayerPlanetSourceProviderSourceType, - supported: [OpenLayersMap, OpenLayersDisabledMap] -}) -export class OpenLayerPlanetSourceProvider extends OpenLayersMapSourceProvider { -} diff --git a/src/app/@ansyn/ol/mapSourceProviders/open-layers-static-image-source-provider.ts b/src/app/@ansyn/ol/mapSourceProviders/open-layers-static-image-source-provider.ts deleted file mode 100644 index 2961980960..0000000000 --- a/src/app/@ansyn/ol/mapSourceProviders/open-layers-static-image-source-provider.ts +++ /dev/null @@ -1,47 +0,0 @@ -import { EPSG_3857, ImageryMapSource, IMapSettings } from '@ansyn/imagery'; -import Projection from 'ol/proj/Projection'; -import Static from 'ol/source/ImageStatic'; -import ImageLayer from 'ol/layer/Image'; -import { OpenLayersMap } from '../maps/open-layers-map/openlayers-map/openlayers-map'; -import { OpenLayersDisabledMap } from '../maps/openlayers-disabled-map/openlayers-disabled-map'; -import { OpenLayersMapSourceProvider } from './open-layers.map-source-provider'; - -export const OpenLayersStaticImageSourceProviderSourceType = 'STATIC_IMAGE'; - -@ImageryMapSource({ - sourceType: OpenLayersStaticImageSourceProviderSourceType, - supported: [OpenLayersMap, OpenLayersDisabledMap] -}) -export class OpenLayersStaticImageSourceProvider extends OpenLayersMapSourceProvider { - - createExtent(metaData: IMapSettings, destinationProjCode: string = EPSG_3857): [number, number, number, number] { - return [0, 0, metaData.data.overlay.tag.imageData.imageWidth, metaData.data.overlay.tag.imageData.imageHeight]; - } - - createSource(metaData: IMapSettings): any { - const extent = this.createExtent(metaData); - const code = `static-image ${ metaData.data.overlay.id }`; - - const projection = new Projection({ - code, - units: 'pixels', - extent - }); - - const source = new Static({ - url: metaData.data.overlay.imageUrl, - crossOrigin: 'Anonymous', - imageExtent: extent, - projection - }); - return source; - } - - createLayer(source, extent: [number, number, number, number]): ImageLayer { - return new ImageLayer({ - source, - extent - }); - } - -} diff --git a/src/app/@ansyn/ol/mapSourceProviders/open-layers.map-source-provider.ts b/src/app/@ansyn/ol/mapSourceProviders/open-layers.map-source-provider.ts deleted file mode 100644 index 49e377148f..0000000000 --- a/src/app/@ansyn/ol/mapSourceProviders/open-layers.map-source-provider.ts +++ /dev/null @@ -1,97 +0,0 @@ -import { - BaseMapSourceProvider, - bboxFromGeoJson, - EPSG_3857, - EPSG_4326, - ImageryLayerProperties, - IMapSettings -} from '@ansyn/imagery'; -import ol_Layer from 'ol/layer/Layer'; -import ImageLayer from 'ol/layer/Image'; -import TileLayer from 'ol/layer/Tile'; -import * as proj from 'ol/proj'; -import XYZ from 'ol/source/XYZ'; -import { ProjectableRaster } from '../maps/open-layers-map/models/projectable-raster'; -export const IMAGE_PROCESS_ATTRIBUTE = 'imageLayer'; -export abstract class OpenLayersMapSourceProvider extends BaseMapSourceProvider { - create(metaData: IMapSettings): Promise { - const extent = this.createExtent(metaData); - const source = this.createSource(metaData); - const tileLayer = this.createLayer(source, extent); - tileLayer.set(IMAGE_PROCESS_ATTRIBUTE, this.getImageLayer(source, extent)); - return Promise.resolve(tileLayer); - } - - generateLayerId(metaData: IMapSettings) { - if (metaData.data.overlay) { - return `${ metaData.worldView.mapType }/${ metaData.data.overlay.sourceType }/${ metaData.data.overlay.id }`; - } - return `${ metaData.worldView.mapType }/${ metaData.data.key }`; - } - - removeExtraData(layer: ol_Layer) { - if (this.isRasterLayer(layer)) { - layer.getSource().destroy(); - } - super.removeExtraData(layer); - } - - protected isRasterLayer(layer: ol_Layer) { - return layer instanceof ol_Layer && layer.getSource() instanceof ProjectableRaster; - } - - createLayer(source, extent: [number, number, number, number]): ol_Layer { - const tileLayer = new TileLayer({ - visible: true, - preload: Infinity, - source, - extent - }); - const imageLayer = this.getImageLayer(source, extent); - this.removeExtraData(imageLayer); - tileLayer.set(IMAGE_PROCESS_ATTRIBUTE, imageLayer); - return tileLayer; - } - - getImageLayer(source, extent): ImageLayer { - const imageLayer = new ImageLayer({ - source: new ProjectableRaster({ - sources: [source], - operation: (pixels) => pixels[0], - operationType: 'image' - }), - extent: extent - }); - return imageLayer; - } - - createExtent(metaData: IMapSettings, destinationProjCode = EPSG_3857) { - const sourceProjection = metaData.data.config && metaData.data.config.projection ? metaData.data.config.projection : EPSG_4326; - let extent: [number, number, number, number] = metaData.data.overlay ? <[number, number, number, number]>bboxFromGeoJson(metaData.data.overlay.footprint) : [-180, -90, 180, 90]; - [extent[0], extent[1]] = proj.transform([extent[0], extent[1]], sourceProjection, destinationProjCode); - [extent[2], extent[3]] = proj.transform([extent[2], extent[3]], sourceProjection, destinationProjCode); - return extent; - } - - createSource(metaData: IMapSettings) { - const source = new XYZ({ - url: metaData.data.overlay.imageUrl, - crossOrigin: 'Anonymous', - projection: EPSG_3857 - }); - return source; - } - - generateExtraData(metaData: IMapSettings) { - if (metaData.data.overlay) { - return { [ImageryLayerProperties.FOOTPRINT]: metaData.data.overlay.footprint } - } - return {} - } - - setExtraData(layer: ol_Layer, extraData: any): void { - Object.entries(extraData).forEach(([key, value]) => { - layer.set(key, value) - }) - } -} diff --git a/src/app/@ansyn/ol/maps/open-layers-map/helpers/openlayers-monitor.ts b/src/app/@ansyn/ol/maps/open-layers-map/helpers/openlayers-monitor.ts deleted file mode 100644 index 9cb65768d3..0000000000 --- a/src/app/@ansyn/ol/maps/open-layers-map/helpers/openlayers-monitor.ts +++ /dev/null @@ -1,172 +0,0 @@ -import TileSource from 'ol/source/Tile'; -import { IMAGERY_MAIN_LAYER_NAME, ImageryLayerProperties, IMapErrorMessage, IMapProgress } from '@ansyn/imagery'; -import Static from 'ol/source/ImageStatic'; -import { HttpClient, HttpEventType, HttpRequest } from '@angular/common/http'; -import OLMap from 'ol/Map'; -import { ProjectableRaster } from '../models/projectable-raster'; -import { EventEmitter } from '@angular/core'; - -export class OpenLayersMonitor { - source: TileSource | Static | any; - - isFirstLoad: boolean; - - tilesCounter = { - total: 0, - success: 0, - error: 0 - }; - - messages = { - all: 'Failed to load overlay', - partial: 'Failed to load {amount} tiles', - one: 'Failed to load a tile' - }; - - olmap: OLMap; - - constructor(protected tilesLoadProgressEventEmitter: EventEmitter, - protected tilesLoadErrorEventEmitter: EventEmitter, - protected http: HttpClient - ) { - } - - start(olmap: OLMap) { - this.olmap = olmap; - this.monitorSource(); - } - - getMainSource(): TileSource | Static | any { - const layer = this.olmap.getLayers() - .getArray().find(layer => layer.get(ImageryLayerProperties.NAME) === IMAGERY_MAIN_LAYER_NAME); - - if (!layer) { - return; - } - - let source = layer.getSource(); - - if (source instanceof ProjectableRaster) { - return (source).sources[0]; - } - if (source instanceof Static) { - return source; - } - return source; - } - - monitorSource() { - this.killMonitorEvents(); - this.initMonitor(); - this.setMonitorEvents(); - } - - resetCounterWhenDone = () => { - if (this.tilesCounter.total === this.tilesCounter.success + this.tilesCounter.error) { - this.tilesCounter.total = 0; - this.tilesCounter.success = 0; - this.tilesCounter.error = 0; - this.isFirstLoad = false; - this.olmap.renderSync(); - } - - const progress = this.tilesCounter.total ? (this.tilesCounter.success + this.tilesCounter.error) / this.tilesCounter.total : 1; - - this.tilesLoadProgressEventEmitter.emit({ progress: progress * 100 }); - }; - - tileLoadStart = () => { - this.tilesCounter.total++; - }; - - tileLoadEnd = () => { - this.tilesCounter.success++; - this.resetCounterWhenDone(); - }; - - tileLoadError = () => { - this.tilesCounter.error++; - - let message; - - if (this.isFirstLoad && this.tilesCounter.error === this.tilesCounter.total) { // All of em, on first load - message = this.messages.all; - } else if (this.tilesCounter.error === 1) { // Only 1 - message = this.messages.one; - } else { // More than 1, but not all - message = this.messages.partial.replace('{amount}', String(this.tilesCounter.error)); - } - - this.tilesLoadErrorEventEmitter.emit({ message }); - - this.resetCounterWhenDone(); - }; - - - initMonitor() { - this.source = this.getMainSource(); - this.isFirstLoad = true; - const total = 0, success = 0, error = 0; - this.tilesCounter = { total, success, error }; - } - - setMonitorEvents() { - if (this.source) { - if (this.source instanceof TileSource) { - this.source.on('tileloadstart', this.tileLoadStart); - this.source.on('tileloadend', this.tileLoadEnd); - this.source.on('tileloaderror', this.tileLoadError); - } else if (this.source instanceof Static) { - const image = this.source.image_.image_; - const src = this.source.image_.src_; - this.staticImageLoad(image, src); - } else { - console.warn(`'${ this.source } is not supported by monitor plugin'`); - } - } - } - - killMonitorEvents() { - if (this.source) { - if (this.source instanceof TileSource) { - this.source.un('tileloadstart', this.tileLoadStart); - this.source.un('tileloadend', this.tileLoadEnd); - this.source.un('tileloaderror', this.tileLoadError); - } - } - } - - dispose() { - this.killMonitorEvents(); - } - - staticImageLoad = (image: any, url) => { - this.http.request(new HttpRequest( - 'GET', - url, - { - reportProgress: true, - responseType: 'blob' - } - ) - ).subscribe(event => { - switch (event.type) { - case HttpEventType.DownloadProgress: - case HttpEventType.UploadProgress: { - this.tilesCounter.total = event.total; - this.tilesCounter.success = event.loaded; - this.resetCounterWhenDone(); - break; - } - case HttpEventType.Response: { - let reader = new FileReader(); - reader.readAsDataURL(event.body); - reader.onloadend = () => { - (image).src = reader.result; - }; - break; - } - } - }); - }; -} diff --git a/src/app/@ansyn/ol/maps/open-layers-map/models/projectable-raster.ts b/src/app/@ansyn/ol/maps/open-layers-map/models/projectable-raster.ts deleted file mode 100644 index 52833c037c..0000000000 --- a/src/app/@ansyn/ol/maps/open-layers-map/models/projectable-raster.ts +++ /dev/null @@ -1,34 +0,0 @@ -import Raster from 'ol/source/Raster'; -import Source from 'ol/source/Source'; -import Projection from 'ol/proj/Projection'; -import { get } from 'lodash'; - -export class ProjectableRaster extends Raster { - sources: Source[]; - - constructor(options: any) { - super(options); - this.sources = options.sources; - } - - getProjection(): Projection { - if (this.sources.length === 1) { - return this.sources[0].getProjection(); - } else { - throw new Error('Can not obtain raster projection with multiple sources'); - } - } - - setOperation(operation: any, opt_lib?: any): void { - this.destroy(); - super.setOperation(operation, opt_lib); - } - - destroy(): void { - const worker = get(this, 'worker_'); - if (worker) { - const workers = get(worker, '_workers') || []; - workers.forEach((worker: Worker) => worker.terminate()); - } - } -} diff --git a/src/app/@ansyn/ol/maps/open-layers-map/openlayers-map/openlayers-map.ts b/src/app/@ansyn/ol/maps/open-layers-map/openlayers-map/openlayers-map.ts deleted file mode 100644 index 2107862c73..0000000000 --- a/src/app/@ansyn/ol/maps/open-layers-map/openlayers-map/openlayers-map.ts +++ /dev/null @@ -1,676 +0,0 @@ -import { HttpClient } from '@angular/common/http'; -import { EventEmitter, Inject } from '@angular/core'; -import { - areCoordinatesNumeric, - BaseImageryMap, - ExtentCalculator, - IMAGERY_BASE_MAP_LAYER, - IMAGERY_MAIN_LAYER_NAME, - ImageryLayerProperties, - ImageryMap, - ImageryMapExtent, - ImageryMapExtentPolygon, - IImageryMapPosition, - IMapProgress, - IMouseClick -} from '@ansyn/imagery'; -import * as turf from '@turf/turf'; -import { feature } from '@turf/turf'; -import { Feature, FeatureCollection, GeoJsonObject, GeometryObject, Point as GeoPoint, Polygon } from 'geojson'; -import AttributionControl from 'ol/control/Attribution'; -import ScaleLine from 'ol/control/ScaleLine'; -import olFeature from 'ol/Feature'; -import olGeoJSON from 'ol/format/GeoJSON'; -import OLGeoJSON from 'ol/format/GeoJSON'; -import olPolygon from 'ol/geom/Polygon'; -import * as olInteraction from 'ol/interaction' -import Group from 'ol/layer/Group'; -import ol_Layer from 'ol/layer/Layer'; -import VectorLayer from 'ol/layer/Vector'; -import OLMap from 'ol/Map'; -import Vector from 'ol/source/Vector'; -import View from 'ol/View'; -import { Observable, of, Subject, timer } from 'rxjs'; -import { debounceTime, filter, map, switchMap, take, takeUntil, tap } from 'rxjs/operators'; -import { IOlConfig, OL_CONFIG } from '../../../config/ol-config'; -import { OpenLayersProjectionService } from '../../../projection/open-layers-projection.service'; -import { OpenLayersMonitor } from '../helpers/openlayers-monitor'; -import * as olShare from '../shared/openlayers-shared'; -import { Utils } from '../utils/utils'; - -export const OpenlayersMapName = 'openLayersMap'; - -export enum StaticGroupsKeys { - layers = 'layers' -} - -// @dynamic -@ImageryMap({ - mapType: OpenlayersMapName, - deps: [HttpClient, OpenLayersProjectionService, OL_CONFIG] -}) -export class OpenLayersMap extends BaseImageryMap { - static groupsKeys = StaticGroupsKeys; - static groupLayers = new Map(Object.values(StaticGroupsKeys).map((key) => [key, new Group()]) as any); - private _mapObject: OLMap; - private _backgroundMapObject: OLMap; - public isValidPosition; - targetElement: HTMLElement = null; - public shadowNorthElement = null; - getMoveEndPositionObservable = new Subject(); - getMoveStartPositionObservable = new Subject(); - subscribers = []; - private showGroups = new Map(); - private _backgroundMapParams: object; - private olGeoJSON: OLGeoJSON = new OLGeoJSON(); - private _mapLayers = []; - private isLoading$: Subject = new Subject(); - private monitor: OpenLayersMonitor = new OpenLayersMonitor( - this.tilesLoadProgressEventEmitter, - this.tilesLoadErrorEventEmitter, - this.http - ); - - constructor(protected http: HttpClient, - public projectionService: OpenLayersProjectionService, - @Inject(OL_CONFIG) public olConfig: IOlConfig) { - super(); - // todo: a more orderly way to give default values to config params - this.olConfig.tilesLoadingDoubleBuffer = this.olConfig.tilesLoadingDoubleBuffer || { - debounceTimeInMs: 500, - timeoutInMs: 3000 - }; - } - - public get mapObject() { - return this._mapObject; - } - - public get backgroundMapObject() { - return this._backgroundMapObject; - } - - signalWhenTilesLoadingEnds() { - this.isLoading$.next(true); - this.tilesLoadProgressEventEmitter.pipe( - filter((payload: IMapProgress) => { - return payload.progress === 100; - }), - debounceTime(this.olConfig.tilesLoadingDoubleBuffer.debounceTimeInMs), // Adding debounce, to compensate for strange multiple loads when reading tiles from the browser cache (e.g. after browser refresh) - takeUntil(timer(this.olConfig.tilesLoadingDoubleBuffer.timeoutInMs).pipe(tap(() => { - this.isLoading$.next(false); - }))), - tap(() => { - this.isLoading$.next(false); - }), - take(1) - ).subscribe(); - } - - /** - * add layer to the map if it is not already exists the layer must have an id set - * @param layer - */ - public addLayerIfNotExist(layer): ol_Layer { - const layerId = layer.get(ImageryLayerProperties.ID); - if (!layerId) { - return; - } - const existingLayer: ol_Layer = this.getLayerById(layerId); - if (!existingLayer) { - // layer.set('visible',false); - this.addLayer(layer); - return layer; - } - return existingLayer; - } - - toggleGroup(groupName: StaticGroupsKeys, newState: boolean) { - const group = OpenLayersMap.groupLayers.get(groupName); - if (newState) { - this.addLayer(group); - } else { - this.removeLayer(group); - } - this.showGroups.set(groupName, newState); - } - - getLayers(): ol_Layer[] { - return this.mapObject.getLayers().getArray(); - } - - initMap(target: HTMLElement, shadowNorthElement: HTMLElement, shadowDoubleBufferElement: HTMLElement, layer: ol_Layer, position?: IImageryMapPosition): Observable { - this.targetElement = target; - this.shadowNorthElement = shadowNorthElement; - this._mapLayers = []; - const controls = [ - new ScaleLine(), - new AttributionControl({ - collapsible: true - }) - ]; - const renderer = 'canvas'; - this._mapObject = new OLMap({ - target, - renderer, - controls, - interaction: olInteraction.defaults({ doubleClickZoom: false }), - loadTilesWhileInteracting: true, - loadTilesWhileAnimating: true - }); - this.initListeners(); - this._backgroundMapParams = { - target: shadowDoubleBufferElement, - renderer - }; - // For initMap() we invoke resetView without double buffer - // (otherwise resetView() would have waited for the tile loading to end, but we don't want initMap() to wait). - // The double buffer is not relevant at this stage anyway. - return this.resetView(layer, position); - } - - initListeners() { - this._mapObject.on('moveend', this._moveEndListener); - this._mapObject.on('movestart', this._moveStartListener); - this._mapObject.on('pointerdown', this._pointerDownListener); - this._mapObject.on('pointermove', this._pointerMoveListener); - this._mapObject.on('dblclick', this._dblClickListener); - this._mapObject.on('singleclick', this._singleClickListener); - this.targetElement.addEventListener('contextmenu', this._rightClickListener); - - this.subscribers.push( - this.getMoveEndPositionObservable.pipe( - switchMap((a) => { - return this.getPosition(); - }) - ).subscribe(position => { - if (position) { - this.positionChanged.emit(position); - } - }), - this.getMoveStartPositionObservable.pipe( - switchMap((a) => { - return this.getPosition(); - }) - ).subscribe(position => { - if (position) { - this.moveStart.emit(position) - } - }) - ); - } - - createView(layer): View { - return new View({ - projection: layer.getSource().getProjection(), - maxZoom: 21, - minZoom: 1 - }); - } - - public resetView(layer: ol_Layer, position: IImageryMapPosition, extent?: ImageryMapExtent, useDoubleBuffer?: boolean): Observable { - useDoubleBuffer = useDoubleBuffer && !layer.get(ImageryLayerProperties.FROM_CACHE); - if (useDoubleBuffer) { - this._backgroundMapObject = new OLMap(this._backgroundMapParams); - } else if (this._backgroundMapObject) { - this._backgroundMapObject.setTarget(null); - this._backgroundMapObject = null; - } - const rotation: number = this._mapObject.getView() && this.mapObject.getView().getRotation(); - const view = this.createView(layer); - // set default values to prevent map Assertion error's - view.setCenter([0, 0]); - view.setRotation(rotation ? rotation : 0); - view.setResolution(1); - if (useDoubleBuffer) { - this.setMainLayerToBackgroundMap(layer); - this._backgroundMapObject.setView(view); - this.monitor.start(this.backgroundMapObject); - this.signalWhenTilesLoadingEnds(); - return this._setMapPositionOrExtent(this.backgroundMapObject, position, extent, rotation).pipe( - switchMap(() => this.isLoading$.pipe( - filter((isLoading) => !isLoading), - take(1))), - switchMap(() => { - this.setMainLayerToForegroundMap(layer); - this._mapObject.setView(view); - return this._setMapPositionOrExtent(this.mapObject, position, extent, rotation); - }) - ); - } else { - this.setMainLayerToForegroundMap(layer); - this._mapObject.setView(view); - this.monitor.start(this.mapObject); - return this._setMapPositionOrExtent(this.mapObject, position, extent, rotation); - } - } - - public getLayerById(id: string): ol_Layer { - return this.mapObject.getLayers().getArray().find(item => item.get(ImageryLayerProperties.ID) === id); - } - - setGroupLayers() { - this.showGroups.forEach((show, group) => { - if (show) { - this.addLayer(OpenLayersMap.groupLayers.get(group)); - } - }); - } - - setMainLayerToForegroundMap(layer: ol_Layer) { - layer.set(ImageryLayerProperties.NAME, IMAGERY_MAIN_LAYER_NAME); - layer.set(ImageryLayerProperties.MAIN_EXTENT, null); - this.removeAllLayers(); - this.addLayer(layer); - this.setGroupLayers(); - } - - setMainLayerToBackgroundMap(layer: ol_Layer) { - layer.set(ImageryLayerProperties.NAME, IMAGERY_MAIN_LAYER_NAME); - this.backgroundMapObject.getLayers().clear(); - this.backgroundMapObject.addLayer(layer); - } - - getMainLayer(): ol_Layer { - const mainLayer = this._mapLayers.find((layer: ol_Layer) => layer.get(ImageryLayerProperties.NAME) === IMAGERY_MAIN_LAYER_NAME); - return mainLayer; - } - - getLayerByName(name: string): ol_Layer { - const layer = this._mapLayers.find((layer: ol_Layer) => layer.get(ImageryLayerProperties.NAME) === name); - return layer; - } - - fitToExtent(extent: ImageryMapExtent, map: OLMap = this.mapObject, view: View = map.getView()) { - const collection: any = turf.featureCollection([ExtentCalculator.extentToPolygon(extent)]); - - return this.projectionService.projectCollectionAccuratelyToImage(collection, map).pipe( - tap((features: olFeature[]) => { - view.fit(features[0].getGeometry() as olPolygon, { nearest: true, constrainResolution: false }); - }) - ); - } - - public addMapLayer(layer: ol_Layer) { - const main = this.getMainLayer(); - const baseMapLayer = this._mapLayers.find((layer: ol_Layer) => layer.get(ImageryLayerProperties.NAME) === IMAGERY_BASE_MAP_LAYER); - if (baseMapLayer) { - this.removeLayer(baseMapLayer); - } - if (layer.get(ImageryLayerProperties.ID) !== main.get(ImageryLayerProperties.ID)) { - this.addLayer(layer); - } - this.mapLayerChangedEventEmitter.emit(); - } - - public addLayer(layer: ol_Layer) { - - if (!this._mapLayers.includes(layer)) { - this._mapLayers.push(layer); - this._mapObject.addLayer(layer); - } - } - - public removeAllLayers() { - this.showGroups.forEach((show, group) => { - if (show && this._mapObject) { - this._mapObject.removeLayer(OpenLayersMap.groupLayers.get(group)); - } - }); - - while (this._mapLayers.length > 0) { - this.removeLayer(this._mapLayers[0]); - } - - this._mapLayers = []; - } - - public removeLayer(layer: ol_Layer): void { - if (!layer) { - return; - } - olShare.removeWorkers(layer); - this._mapLayers = this._mapLayers.filter((mapLayer) => mapLayer !== layer); - this._mapObject.removeLayer(layer); - this._mapObject.renderSync(); - } - - public setCenter(center: GeoPoint, animation: boolean): Observable { - return this.projectionService.projectAccuratelyToImage(center, this.mapObject).pipe(map(projectedCenter => { - const olCenter = <[number, number]>projectedCenter.coordinates; - if (animation) { - this.flyTo(olCenter); - } else { - const view = this._mapObject.getView(); - view.setCenter(olCenter); - } - - return true; - })); - } - - public updateSize(): void { - const center = this._mapObject.getView().getCenter(); - if (!areCoordinatesNumeric(center)) { - return; - } - this._mapObject.updateSize(); - this._mapObject.renderSync(); - } - - public getCenter(): Observable { - if (!this.isValidPosition) { - return of(null); - } - const view = this._mapObject.getView(); - const center = view.getCenter(); - if (!areCoordinatesNumeric(center)) { - return of(null); - } - const point = turf.geometry('Point', center); - - return this.projectionService.projectAccurately(point, this.mapObject); - } - - calculateRotateExtent(olmap: OLMap): Observable<{ extentPolygon: ImageryMapExtentPolygon, layerExtentPolygon: ImageryMapExtentPolygon }> { - const mainLayer = this.getMainLayer(); - if (!this.isValidPosition || !mainLayer) { - return of({ extentPolygon: null, layerExtentPolygon: null }); - } - - const [width, height] = olmap.getSize(); - const topLeft = olmap.getCoordinateFromPixel([0, 0]); - const topRight = olmap.getCoordinateFromPixel([width, 0]); - const bottomRight = olmap.getCoordinateFromPixel([width, height]); - const bottomLeft = olmap.getCoordinateFromPixel([0, height]); - const coordinates = [[topLeft, topRight, bottomRight, bottomLeft, topLeft]]; - const someIsNaN = !coordinates[0].every(areCoordinatesNumeric); - if (someIsNaN) { - return of({ extentPolygon: null, layerExtentPolygon: null }); - } - - const cachedMainExtent = mainLayer.get(ImageryLayerProperties.MAIN_EXTENT); - const mainExtent = mainLayer.getExtent(); - if (mainExtent && !Boolean(cachedMainExtent)) { - const layerExtentPolygon = Utils.extentToOlPolygon(mainExtent); - return this.projectionService.projectCollectionAccurately([new olFeature(new olPolygon(coordinates)), new olFeature(layerExtentPolygon)], olmap).pipe( - map((collection: FeatureCollection) => { - mainLayer.set(ImageryLayerProperties.MAIN_EXTENT, collection.features[1].geometry as Polygon); - return { - extentPolygon: collection.features[0].geometry as Polygon, - layerExtentPolygon: collection.features[1].geometry as Polygon - }; - }) - ); - } - return this.projectionService.projectCollectionAccurately([new olFeature(new olPolygon(coordinates))], olmap) - .pipe(map((collection: FeatureCollection) => { - return { - extentPolygon: collection.features[0].geometry as Polygon, - layerExtentPolygon: cachedMainExtent - }; - })); - } - - fitRotateExtent(olmap: OLMap, extentFeature: Feature, customResolution?: number): Observable { - const collection: any = turf.featureCollection([extentFeature]); - - return this.projectionService.projectCollectionAccuratelyToImage(collection, olmap).pipe( - map((features: olFeature[]) => { - const view: View = olmap.getView(); - const geoJsonFeature = this.olGeoJSON.writeFeaturesObject(features, - { featureProjection: view.getProjection(), dataProjection: view.getProjection() }); - const geoJsonExtent = geoJsonFeature.features[0].geometry; - - const center = ExtentCalculator.calcCenter(geoJsonExtent); - const rotation = ExtentCalculator.calcRotation(geoJsonExtent); - const resolution = ExtentCalculator.calcResolution(geoJsonExtent, olmap.getSize(), rotation); - - view.setCenter(center); - view.setRotation(rotation); - view.setResolution(customResolution ? customResolution : Math.abs(resolution)); - this.isValidPosition = true; - return true; - }) - ); - } - - public setPosition(position: IImageryMapPosition, map: OLMap = this.mapObject, view: View = map.getView()): Observable { - const { extentPolygon, projectedState, customResolution } = position; - - const someIsNan = !extentPolygon.coordinates[0].every(areCoordinatesNumeric); - if (someIsNan) { - console.warn('ol map setposition failed, can\'t handle invalid coordinates ' + extentPolygon); - return of(true); - } - - const viewProjection = view.getProjection(); - const isProjectedPosition = projectedState && viewProjection.getCode() === projectedState.projection.code; - if (isProjectedPosition) { - const { center, zoom, rotation } = projectedState; - view.setCenter(center); - view.setZoom(zoom); - view.setRotation(rotation); - this.isValidPosition = true; - return of(true); - } else { - const extentFeature = feature(extentPolygon); - return this.fitRotateExtent(map, extentFeature, customResolution); - } - } - - public getPosition(): Observable { - const view = this.mapObject.getView(); - const projection = view.getProjection(); - const projectedState = { - ...(view).getState(), - center: (view).getCenter(), - projection: { code: projection.getCode() } - }; - - return this.calculateRotateExtent(this.mapObject).pipe(map(({ extentPolygon: extentPolygon, layerExtentPolygon: layerExtentPolygon }) => { - if (!extentPolygon) { - return null; - } - - const someIsNaN = !extentPolygon.coordinates[0].every(areCoordinatesNumeric); - if (someIsNaN) { - console.warn('ol map getPosition failed invalid coordinates ', extentPolygon); - return null; - } - - if (this.olConfig.needToUseLayerExtent && this.needToUseLayerExtent(layerExtentPolygon, extentPolygon)) { - extentPolygon = layerExtentPolygon; - } - - return { extentPolygon, projectedState }; - })); - } - - needToUseLayerExtent(layerExtentPolygon: ImageryMapExtentPolygon, extentPolygon: ImageryMapExtentPolygon) { - if (!layerExtentPolygon) { - return false; - } - - // check if 3 out of 4 coordinates inside main layer extent - let cornersInside = 0; - for (let i = 0; i < extentPolygon.coordinates[0].length - 1; i++) { // -1 in order to ignore duplicated coordinate - const isInside = turf.booleanPointInPolygon(turf.point(extentPolygon.coordinates[0][i]), turf.polygon(layerExtentPolygon.coordinates), { ignoreBoundary: false }); - if (isInside) { - cornersInside++; - } - } - return cornersInside < 3; - } - - public setRotation(rotation: number, map: OLMap = this.mapObject, view: View = map.getView()) { - view.setRotation(rotation); - } - - public getRotation(view: View = this.mapObject.getView()): number { - return view.getRotation(); - } - - one2one(): void { - const view = this.mapObject.getView(); - view.setResolution(1) - } - - zoomOut(): void { - const view = this.mapObject.getView(); - const current = view.getZoom(); - view.setZoom(current - 1); - } - - zoomIn(): void { - const view = this.mapObject.getView(); - const current = view.getZoom(); - view.setZoom(current + 1); - } - - flyTo(location: [number, number]) { - const view = this._mapObject.getView(); - view.animate({ - center: location, - duration: 2000 - }); - } - - public addGeojsonLayer(data: GeoJsonObject): void { - let layer: VectorLayer = new VectorLayer({ - source: new Vector({ - features: new olGeoJSON().readFeatures(data) - }) - }); - this.mapObject.addLayer(layer); - } - - getExtraData() { - return this.getMainLayer().getProperties() - } - - getCoordinateFromScreenPixel(screenPixel: { x, y }): [number, number, number] { - const coordinate = this.mapObject.getCoordinateFromPixel([screenPixel.x, screenPixel.y]); - return coordinate; - } - - getHtmlContainer(): HTMLElement { - return this.targetElement; - } - - // BaseImageryMap End - public dispose() { - this.removeAllLayers(); - - if (this._mapObject) { - if (this.subscribers) { - this.subscribers.forEach((subscriber) => subscriber.unsubscribe()); - delete this.subscribers; - } - - this._mapObject.un('moveend', this._moveEndListener); - this._mapObject.un('movestart', this._moveStartListener); - this._mapObject.un('pointerdown', this._pointerDownListener); - this._mapObject.un('pointermove', this._pointerMoveListener); - this._mapObject.un('dblclick', this._dblClickListener); - this._mapObject.un('singleclick', this._singleClickListener); - this.targetElement.removeEventListener('contextmenu', this._rightClickListener); - this._mapObject.setTarget(null); - } - - if (this._backgroundMapObject) { - this._backgroundMapObject.setTarget(null); - } - - this.monitor.dispose(); - } - - private _moveEndListener: () => void = () => { - this.getMoveEndPositionObservable.next(null); - }; - - private _pointerMoveListener: (args) => void = (args) => { - const point = turf.geometry('Point', args.coordinate); - return this.projectionService.projectApproximately(point, this.mapObject).pipe( - take(1), - tap((projectedPoint) => { - if (areCoordinatesNumeric(projectedPoint.coordinates)) { - this.mousePointerMoved.emit({ - long: projectedPoint.coordinates[0], - lat: projectedPoint.coordinates[1], - height: NaN - }); - } else { - this.mousePointerMoved.emit({ long: NaN, lat: NaN, height: NaN }); - } - })) - .subscribe(); - }; - - private _rightClickListener: (args) => void = (event: MouseEvent) => { - let coordinates = this.getCoordinateFromScreenPixel({ x: event.offsetX, y: event.offsetY }); - if (!areCoordinatesNumeric(coordinates)) { - console.warn('no coordinate for pixel'); - return; - } - this.rasiseEvent(event, this.mouseRightClick, coordinates); - }; - - - private _dblClickListener: (event) => void = (event) => { - this.rasiseEvent(event, this.mouseDoubleClick); - }; - - private _singleClickListener: (event) => void = (event) => { - this.rasiseEvent(event, this.mouseSingleClick); - }; - - rasiseEvent(event: any, eventEmitter: EventEmitter, coordinates ?: any) { - const point = turf.geometry('Point', event.coordinate || coordinates); - return this.projectionService.projectAccurately(point, this.mapObject).pipe( - take(1), - tap((projectedPoint) => { - if (areCoordinatesNumeric(projectedPoint.coordinates)) { - eventEmitter.emit({ - worldLocation: projectedPoint, - screenPixel: event.pixel || [event.offsetX, event.offsetY], - originalEvent: event - }); - } else { - eventEmitter.emit({ - worldLocation: undefined, - screenPixel: event.pixel || [event.offsetX, event.offsetY], - originalEvent: event - }); - } - })) - .subscribe(); - } - - private _moveStartListener: () => void = () => { - this.getMoveStartPositionObservable.next(null); - }; - - private _pointerDownListener: (args) => void = () => { - (document.activeElement).blur(); - }; - - // Used by resetView() - private _setMapPositionOrExtent(map: OLMap, position: IImageryMapPosition, extent: ImageryMapExtent, rotation: number): Observable { - if (extent) { - this.fitToExtent(extent, map).subscribe(); - if (rotation) { - this.setRotation(rotation, map); - } - this.isValidPosition = true; - } else if (position) { - return this.setPosition(position, map); - } - - return of(true); - } - - getProjectionCode(): string { - return this._mapObject.getView().getProjection().code_; - } -} diff --git a/src/app/@ansyn/ol/maps/open-layers-map/shared/openlayers-shared.ts b/src/app/@ansyn/ol/maps/open-layers-map/shared/openlayers-shared.ts deleted file mode 100644 index ca2c26ee2c..0000000000 --- a/src/app/@ansyn/ol/maps/open-layers-map/shared/openlayers-shared.ts +++ /dev/null @@ -1,13 +0,0 @@ -import Layer from 'ol/layer/Layer'; -import { ProjectableRaster } from '../models/projectable-raster'; - -export function isRasterLayer(layer): boolean { - return layer instanceof Layer && layer.getSource() instanceof ProjectableRaster; -} - -export function removeWorkers(layer) { - if (isRasterLayer(layer)) { - layer.getSource().destroy(); - } - -} diff --git a/src/app/@ansyn/ol/maps/open-layers-map/utils/utils.ts b/src/app/@ansyn/ol/maps/open-layers-map/utils/utils.ts deleted file mode 100644 index 496aa73956..0000000000 --- a/src/app/@ansyn/ol/maps/open-layers-map/utils/utils.ts +++ /dev/null @@ -1,31 +0,0 @@ -import olPolygon, { fromExtent } from 'ol/geom/Polygon'; -import * as olExtent from 'ol/extent'; -import { Point } from 'geojson'; -import { ImageryMapExtent } from '@ansyn/imagery'; - -// @dynamic -export class Utils { - static BoundingBoxToOLExtent(bbox: Point[]): [number, number, number, number] | any { - const coordinates = <[number, number][]>bbox.map((p) => [p.coordinates[0], p.coordinates[1]]); - return olExtent.boundingExtent(coordinates); - } - - static OLExtentToBoundingBox(extent: [number, number, number, number]): Point[] { - const topLeft = olExtent.getTopLeft(extent); - const bottomRight = olExtent.getBottomRight(extent); - - let boundingBox: Point[] = []; - [topLeft, bottomRight].forEach((p) => { - const coord: Point = { - coordinates: [p[0], p[1], p.length > 2 ? p[2] : 0], - type: 'Point' - }; - boundingBox.push(coord); - }); - return boundingBox; - } - - static extentToOlPolygon(extent: ImageryMapExtent): olPolygon { - return fromExtent(extent); - } -} diff --git a/src/app/@ansyn/ol/maps/openlayers-disabled-map/openlayers-disabled-map.ts b/src/app/@ansyn/ol/maps/openlayers-disabled-map/openlayers-disabled-map.ts deleted file mode 100644 index 5981d982be..0000000000 --- a/src/app/@ansyn/ol/maps/openlayers-disabled-map/openlayers-disabled-map.ts +++ /dev/null @@ -1,183 +0,0 @@ -import { - BaseImageryMap, - IMAGERY_MAIN_LAYER_NAME, - ImageryLayerProperties, - ImageryMap, - IImageryMapPosition -} from '@ansyn/imagery'; -import { GeoJsonObject, Point } from 'geojson'; -import ol_Layer from 'ol/layer/Layer'; -import Map from 'ol/Map'; -import View from 'ol/View'; -import { Observable, of } from 'rxjs'; -import * as olShared from '../open-layers-map/shared/openlayers-shared'; - -export const DisabledOpenLayersMapName = 'disabledOpenLayersMap'; - -@ImageryMap({ - mapType: DisabledOpenLayersMapName -}) -export class OpenLayersDisabledMap extends BaseImageryMap { - mainLayer: ol_Layer; - element: HTMLElement; - - initMap(element: HTMLElement, shadowNorthElement: HTMLElement, shadowDoubleBufferElement: HTMLElement, mainLayer: ol_Layer, position?: IImageryMapPosition): Observable { - this.element = element; - this.mapObject = new Map({ - target: element, - renderer: 'canvas', - controls: [] - }); - this.setMainLayer(mainLayer, position); - return of(true); - } - - addLayerIfNotExist(layer: ol_Layer) { - } - - toggleGroup(groupName: string, newState: boolean) { - } - - getLayers(): ol_Layer[] { - return this.mapObject.getLayers().getArray(); - } - - public getCenter(): Observable { - return of(null); - } - - setCenter(center: Point, animation: boolean): Observable { - return of(true); - } - - - resetView(layer: ol_Layer, position?: IImageryMapPosition): Observable { - this.setMainLayer(layer, position); - return of(true); - } - - setMainLayer(layer: ol_Layer, position?: IImageryMapPosition) { - this.removeMainLayer(); - const view = this.generateNewView(layer, position); - this.mapObject.setView(view); - this.mainLayer = layer; - this.mainLayer.set(ImageryLayerProperties.NAME, IMAGERY_MAIN_LAYER_NAME); - this.mapObject.addLayer(this.mainLayer); - const layerExtent = this.mainLayer.getExtent(); - if (layerExtent) { - this.fitToMainLayerExtent(layerExtent); - } - } - - getMainLayer() { - return this.mainLayer; - } - - generateNewView(layer: ol_Layer, position?: IImageryMapPosition): View { - const newProjection = layer.getSource().getProjection(); - - // for outside only - if (position && position.projectedState && position.projectedState.projection.code === newProjection.getCode()) { - return new View({ - projection: newProjection, - center: position.projectedState.center, - zoom: position.projectedState.zoom, - rotation: position.projectedState.rotation - }); - } - return new View({ - projection: newProjection - }); - } - - fitToMainLayerExtent(extent: [number, number, number, number]) { - const view = this.mapObject.getView(); - view.fit(extent, { - size: this.mapObject.getSize(), - constrainResolution: false - }); - } - - addLayer(layer: ol_Layer): void { - this.mapObject.addLayer(layer); - } - - removeMainLayer() { - if (this.mainLayer) { - this.removeLayer(this.mainLayer); - this.mainLayer = null; - } - } - - removeLayer(layer: ol_Layer): void { - olShared.removeWorkers(layer); - this.mapObject.removeLayer(layer); - this.mapObject.renderSync(); - } - - setPosition(position: IImageryMapPosition): Observable { - return of(true); - } - - getPosition(): Observable { - return of(undefined); - } - - public setRotation(rotation: number, view: View = this.mapObject.getView()) { - view.setRotation(rotation); - } - - updateSize(): void { - this.mapObject.updateSize(); - } - - addGeojsonLayer(data: GeoJsonObject): void { - } - - setPointerMove(enable: boolean) { - } - - getPointerMove() { - return new Observable(); - } - - one2one(): void { - const view = this.mapObject.getView(); - view.setResolution(1) - } - - zoomOut(): void { - const view = this.mapObject.getView(); - const current = view.getZoom(); - view.setZoom(current - 1); - } - - zoomIn(): void { - const view = this.mapObject.getView(); - const current = view.getZoom(); - view.setZoom(current + 1); - } - - getRotation(): number { - return this.mapObject.getView().getRotation(); - } - - getCoordinateFromScreenPixel(screenPixel: { x, y }): [number, number, number] { - return null; - } - - getHtmlContainer(): HTMLElement { - return this.element; - } - - getProjectionCode(): string { - throw new Error("Not implemented yet!"); - } - - dispose() { - if (this.mapObject) { - this.removeMainLayer(); - this.mapObject.setTarget(null); - } - } -} diff --git a/src/app/@ansyn/ol/ng-package.json b/src/app/@ansyn/ol/ng-package.json deleted file mode 100644 index 9ee7716443..0000000000 --- a/src/app/@ansyn/ol/ng-package.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "$schema": "../../../../node_modules/ng-packagr/ng-package.schema.json", - "dest": "../../../../dist/ansyn/ol", - "whitelistedNonPeerDependencies": [ - "auto-subscriptions", - "@turf/turf", - "ol", - "ngx-color-picker", - "angular2-uuid" - ], - "lib": { - "entryFile": "./public_api.ts", - "styleIncludePaths": [ - "../" - ] - } -} diff --git a/src/app/@ansyn/ol/package.json b/src/app/@ansyn/ol/package.json deleted file mode 100644 index b9534fc441..0000000000 --- a/src/app/@ansyn/ol/package.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "name": "@ansyn/ol", - "version": "2.1.1", - "peerDependencies": { - "@angular/core": "~9.1.0", - "@angular/common": "~9.1.0", - "@ansyn/imagery": "2.1.1", - "rxjs": "~6.5.4", - "@ngx-translate/core": "^12.1.2" - }, - "dependencies": { - "auto-subscriptions": "^2.0.5", - "@turf/turf": "^5.1.6", - "ol": "^5.3.0", - "ngx-color-picker": "^9.1.0", - "angular2-uuid": "^1.1.1" - }, - "license": "MIT" -} diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/annotations-context-menu.module.ts b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/annotations-context-menu.module.ts deleted file mode 100644 index 0722e9c741..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/annotations-context-menu.module.ts +++ /dev/null @@ -1,41 +0,0 @@ -import { NgModule } from '@angular/core'; -import { CommonModule } from '@angular/common'; -import { AnnotationContextMenuComponent } from './components/annotation-context-menu/annotation-context-menu.component'; -import { FormsModule } from '@angular/forms'; -import { AnnotationsWeightComponent } from './components/annotations-weight/annotations-weight.component'; -import { AnnotationsColorComponent } from './components/annotations-color/annotations-color.component'; -import { ColorPickerComponent } from './components/color-picker/color-picker.component'; -import { ColorPickerModule } from 'ngx-color-picker'; -import { MatInputModule } from '@angular/material/input'; -import { MatSelectModule } from '@angular/material/select'; -import { TranslateModule } from '@ngx-translate/core'; -import { AnnotationLabelComponent } from './components/annotation-label/annotation-label.component'; -import { AnnotationsContextMenuButtonsComponent } from './components/annotations-context-menu-buttons/annotations-context-menu-buttons.component'; - -@NgModule({ - declarations: [ - AnnotationContextMenuComponent, - AnnotationsWeightComponent, - AnnotationsColorComponent, - ColorPickerComponent, - AnnotationLabelComponent, - AnnotationsContextMenuButtonsComponent - ], - entryComponents: [AnnotationContextMenuComponent], - exports: [ - AnnotationContextMenuComponent, - AnnotationsWeightComponent, - AnnotationsColorComponent, - ColorPickerComponent - ], - imports: [ - CommonModule, - FormsModule, - ColorPickerModule, - MatInputModule, - MatSelectModule, - TranslateModule - ] -}) -export class AnnotationsContextMenuModule { -} diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-context-menu/annotation-context-menu.component.html b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-context-menu/annotation-context-menu.component.html deleted file mode 100644 index 04fb296ba6..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-context-menu/annotation-context-menu.component.html +++ /dev/null @@ -1,19 +0,0 @@ - -
- -
- - -
-
-
-
-
-
diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-context-menu/annotation-context-menu.component.less b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-context-menu/annotation-context-menu.component.less deleted file mode 100644 index d108526e70..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-context-menu/annotation-context-menu.component.less +++ /dev/null @@ -1,37 +0,0 @@ -@import 'ansyn/less/common'; -@import "ansyn/less/colors"; -@import "ansyn/less/z-index-globals"; - -:host { - outline: none; - position: absolute; - display: block; - width: 0; - height: 100%; - top: 0; - left: 0; - z-index: 5; - - div.context-menu-wrapper { - position: absolute; - pointer-events: none; - z-index: @z-index-annotation-cotext-menu; - - div.context-menu { - width: 100%; - height: 100%; - display: flex; - align-items: center; - flex-direction: column; - position: absolute; - outline: 2px dashed #27B2CF; - outline-offset: 10px; - transform-origin: left top; - left: 0; - } - - &.hover { - z-index: @z-index-annotation-cotext-menu-hover; - } - } -} diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-context-menu/annotation-context-menu.component.spec.ts b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-context-menu/annotation-context-menu.component.spec.ts deleted file mode 100644 index cff2f794c2..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-context-menu/annotation-context-menu.component.spec.ts +++ /dev/null @@ -1,44 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { AnnotationContextMenuComponent } from './annotation-context-menu.component'; -import { EventEmitter } from '@angular/core'; -import { ImageryCommunicatorService } from '@ansyn/imagery'; -import { MockComponent } from '../../../../../../ansyn/modules/core/test/mock-component'; - -describe('AnnotationContextMenuComponent', () => { - let component: AnnotationContextMenuComponent; - let fixture: ComponentFixture; - const mockAnnotationsContextMenuButtonsComponent = MockComponent({ - selector: 'ansyn-annotations-context-menu-buttons', - inputs: ['annotations', 'featureId', 'selectedTab'] - }); - - beforeEach(() => { - TestBed.configureTestingModule({ - providers: [ - ImageryCommunicatorService - ], - declarations: [ - AnnotationContextMenuComponent, - mockAnnotationsContextMenuButtonsComponent - ] - }).compileComponents(); - }); - - beforeEach(() => { - fixture = TestBed.createComponent(AnnotationContextMenuComponent); - component = fixture.componentInstance; - component.mapId = 'mapId'; - spyOn(component, 'calcBoundingRect').and.returnValue({ top: `0px`, left: `0px`, width: `0px`, height: `0px` }); - spyOn(component, 'getFeatureProps').and.returnValue({}); - component.annotations = { - idToEntity: new Map(), - getJsonFeatureById: () => ({ properties: {} }) - }; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); - -}); diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-context-menu/annotation-context-menu.component.ts b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-context-menu/annotation-context-menu.component.ts deleted file mode 100644 index eca368b3bd..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-context-menu/annotation-context-menu.component.ts +++ /dev/null @@ -1,151 +0,0 @@ -import { Component, ElementRef, HostBinding, HostListener, Input, OnDestroy, OnInit } from '@angular/core'; -import { CommunicatorEntity, ImageryCommunicatorService, IMapInstanceChanged } from '@ansyn/imagery'; -import { filter, take, tap } from 'rxjs/operators'; -import { AnnotationsVisualizer } from '../../../annotations.visualizer'; -import { IFeatureIdentifier } from '../../../../entities-visualizer'; - -export enum AnnotationsContextmenuTabs { - Colors, - Weight, - Label -} - -@Component({ - selector: 'ansyn-annotations-context-menu', - templateUrl: './annotation-context-menu.component.html', - styleUrls: ['./annotation-context-menu.component.less'] -}) -export class AnnotationContextMenuComponent implements OnInit, OnDestroy { - annotations: AnnotationsVisualizer[]; - communicator: CommunicatorEntity; - selectedTab: { [id: string]: AnnotationsContextmenuTabs } = {}; - - selection: string[]; - hoverFeatureId: string; - - @Input() mapId: string; - @HostBinding('attr.tabindex') tabindex = 0; - - subscribers = []; - annotationsSubscribers = []; - - @HostListener('contextmenu', ['$event']) contextmenu($event: MouseEvent) { - $event.preventDefault(); - } - - constructor(public host: ElementRef, protected communicators: ImageryCommunicatorService) { - } - - calcBoundingRect(id) { - let boundingRect; - for (let i = 0; i < this.annotations.length; i++) { - const entity = this.annotations[i].idToEntity.get(id); - if (entity) { - boundingRect = this.annotations[i].getFeatureBoundingRect(entity.feature); - break; - } - } - return boundingRect; - } - - getFeatureProps(id) { - const entity = this.getEntitiy(id); - if (entity) { - const { originalEntity: { featureJson: { properties } } } = entity; - return properties; - } - return undefined; - } - - getAnnotationVisById(featureId) { - for (let i = 0; i < this.annotations.length; i++) { - if (this.annotations[i].idToEntity.has(featureId)) { - return this.annotations[i]; - } - } - return undefined; - } - - getEntitiy(featureId): IFeatureIdentifier { - if (this.annotations && this.annotations.length > 0) { - for (let i = 0; i < this.annotations.length; i++) { - if (this.annotations[i].idToEntity.has(featureId)) { - return this.annotations[i].idToEntity.get(featureId); - } - } - } - return undefined - } - - initData() { - this.selection = []; - this.hoverFeatureId = ''; - } - - ngOnInit() { - this.communicators.instanceCreated.pipe( - filter(({ id }) => id === this.mapId), - tap(() => { - this.communicator = this.communicators.provide(this.mapId); - this.annotations = this.getAnnotationsVisualiers(); - if (this.annotations && this.annotations.length > 0) { - this.subscribeVisualizerEvents(); - } else { - this.unSubscribeVisualizerEvents(); - } - - this.subscribers.push(this.communicator.mapInstanceChanged.subscribe((mapInstanceChanged: IMapInstanceChanged) => { - this.unSubscribeVisualizerEvents(); - this.initData(); - this.annotations = this.getAnnotationsVisualiers(); - if (this.annotations && this.annotations.length > 0) { - this.subscribeVisualizerEvents(); - } - })); - }), - take(1) - ).subscribe(); - } - - getAnnotationsVisualiers(): AnnotationsVisualizer[] { - const annotations = this.communicator.plugins.filter((plugin) => plugin instanceof AnnotationsVisualizer); - return annotations; - } - - subscribeVisualizerEvents() { - this.annotations.forEach((annotationVis) => { - this.annotationsSubscribers.push( - annotationVis.events.onHover.subscribe((hoverFeatureId: string) => { - this.hoverFeatureId = hoverFeatureId; - }), - annotationVis.events.onSelect.subscribe((selected: string[]) => { - this.selection = selected; - this.selectedTab = this.selection.reduce((prev, id) => ({ - ...prev, - [id]: this.selectedTab[id] - }), {}); - } - ) - ); - }); - } - - unSubscribeVisualizerEvents() { - if (this.annotationsSubscribers) { - this.annotationsSubscribers.forEach((subscriber) => subscriber.unsubscribe()); - this.annotationsSubscribers = []; - } - } - - ngOnDestroy(): void { - if (this.subscribers) { - this.subscribers.forEach((subscriber) => subscriber.unsubscribe()); - delete this.subscribers; - } - this.unSubscribeVisualizerEvents(); - } - - getType(): string { - return ''; - } -} diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-context-menu/icons-svg.ts b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-context-menu/icons-svg.ts deleted file mode 100644 index 3e4aa2582b..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-context-menu/icons-svg.ts +++ /dev/null @@ -1,15 +0,0 @@ -export const editModeSvg = "m21.7519,11.8105l-2.66813,-3.27l-8.22673,10.0825l2.66813,3.27l8.22673,-10.0825zm1.24513,-1.5805c0.57809,-0.872 0.53363,-2.2345 -0.13341,-3.052c-0.7115,-0.8175 -1.77875,-0.872 -2.53472,-0.1635l2.66813,3.2155zm-10.80593,13.1345l-2.53472,-3.161l-0.31128,3.488l2.846,-0.327zm6.71479,-17.7125c1.423,-1.744 3.77985,-1.744 5.20285,0s1.423,4.578 0,6.322l-10.9838,13.4615l-5.78095,0.7085l0.62256,-7.085l10.93933,-13.407z"; - -export const measureSvg = "M21.888 15.328l1.888-1.888-2.336-2.368c-0.256-0.256-0.256-0.672 0-0.928s0.672-0.256 0.928 0l2.368 2.336 1.888-1.888-4.704-4.704-16.032 16.032 4.704 4.704 1.888-1.888-2.368-2.336c-0.256-0.256-0.256-0.704 0-0.96s0.704-0.256 0.96 0l2.336 2.368 1.888-1.888-1.408-1.408c-0.256-0.256-0.256-0.672 0-0.96 0.256-0.256 0.672-0.256 0.96 0l1.408 1.44 1.888-1.888-2.368-2.368c-0.256-0.256-0.256-0.672 0-0.928 0.256-0.288 0.672-0.288 0.928 0l2.368 2.336 1.888-1.888-1.408-1.408c-0.256-0.256-0.256-0.672 0-0.928s0.672-0.256 0.928 0l1.408 1.408zM21.44 4.48c0.256-0.256 0.672-0.256 0.96 0l5.632 5.632c0.256 0.288 0.256 0.704 0 0.96l-16.96 16.96c-0.256 0.256-0.672 0.256-0.928 0l-5.664-5.664c-0.256-0.256-0.256-0.672 0-0.928l16.96-16.96z"; - -export const labelSvg = "M16.608 6.912l7.68 0.16c0.384 0.032 0.672 0.32 0.672 0.672l0.16 7.68c0 0.192-0.064 0.384-0.192 0.512l-9.44 9.408c-0.256 0.256-0.672 0.256-0.928 0l-7.872-7.84c-0.256-0.256-0.256-0.704 0-0.96l9.44-9.408c0.128-0.128 0.288-0.224 0.48-0.224zM16.864 8.256l-8.768 8.768 6.912 6.912 8.768-8.768-0.128-6.752-6.784-0.16zM17.696 11.52c0.768-0.768 2.048-0.768 2.816 0 0.8 0.768 0.8 2.048 0 2.816-0.768 0.8-2.048 0.8-2.816 0-0.8-0.768-0.8-2.048 0-2.816zM19.584 12.48c-0.256-0.288-0.704-0.288-0.96 0-0.256 0.256-0.256 0.672 0 0.928s0.704 0.256 0.96 0c0.256-0.256 0.256-0.672 0-0.928z"; - -export const editWeightSvg = "M5.344 21.632v-1.312h21.312v1.312h-21.312zM5.344 24.608v-0.64h21.312v0.64h-21.312zM5.344 18.304v-1.984h21.312v1.984h-21.312zM5.344 13.984v-2.656h21.312v2.656h-21.312zM5.344 9.344v-4h21.312v4h-21.312z"; - -export const editColorSvg = "M24.352 5.344c-0.64 0-1.216 0.224-1.632 0.704l-9.696 10.048c0 0 0 0 0 0s0 0 0 0l-2.144 2.208c-1.792 0.096-4.832 1.248-5.248 5.216-0.064 0.16-0.352 0.896-0.992 0.992-0.448 0.096-0.64 0.448-0.64 0.736 0.032 0.896 1.792 1.248 2.528 1.344 0.256 0.032 0.64 0.064 1.088 0.064 1.92 0 5.184-0.672 6.496-4.928l11.904-12.352c0.416-0.448 0.672-1.056 0.64-1.696 0-0.64-0.224-1.216-0.672-1.664s-1.024-0.672-1.632-0.672zM13.504 17.44l1.472 1.536-1.44 1.472-1.472-1.504 1.44-1.504zM9.568 25.088c-1.312 0.416-2.656 0.32-3.52 0.096 0.576-0.576 0.8-1.312 0.8-1.376 0.032-0.032 0.032-0.064 0.032-0.096 0.352-3.552 3.168-4.032 4.032-4.096l1.92 1.92c-0.608 1.824-1.696 3.040-3.264 3.552zM25.12 8.448l-9.248 9.6-1.504-1.504 9.248-9.6c0.384-0.416 1.088-0.416 1.472 0 0.192 0.192 0.32 0.448 0.32 0.736s-0.096 0.576-0.288 0.768z"; - -export const deleteSvg = "M12 11.296h2.656c0.384 0 0.672-0.288 0.672-0.64v-0.672h1.344v-0.64h-1.344v0.64h1.344v0.672c0 0.352 0.288 0.64 0.672 0.64h-5.344v10.688h8v-10.688h-8zM20.672 9.984v0h1.344c0.864 0 0.864 1.312 0 1.312h-0.672v11.36c0 0.352-0.32 0.64-0.672 0.64h-9.344c-0.352 0-0.672-0.288-0.672-0.64v-11.36h-0.64v-1.312h1.312c-0.352 0-0.672 0.288-0.672 0.672v0.64h-0.64c-0.896 0-0.896-1.312 0-1.312h4v-1.312c0-0.384 0.288-0.672 0.64-0.672h2.688c0.352 0 0.672 0.288 0.672 0.672v1.312h4v1.312h-0.672v-0.64c0-0.384-0.32-0.672-0.672-0.672zM14.016 13.984c0-0.352 0.288-0.64 0.64-0.64 0.384 0 0.672 0.288 0.672 0.64v5.344c0 0.384-0.288 0.672-0.672 0.672-0.352 0-0.64-0.288-0.64-0.672v-5.344zM18.016 19.328c0 0.384-0.32 0.672-0.672 0.672-0.384 0-0.672-0.288-0.672-0.672v-5.344c0-0.352 0.288-0.64 0.672-0.64 0.352 0 0.672 0.288 0.672 0.64v5.344z"; - -export const areaSvg = [ "M28.339 24.463l-2.087-2.087c-0.352-0.352-0.895-0.352-1.247 0s-0.352 0.894 0 1.247l0.596 0.596h-17.512v-17.263l0.596 0.596c0.163 0.163 0.407 0.271 0.623 0.271s0.461-0.081 0.623-0.271c0.352-0.352 0.352-0.894 0-1.247l-2.087-2.087c-0.325-0.325-0.949-0.325-1.274 0l-2.087 2.087c-0.352 0.352-0.352 0.894 0 1.247s0.895 0.352 1.247 0l0.596-0.596v19.052h19.274l-0.596 0.596c-0.352 0.352-0.352 0.894 0 1.247 0.163 0.163 0.407 0.271 0.623 0.271s0.461-0.081 0.623-0.271l2.087-2.087c0.163-0.163 0.271-0.434 0.271-0.65 0-0.244-0.081-0.488-0.271-0.65z", - "M11.846 21.61h11.845c0.488 0 0.895-0.407 0.895-0.895v-11.82c0-0.488-0.407-0.895-0.895-0.895h-11.845c-0.488 0-0.895 0.407-0.895 0.895v11.848c0 0.461 0.407 0.868 0.895 0.868zM12.74 9.762h10.056v10.058h-10.056v-10.058z" -]; diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-label/annotation-label.component.html b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-label/annotation-label.component.html deleted file mode 100644 index aed90cb035..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-label/annotation-label.component.html +++ /dev/null @@ -1,30 +0,0 @@ -
- -
- - - {{size}} - - - - - -
-
diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-label/annotation-label.component.less b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-label/annotation-label.component.less deleted file mode 100644 index 0c770b6382..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-label/annotation-label.component.less +++ /dev/null @@ -1,99 +0,0 @@ -@import 'ansyn/less/colors'; -@import "ansyn/less/globals"; - -:host { - font-family: @app-font; - font-size: 14px; - - .icon-drag-annotations:before { - content: 'D'; - } - - // '\e827'; } /* 'î §' */ - - div.annotation-label-form { - button.drag-annotation { - font-size: 20px; - position: absolute; - top: 35px; - right: 6px; - background-color: transparent; - z-index: 2; - color: white; - border: none; - outline: none; - padding: 0; - - &:disabled { - opacity: 0.5; - } - - i.active { - color: @application-primary-color; - } - } - - span.annotation-label { - height: 32px; - position: absolute; - font-size: 17px; - color: white; - text-shadow: -1px 0 black, 0 1px black, 1px 0 black, 0 -1px black; - top: calc(~'100% + 20px'); - } - - form.annotation-label-edit { - background: @background-color-3; - width: 140px; - height: 120px; - position: absolute; - top: 100%; - z-index: 1; - display: flex; - flex-direction: column; - justify-content: center; - align-items: center; - padding: 5px 15px; - box-sizing: border-box; - - mat-form-field.label-form-field { - width: 100% - } - - mat-form-field.label-font-size { - width: 100%; - } - } - - @white-inactive: rgba(255, 255, 255, 0.8); - - .mat-form-field { - input { - caret-color: white; - color: white; - } - - /deep/ .mat-select-arrow { - color: white; - } - - /deep/ .mat-form-field-label, - /deep/ .mat-select-value-text { - color: @white-inactive !important; - } - - /deep/ .mat-form-field-underline { - background-color: @white-inactive !important; - } - - /deep/ .mat-focused .mat-form-field-label { - color: white !important; - } - - /deep/ .mat-form-field-ripple { - background-color: white !important; - } - } - } - -} diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-label/annotation-label.component.spec.ts b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-label/annotation-label.component.spec.ts deleted file mode 100644 index ebb6ac8dff..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-label/annotation-label.component.spec.ts +++ /dev/null @@ -1,32 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; -import { MatInputModule } from '@angular/material/input'; -import { MatSelectModule } from '@angular/material/select'; - -import { AnnotationLabelComponent } from './annotation-label.component'; -import { TranslateModule } from '@ngx-translate/core'; -import { FormsModule } from '@angular/forms'; -import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; - -describe('AnnotationLabelComponent', () => { - let component: AnnotationLabelComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [AnnotationLabelComponent], - imports: [BrowserAnimationsModule, FormsModule, MatInputModule, MatSelectModule, TranslateModule.forRoot()] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(AnnotationLabelComponent); - component = fixture.componentInstance; - component.label = { text: 'label' }; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-label/annotation-label.component.ts b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-label/annotation-label.component.ts deleted file mode 100644 index e39f55e7ab..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotation-label/annotation-label.component.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core'; - -@Component({ - selector: 'ansyn-annotation-label', - templateUrl: './annotation-label.component.html', - styleUrls: ['./annotation-label.component.less'] -}) -export class AnnotationLabelComponent implements OnInit { - optionalSize = [10, 11, 12, 14, 16, 18, 20, 22, 24, 26, 28, 36, 48, 72]; - @Output() onChangeText = new EventEmitter(); - @Output() onChangeSize = new EventEmitter(); - @Output() onTranslateClick = new EventEmitter(); - @Input() label; - @Input() labelSize: number; - @Input() translateOn: boolean; - - constructor() { - } - - ngOnInit() { - } -} diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-color/annotations-color.component.html b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-color/annotations-color.component.html deleted file mode 100644 index f952451eb9..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-color/annotations-color.component.html +++ /dev/null @@ -1,23 +0,0 @@ -
- - - - - - - -
diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-color/annotations-color.component.less b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-color/annotations-color.component.less deleted file mode 100644 index 335e94deb3..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-color/annotations-color.component.less +++ /dev/null @@ -1,25 +0,0 @@ -@import "ansyn/less/colors"; - -div.list { - display: flex; - flex-direction: column; - position: absolute; - padding: 0; - outline: none; - margin: 0; - text-align: center; - transition: height 0.3s, transform 0.2s; - background: @background-color-3; - - .item { - cursor: pointer; - - &:hover, &.selected { - background-color: #297f9b; - } - } - - &.color-selection-expand.open { - visibility: visible; - } -} diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-color/annotations-color.component.mock.ts b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-color/annotations-color.component.mock.ts deleted file mode 100644 index 6b2319e582..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-color/annotations-color.component.mock.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { MockComponent } from '../../../../../../ansyn/modules/core/test/mock-component'; - -export const mockAnnotationsColorComponent = MockComponent({ - selector: 'ansyn-annotations-color', - inputs: ['show', 'properties', 'fillModeActive', 'strokeModeActive'], - outputs: ['colorChange', 'activeChange'] -}); diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-color/annotations-color.component.spec.ts b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-color/annotations-color.component.spec.ts deleted file mode 100644 index 6100bf83b4..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-color/annotations-color.component.spec.ts +++ /dev/null @@ -1,40 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; -import { TranslateModule } from '@ngx-translate/core'; -import { ColorPickerModule } from 'ngx-color-picker'; -import { ColorPickerComponent } from '../color-picker/color-picker.component'; -import { AnnotationsColorComponent } from './annotations-color.component'; -import { mockStayInImageryService } from '../../../../../../imagery/stay-in-imagery-service/stay-in-imagery.service.mock'; - -describe('AnnotationsColorComponent', () => { - let component: AnnotationsColorComponent; - let fixture: ComponentFixture; - - const myComponent = AnnotationsColorComponent; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ - AnnotationsColorComponent, - ColorPickerComponent - ], - imports: [ColorPickerModule, - TranslateModule.forRoot()], - }) - .overrideComponent(myComponent, { - set: { - providers: [mockStayInImageryService] - } - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(AnnotationsColorComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-color/annotations-color.component.ts b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-color/annotations-color.component.ts deleted file mode 100644 index 7875b1a39b..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-color/annotations-color.component.ts +++ /dev/null @@ -1,43 +0,0 @@ -import { AfterViewInit, Component, ElementRef, EventEmitter, Input, Output } from '@angular/core'; -import { StayInImageryService } from '@ansyn/imagery'; - -export interface IAnnotationColorProps { - fill: string; - stroke: string; - 'stroke-opacity': number; - 'fill-opacity': number; -} - -@Component({ - selector: 'ansyn-annotations-color', - templateUrl: './annotations-color.component.html', - styleUrls: ['./annotations-color.component.less'], - providers: [StayInImageryService] -}) -export class AnnotationsColorComponent implements AfterViewInit { - @Input() show: boolean; - @Input() strokeModeActive = true; - @Input() fillModeActive = true; - @Input() properties: IAnnotationColorProps; - @Output() activeChange = new EventEmitter(); - @Output() colorChange = new EventEmitter(); - - constructor( - protected myElement: ElementRef, - protected stayInImageryService: StayInImageryService - ) { - } - - ngAfterViewInit(): void { - this.stayInImageryService.init(this.getElement.bind(this)); - } - - getElement() { - const elements = (this.myElement.nativeElement as Element).getElementsByClassName('list'); - return elements && elements[0]; - } - - getStyle() { - return { 'transform': `translate(-${ this.stayInImageryService.moveLeft }px, ${ this.stayInImageryService.moveDown }px)` }; - } -} diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-context-menu-buttons/annotations-context-menu-buttons.component.html b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-context-menu-buttons/annotations-context-menu-buttons.component.html deleted file mode 100644 index 254391e199..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-context-menu-buttons/annotations-context-menu-buttons.component.html +++ /dev/null @@ -1,109 +0,0 @@ -
- -
- -
- -
- -
- -
- -
- - - -
- -
-

- - - -

-
- -
-

- - -

-
- -
- -
diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-context-menu-buttons/annotations-context-menu-buttons.component.less b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-context-menu-buttons/annotations-context-menu-buttons.component.less deleted file mode 100644 index 16e30beba2..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-context-menu-buttons/annotations-context-menu-buttons.component.less +++ /dev/null @@ -1,107 +0,0 @@ -@import "ansyn/less/colors"; -@import "ansyn/less/z-index-globals"; - -:host { - position: absolute; - outline: none; - pointer-events: all; - border: 1px solid white; - box-sizing: border-box; - background-color: @background-color-3; - color: white; - display: flex; - align-items: center; - right: 0; - top: 0; - margin: 0; - padding: 2px; - transform: translate(calc(~'100% + 15px'), -12px); - transition: right 0.2s, top 0.2s; - z-index: @z-index-annotation-cotext-menu-buttons; - - button { - background-color: @background-color-3; - color: white; - border: none; - outline: none; - padding: 0; - display: flex; - justify-content: center; - align-items: center; - font-size: 28px; - - &.active, &:hover { - background-color: @application-primary-color; - } - - &.disabled { - opacity: 0.6; - pointer-events: none; - } - } - - div.expanded-selection { - position: relative; - - button.expand { - background-color: #297f9b; - } - - div.list { - display: flex; - flex-direction: column; - position: absolute; - top: 35px; - left: 0; - overflow: hidden; - padding: 0; - margin: 0; - text-align: center; - transition: height 0.3s; - background: @background-color-3; - - .item { - cursor: pointer; - - &:hover, &.selected { - background-color: #297f9b; - } - } - - &.line-width-expand { - width: 100%; - outline: none; - } - - &.color-selection-expand.open { - visibility: visible; - } - } - } - - p { - margin: 0; - } - - svg { - width: 32px; - height: 32px; - fill: #ffffff; - } - - i { - font-style: normal; - display: inherit; - } - -} - -// for chrome 44 -@supports not (display: grid) { - div.color { - // Prevent a stacking context (z-index) problem. - // The delete button (which got position relative in chrome 44) - // appeared over the color window. - z-index: @z-index-annotation-context-menu-color-button; - } -} diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-context-menu-buttons/annotations-context-menu-buttons.component.spec.ts b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-context-menu-buttons/annotations-context-menu-buttons.component.spec.ts deleted file mode 100644 index 0b75a2f978..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-context-menu-buttons/annotations-context-menu-buttons.component.spec.ts +++ /dev/null @@ -1,71 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { AnnotationsContextMenuButtonsComponent } from './annotations-context-menu-buttons.component'; -import { DebugElement } from '@angular/core'; -import { By } from '@angular/platform-browser'; -import { TranslateModule } from '@ngx-translate/core'; -import { MockComponent } from '../../../../../../ansyn/modules/core/test/mock-component'; -import { mockStayInImageryService } from '../../../../../../imagery/stay-in-imagery-service/stay-in-imagery.service.mock'; -import { mockAnnotationsColorComponent } from '../annotations-color/annotations-color.component.mock'; - -describe('AnnotationsContextMenuButtonsComponent', () => { - let component: AnnotationsContextMenuButtonsComponent; - let fixture: ComponentFixture; - - const mockAnnotationLabelComponent = MockComponent({ - selector: 'ansyn-annotation-label', - inputs: ['label', 'labelSize', 'translateOn'], - outputs: ['onChangeText', 'onChangeSize', 'onTranslateClick'] - }); - - const mockAnnotationsWeightComponent = MockComponent({ - selector: 'ansyn-annotations-weight', - inputs: ['show', 'properties'], - outputs: ['selectLineStyle'] - }); - - const myComponent = AnnotationsContextMenuButtonsComponent; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ - myComponent, - mockAnnotationLabelComponent, - mockAnnotationsWeightComponent, - mockAnnotationsColorComponent - ], - imports: [ - TranslateModule.forRoot() - ] - }) - .overrideComponent(myComponent, { - set: { - providers: [mockStayInImageryService] - } - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(AnnotationsContextMenuButtonsComponent); - component = fixture.componentInstance; - component.featureId = 'featureId'; - component.annotations = { - idToEntity: new Map([['featureId', { originalEntity: { featureJson: { properties: {} } } }]]), - getJsonFeatureById: () => ({ properties: {} }) - }; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); - - it('click on remove feature button', () => { - spyOn(component, 'removeFeature'); - const de: DebugElement = fixture.debugElement.query(By.css('button.removeFeature')); - de.triggerEventHandler('click', {}); - expect(component.removeFeature).toHaveBeenCalled(); - }); - -}); diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-context-menu-buttons/annotations-context-menu-buttons.component.ts b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-context-menu-buttons/annotations-context-menu-buttons.component.ts deleted file mode 100644 index 52d7b4cd60..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-context-menu-buttons/annotations-context-menu-buttons.component.ts +++ /dev/null @@ -1,139 +0,0 @@ -import { AfterViewInit, Component, ElementRef, HostBinding, Input, OnInit } from '@angular/core'; -import { AnnotationsVisualizer } from '../../../annotations.visualizer'; -import { AnnotationsContextmenuTabs } from '../annotation-context-menu/annotation-context-menu.component'; -import * as SVG from '../annotation-context-menu/icons-svg'; -import { IStyleWeight } from '../annotations-weight/annotations-weight.component'; -import { IVisualizerEntity, StayInImageryService } from '@ansyn/imagery'; -import { AnnotationMode } from '../../../annotations.model'; - -interface IFeatureProperties extends IVisualizerEntity { - mode: AnnotationMode -} - -@Component({ - selector: 'ansyn-annotations-context-menu-buttons', - templateUrl: './annotations-context-menu-buttons.component.html', - styleUrls: ['./annotations-context-menu-buttons.component.less'], - providers: [StayInImageryService] -}) -export class AnnotationsContextMenuButtonsComponent implements OnInit, AfterViewInit { - @Input() annotations: AnnotationsVisualizer; - @Input() featureId: string; - @Input() selectedTab: { [id: string]: AnnotationsContextmenuTabs } = {}; - - @HostBinding('style.right.px') - get right() { - return this.stayInImageryService.moveLeft; - } - - @HostBinding('style.top.px') - get top() { - return this.stayInImageryService.moveDown; - } - - SVGICON = SVG; - Tabs = AnnotationsContextmenuTabs; - - isFeatureNonEditable: boolean; - featureProps: IFeatureProperties; - - constructor( - protected myElement: ElementRef, - protected stayInImageryService: StayInImageryService - ) { - } - - ngOnInit() { - const feature = this.annotations.getJsonFeatureById(this.featureId); - this.isFeatureNonEditable = feature && feature.properties.isNonEditable; - this.featureProps = this.getFeatureProps() as IFeatureProperties; - } - - ngAfterViewInit(): void { - this.stayInImageryService.init(this.myElement.nativeElement); - } - - toggleEditMode() { - this.selectedTab = { ...this.selectedTab, [this.featureId]: null }; - const currentFeatureId = this.annotations.currentAnnotationEdit && this.annotations.currentAnnotationEdit.originalFeature; - const enable = !(currentFeatureId && currentFeatureId.getId() === this.featureId); - this.annotations.setEditAnnotationMode(this.featureId, enable); - } - - getFeatureProps() { - const { originalEntity: { featureJson: { properties } } } = this.annotations.idToEntity.get(this.featureId); - return properties; - } - - toggleMeasures() { - const { showMeasures } = this.getFeatureProps(); - this.annotations.updateFeature(this.featureId, { showMeasures: !showMeasures }); - } - - toggleArea() { - const { showArea } = this.getFeatureProps(); - this.annotations.updateFeature(this.featureId, { showArea: !showArea }); - } - - selectTab(tab: AnnotationsContextmenuTabs) { - this.selectedTab = { - ...this.selectedTab, - [this.featureId]: this.selectedTab[this.featureId] === tab ? null : tab - }; - this.annotations.clearAnnotationEditMode(); - } - - updateLabel(text) { - this.annotations.updateFeature(this.featureId, { label: { text } }); - } - - updateLabelSize(labelSize) { - this.annotations.updateFeature(this.featureId, { labelSize }); - } - - selectLineWidth(s: IStyleWeight, featureId: string) { - const { style } = this.getFeatureProps(); - const updateStyle = { - ...style, - initial: { - ...style.initial, - 'stroke-width': s.width, - 'stroke-dasharray': s.dash - } - }; - - this.annotations.updateFeature(featureId, { style: updateStyle }); - } - - colorChange($event: [{ label: 'stroke' | 'fill' | 'marker-color', event: string }]) { - const { style } = this.getFeatureProps(); - const updatedStyle = { - ...style, - initial: { - ...style.initial, - } - }; - $event.forEach((entity) => { - updatedStyle.initial[entity.label] = entity.event; - }); - this.annotations.updateFeature(this.featureId, { style: updatedStyle }); - } - - activeChange($event: { label: 'stroke' | 'fill', event: string }) { - let opacity = { stroke: 1, fill: 0.4 }; - const { style } = this.getFeatureProps(); - const updatedStyle = { - ...style, - initial: { - ...style.initial, - [`${ $event.label }-opacity`]: $event.event ? opacity[$event.label] : 0 - } - }; - this.annotations.updateFeature(this.featureId, { style: updatedStyle }); - } - - removeFeature() { - this.annotations.removeFeature(this.featureId); - } - -} diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-weight/annotations-weight.component.html b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-weight/annotations-weight.component.html deleted file mode 100644 index 486a725058..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-weight/annotations-weight.component.html +++ /dev/null @@ -1,13 +0,0 @@ -
-
- - - -
-
diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-weight/annotations-weight.component.less b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-weight/annotations-weight.component.less deleted file mode 100644 index db6fbaee99..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-weight/annotations-weight.component.less +++ /dev/null @@ -1,26 +0,0 @@ -@import "ansyn/less/colors"; - -div.list { - display: flex; - flex-direction: column; - position: absolute; - overflow: hidden; - padding: 0; - margin: 0; - text-align: center; - transition: height 0.3s; - background: @background-color-3; - - .item { - cursor: pointer; - - &:hover, &.selected { - background-color: #297f9b; - } - } - - &.line-width-expand { - width: 100%; - outline: none; - } -} diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-weight/annotations-weight.component.spec.ts b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-weight/annotations-weight.component.spec.ts deleted file mode 100644 index 28f9138baf..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-weight/annotations-weight.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { AnnotationsWeightComponent } from './annotations-weight.component'; - -describe('AnnotationsWeightComponent', () => { - let component: AnnotationsWeightComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [AnnotationsWeightComponent] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(AnnotationsWeightComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-weight/annotations-weight.component.ts b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-weight/annotations-weight.component.ts deleted file mode 100644 index 64f357abc7..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/annotations-weight/annotations-weight.component.ts +++ /dev/null @@ -1,89 +0,0 @@ -import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core'; -import { IStroke } from '@ansyn/imagery'; - -export interface IStyleWeight { - name: string; - width: number; - dash: number; - preview?: number; -} -export const StyleDictionary: IStyleWeight[] = [ - { - name: 'solid1', - width: 1, - dash: 0 - }, - { - name: 'solid2', - width: 2, - dash: 0 - }, - { - name: 'solid3', - width: 3, - dash: 0 - }, - { - name: 'solid4', - width: 4, - dash: 0 - }, - { - name: 'solid5', - width: 5, - dash: 0 - }, - { - name: 'solid6', - width: 6, - dash: 0 - }, - { - name: 'solid7', - width: 7, - dash: 0 - }, - { - name: 'dash1', - width: 3, - dash: 1, - preview: 2 - }, - { - name: 'dash2', - width: 3, - dash: 25, - preview: 5 - } -]; - -@Component({ - selector: 'ansyn-annotations-weight', - templateUrl: './annotations-weight.component.html', - styleUrls: ['./annotations-weight.component.less'] -}) -export class AnnotationsWeightComponent implements OnInit { - @Input() show; - @Input() properties: IStroke; - @Output() selectLineStyle = new EventEmitter(); - styleList: IStyleWeight[] = StyleDictionary; - - constructor() { - } - - ngOnInit() { - } - - isSelect(style: IStyleWeight) { - return style.width === this.properties['stroke-width'] && style.dash === this.properties['stroke-dasharray']; - } - - getWidth(style: IStyleWeight) { - return style.preview ? style.preview : style.width; - } - - - getDashLine(style: IStyleWeight) { - return style.preview ? style.preview : style.dash % 4; - } -} diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/color-picker/color-picker.component.html b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/color-picker/color-picker.component.html deleted file mode 100644 index d37fe3f132..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/color-picker/color-picker.component.html +++ /dev/null @@ -1,37 +0,0 @@ -
- - - - - - -
diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/color-picker/color-picker.component.less b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/color-picker/color-picker.component.less deleted file mode 100644 index ccf7319ef9..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/color-picker/color-picker.component.less +++ /dev/null @@ -1,85 +0,0 @@ -svg { - width: 20px; - height: 20px; - fill: #ffffff; -} - -i { - font-style: normal; - display: flex; -} - -.color-picker-item { - font-size: 14px; - color: white; - display: flex; - align-items: center; - padding: 3px 8px; - - input:disabled + label { - opacity: .4; - cursor: default; - } - - label { - width: 100%; - height: 100%; - display: flex; - justify-content: space-between; - align-items: center; - box-sizing: border-box; - cursor: pointer; - font-size: 14px; - - *:not(:last-child) { - margin-right: 10px; - } - - div.text { - flex: 1; - font-size: 14px; - text-align: left; - } - - div.color { - width: 10px; - height: 10px; - box-shadow: 0 0 1px 1px #297f9b; - } - } - - button.no-fill { - border: none; - background: transparent; - color: white; - font-size: 20px; - padding-left: 5px; - box-sizing: border-box; - opacity: .9; - outline: none; - - &.disabled { - opacity: .5; - cursor: unset; - } - - &:hover:not(.active):not(.disabled) { - opacity: 1; - } - } - - input { - display: block; - visibility: hidden; - width: 0; - height: 0; - padding: 0; - margin: 0; - border: none; - } - - /deep/ .color-picker { - transition: transform 0.2s; - } - -} diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/color-picker/color-picker.component.spec.ts b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/color-picker/color-picker.component.spec.ts deleted file mode 100644 index c38ede7cb3..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/color-picker/color-picker.component.spec.ts +++ /dev/null @@ -1,35 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { ColorPickerComponent } from './color-picker.component'; -import { ColorPickerModule } from 'ngx-color-picker'; -import { mockStayInImageryService } from '../../../../../../imagery/stay-in-imagery-service/stay-in-imagery.service.mock'; - -describe('ColorPickerComponent', () => { - let component: ColorPickerComponent; - let fixture: ComponentFixture; - - const myComponent = ColorPickerComponent; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ColorPickerComponent], - imports: [ColorPickerModule] - }) - .overrideComponent(myComponent, { - set: { - providers: [mockStayInImageryService] - } - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(ColorPickerComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/color-picker/color-picker.component.ts b/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/color-picker/color-picker.component.ts deleted file mode 100644 index a3c2fe87e1..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations-context-menu/components/color-picker/color-picker.component.ts +++ /dev/null @@ -1,43 +0,0 @@ -import { AfterViewInit, Component, ElementRef, EventEmitter, Input, Output } from '@angular/core'; -import { UUID } from 'angular2-uuid'; -import { StayInImageryService } from '@ansyn/imagery'; - -@Component({ - selector: 'ansyn-color-picker', - templateUrl: './color-picker.component.html', - styleUrls: ['./color-picker.component.less'], - providers: [StayInImageryService] -}) -export class ColorPickerComponent implements AfterViewInit { - id = UUID.UUID(); - @Input() color: string; - @Output() colorChange = new EventEmitter(); - @Input() label: string; - @Input() active: boolean; - @Input() activeDisabled: boolean; - @Input() canToggle = true; - - @Output() activeChange = new EventEmitter(); - - constructor( - protected myElement: ElementRef, - protected stayInImageryService: StayInImageryService - ) { - } - - ngAfterViewInit(): void { - this.stayInImageryService.init(this.getElement.bind(this), this.timerCallback.bind(this)); - } - - getElement() { - const elements = (this.myElement.nativeElement as Element).getElementsByClassName('color-picker'); - return elements && elements[0]; - } - - timerCallback() { - const targetElement = this.getElement(); - if (targetElement) { - (targetElement as HTMLElement).style.transform = `translate(-${ this.stayInImageryService.moveLeft }px, ${ this.stayInImageryService.moveDown }px)`; - } - } -} diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations.model.ts b/src/app/@ansyn/ol/plugins/annotations/annotations.model.ts deleted file mode 100644 index 8cd61f2109..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations.model.ts +++ /dev/null @@ -1,36 +0,0 @@ -import olFeature from 'ol/Feature'; -import { FeatureCollection, GeometryObject } from 'geojson'; - -export interface IAnnotationBoundingRect { - top: string; - left: string; - width: string; - height: string; -} - -export interface IUpdateFeatureEvent { - featureId: string; - properties: { [k: string]: any } -} - -export enum AnnotationMode { - Point = 'Point', - LineString = 'LineString', - Polygon = 'Polygon', - Circle = 'Circle', - Rectangle = 'Rectangle', - Arrow = 'Arrow', - Translate = 'Translate' -} - -export const ANNOTATION_MODE_LIST: AnnotationMode[] = Object.values(AnnotationMode); - -export enum AnnotationInteraction { - click = 'click', - hover = 'hover' -} - -export interface IDrawEndEvent { - GeoJSON: FeatureCollection; - feature: olFeature; -} diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations.visualizer.spec.ts b/src/app/@ansyn/ol/plugins/annotations/annotations.visualizer.spec.ts deleted file mode 100644 index 1908f77077..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations.visualizer.spec.ts +++ /dev/null @@ -1,63 +0,0 @@ -import { inject, TestBed } from '@angular/core/testing'; -import { of } from 'rxjs'; -import { AnnotationsVisualizer } from './annotations.visualizer'; -import { OL_PLUGINS_CONFIG } from '../plugins.config'; -import { OpenLayersProjectionService } from '../../projection/open-layers-projection.service'; -import { TranslateModule, TranslateService } from '@ngx-translate/core'; - -describe('AnnotationsVisualizer', () => { - let annotationsVisualizer: AnnotationsVisualizer; - - beforeEach(() => { - TestBed.configureTestingModule({ - providers: [ - { - provide: TranslateService, - useValue: {} - }, - AnnotationsVisualizer, - { - provide: OpenLayersProjectionService, - useValue: { projectCollectionAccurately: of(true) } - }, - { - provide: OL_PLUGINS_CONFIG, - useValue: { Annotations: { displayId: true } } - }, - ], - imports: [TranslateModule] - }); - }); - - beforeEach(inject([AnnotationsVisualizer], (_annotationsVisualizer: AnnotationsVisualizer) => { - annotationsVisualizer = _annotationsVisualizer; - })); - - it('should be created', () => { - expect(annotationsVisualizer).toBeTruthy(); - }); - - it('onDipsose should call removeInteractions', () => { - const map = jasmine.createSpyObj({ - un: () => { - }, removeInteraction: () => { - } - }); - spyOnProperty(annotationsVisualizer, 'iMap', 'get').and.callFake(() => ({ mapObject: map })); - spyOn(annotationsVisualizer, 'removeInteractions'); - annotationsVisualizer.onDispose(); - expect(annotationsVisualizer.removeInteractions).toHaveBeenCalled(); - expect(map.un).toHaveBeenCalledTimes(2); - expect(map.removeInteraction).toHaveBeenCalledWith(annotationsVisualizer.dragBox); - }); - - it('on setVisibility selected should be empty', () => { - spyOnProperty(annotationsVisualizer, 'iMap', 'get').and.callFake(() => ({ - removeLayer: () => { - }, addLayer: () => { - } - })); - annotationsVisualizer.setVisibility(false); - expect(annotationsVisualizer.selected.length).toBe(0); - }) -}); diff --git a/src/app/@ansyn/ol/plugins/annotations/annotations.visualizer.ts b/src/app/@ansyn/ol/plugins/annotations/annotations.visualizer.ts deleted file mode 100644 index 22b38208be..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/annotations.visualizer.ts +++ /dev/null @@ -1,843 +0,0 @@ -import { Inject, Injectable } from '@angular/core'; -import { - ImageryVisualizer, - IVisualizerEntity, - MarkerSize, - VisualizerInteractions, - VisualizerStates -} from '@ansyn/imagery'; -import { UUID } from 'angular2-uuid'; -import { AutoSubscription } from 'auto-subscriptions'; -import { Feature, FeatureCollection, GeometryObject } from 'geojson'; -import { cloneDeep, merge } from 'lodash'; -import { platformModifierKeyOnly } from 'ol/events/condition'; -import olFeature from 'ol/Feature'; -import olCollection from 'ol/Collection'; -import OLGeoJSON from 'ol/format/GeoJSON'; -import olCircle from 'ol/geom/Circle'; -import olLineString from 'ol/geom/LineString'; -import olMultiLineString from 'ol/geom/MultiLineString'; -import olPoint from 'ol/geom/Point'; -import olPolygon, { fromCircle } from 'ol/geom/Polygon'; -import DragBox from 'ol/interaction/DragBox'; -import olTranslate from 'ol/interaction/Translate'; -import olModify from 'ol/interaction/Modify'; -import Draw from 'ol/interaction/Draw'; -import olFill from 'ol/style/Fill'; -import olIcon from 'ol/style/Icon'; -import olStroke from 'ol/style/Stroke'; -import olStyle from 'ol/style/Style'; -import olText from 'ol/style/Text'; -import { Observable, Subject } from 'rxjs'; -import { take, tap } from 'rxjs/operators'; -import { OpenLayersMap } from '../../maps/open-layers-map/openlayers-map/openlayers-map'; -import { OpenLayersProjectionService } from '../../projection/open-layers-projection.service'; -import { EntitiesVisualizer } from '../entities-visualizer'; -import { IOLPluginsConfig, OL_PLUGINS_CONFIG } from '../plugins.config'; -import { AnnotationMode, IAnnotationBoundingRect, IDrawEndEvent } from './annotations.model'; -import { DragPixelsInteraction } from './dragPixelsInteraction'; -import { TranslateService } from '@ngx-translate/core'; - -export interface ILabelTranslateMode { - originalFeature: olFeature, - labelFeature: olFeature -} - -export interface IEditAnnotationMode { - originalFeature: olFeature, - centerFeature: olFeature, -} - - -// @dynamic -@ImageryVisualizer({ - supported: [OpenLayersMap], - deps: [OpenLayersProjectionService, OL_PLUGINS_CONFIG, TranslateService], - isHideable: true -}) -@Injectable() -export class AnnotationsVisualizer extends EntitiesVisualizer { - static fillAlpha = 0.4; - disableCache = true; - public mode: AnnotationMode; - mapSearchIsActive = false; - selected: string[] = []; - geoJsonFormat: OLGeoJSON; - dragBox = new DragBox({ condition: platformModifierKeyOnly }); - translationSubscriptions = []; - currentAnnotationEdit: IEditAnnotationMode; - labelTranslate: ILabelTranslateMode; - events = { - onClick: new Subject(), - onSelect: new Subject(), - onHover: new Subject(), - onChangeMode: new Subject<{ mode: AnnotationMode, forceBroadcast: boolean }>(), - onDrawEnd: new Subject(), - removeEntity: new Subject(), - updateEntity: new Subject(), - offsetEntity: new Subject(), - onLabelTranslateStart: new Subject(), - onLabelTranslateEnd: new Subject(), - onAnnotationEditEnd: new Subject(), - onAnnotationEditStart: new Subject() - }; - clearLabelTranslate$: any = tap(() => { - if (this.labelTranslate) { - this.labelTranslateMode(this.labelTranslate.originalFeature.getId()) - } - }); - clearAnnotationEditMode$ = tap(() => { - this.clearAnnotationEditMode(); - }); - - @AutoSubscription - selected$ = this.events.onSelect.pipe( - this.clearAnnotationEditMode$, - this.clearLabelTranslate$, - tap((selected: any) => this.selected = selected)); - - @AutoSubscription - labelTranslate$ = this.events.onLabelTranslateStart.pipe(tap((labelTranslate) => this.labelTranslate = labelTranslate)); - - @AutoSubscription - editAnnotation$ = this.events.onAnnotationEditStart.pipe(tap(annotationEdit => this.currentAnnotationEdit = annotationEdit)); - - modeDictionary = { - Arrow: { - type: 'LineString', - geometryFunction: this.arrowGeometryFunction.bind(this) - }, - Rectangle: { - type: 'Circle', - geometryFunction: this.rectangleGeometryFunction.bind(this) - } - }; - - protected measuresTextStyle = { - font: '16px Calibri,sans-serif', - fill: new olFill({ - color: '#fff' - }), - stroke: new olStroke({ - color: '#000', - width: 3 - }), - placement: 'line', - overflow: true, - rotateWithView: true - }; - - private iconSrc = ''; - - constructor(protected projectionService: OpenLayersProjectionService, - @Inject(OL_PLUGINS_CONFIG) protected olPluginsConfig: IOLPluginsConfig, - protected translator: TranslateService) { - - super(null, { - initial: { - stroke: '#27b2cfe6', - 'stroke-width': 1, - fill: `white`, - 'fill-opacity': AnnotationsVisualizer.fillAlpha, - 'stroke-opacity': 1, - 'marker-size': MarkerSize.medium, - 'marker-color': `#ffffff`, - label: { - overflow: true, - fontSize: (feature) => { - const entity = this.idToEntity.get(feature.getId()); - const labelSize = entity && entity.originalEntity && entity.originalEntity.labelSize; - return labelSize || 28; - }, - stroke: '#000', - fill: 'white', - offsetY: 30, - text: (feature: olFeature) => { - const entity = this.idToEntity.get(feature.getId()); - if (entity) { - const { label } = entity.originalEntity; - return label.text || ''; - } - return ''; - } - } - } - }); - - // 0 or 1 - if (Number(olPluginsConfig.Annotations.displayId)) { - this.updateStyle({ - initial: { - label: { - fontSize: 12, - fill: '#fff', - 'stroke-width': 3, - text: (feature) => feature.getId() || '' - } - } - }); - } - this.geoJsonFormat = new OLGeoJSON(); - } - - annotationsLayerToEntities(annotationsLayer: FeatureCollection): IVisualizerEntity[] { - return annotationsLayer.features.map((feature: Feature): IVisualizerEntity => { - const featureJson: Feature = { - ...feature, - properties: { ...feature.properties, featureJson: undefined } - }; - return { - featureJson, - id: feature.properties.id, - style: feature.properties.style || this.visualizerStyle, - showMeasures: feature.properties.showMeasures || false, - showArea: feature.properties.showArea || false, - label: feature.properties.label || { text: '', geometry: null }, - icon: feature.properties.icon || '', - undeletable: feature.properties.undeletable || false, - labelSize: feature.properties.labelSize || 28, - labelTranslateOn: feature.properties.labelTranslateOn || false - }; - }); - } - - setMode(mode, forceBroadcast: boolean) { - if (this.mode !== mode) { - this.mode = mode; - this.removeInteractions(); - - if (this.mode === AnnotationMode.Translate) { - const traslationInteractionHandler = new DragPixelsInteraction(); - this.translationSubscriptions.push( - traslationInteractionHandler.onDrag.subscribe((pixel: [number, number]) => { - if (Boolean(this.source)) { - const features: [] = this.source.getFeatures(); - features.forEach((feature: any) => { - const geometry = feature.getGeometry(); - geometry.translate(pixel[0], pixel[1]); - }); - this.offset[0] = this.offset[0] + pixel[0]; - this.offset[1] = this.offset[1] + pixel[1]; - } - }), - traslationInteractionHandler.onStopDrag.subscribe(() => { - this.events.offsetEntity.next(this.offset); - }) - ); - this.addInteraction(VisualizerInteractions.translateInteractionHandler, traslationInteractionHandler); - } else if (this.mode) { - const drawInteractionHandler = new Draw({ - type: this.modeDictionary[mode] ? this.modeDictionary[mode].type : mode, - geometryFunction: this.modeDictionary[mode] ? this.modeDictionary[mode].geometryFunction : undefined, - condition: (event: any) => (event.originalEvent).which === 1, - style: this.featureStyle.bind(this) - }); - - drawInteractionHandler.on('drawend', this.onDrawEndEvent.bind(this)); - this.addInteraction(VisualizerInteractions.drawInteractionHandler, drawInteractionHandler); - } - this.events.onChangeMode.next({ mode, forceBroadcast }); - } - } - - getFeatureBoundingRect(selectedFeature): IAnnotationBoundingRect { - const { geometry }: any = new OLGeoJSON().writeFeatureObject(selectedFeature); - const { maxX, maxY, minX, minY } = this.findMinMax(geometry.coordinates); - const width = `${ maxX - minX }px`; - const left = `${ minX }px`; - const height = `${ maxY - minY }px`; - const top = `${ minY }px`; - return { left, top, width, height }; - } - - findMinMax(array) { - if (this.isNumArray(array)) { - return this.findMinMaxHelper(array); - } - return array.reduce((prev = { maxX: -Infinity, maxY: -Infinity, minX: Infinity, minY: Infinity }, item) => { - if (this.isNumArray(item)) { - return this.findMinMaxHelper(item, prev); - } - const { maxX, maxY, minX, minY } = this.findMinMax(item); - return { - maxX: Math.max(maxX, prev.maxX), - maxY: Math.max(maxY, prev.maxY), - minX: Math.min(minX, prev.minX), - minY: Math.min(minY, prev.minY) - }; - - }, undefined); - } - - onInit() { - super.onInit(); - const { mapObject: map } = this.iMap; - map.on('click', this.mapClick); - map.on('pointermove', this.mapPointermove); - this.dragBox.on('boxstart', this.mapBoxstart); - this.dragBox.on('boxdrag', this.mapBoxdrag); - map.addInteraction(this.dragBox); - } - - onDrawEndEvent({ feature }) { - const { mode } = this; - this.setMode(undefined, true); - const id = UUID.UUID(); - const geometry = feature.getGeometry(); - let cloneGeometry = geometry.clone(); - if (cloneGeometry instanceof olCircle) { - cloneGeometry = fromCircle(cloneGeometry); - } - if (this.offset[0] !== 0 || this.offset[1] !== 0) { - cloneGeometry.translate(-this.offset[0], -this.offset[1]); - } - feature.setGeometry(cloneGeometry); - feature.setProperties({ - id, - style: cloneDeep(this.visualizerStyle), - showMeasures: false, - showArea: false, - label: { text: '', geometry: null }, - labelSize: 28, - icon: this.iconSrc, - undeletable: false, - mode - }); - feature.setId(id); - this.projectionService - .projectCollectionAccurately([feature], this.iMap.mapObject) - .pipe( - take(1), - tap((GeoJSON: FeatureCollection) => this.events.onDrawEnd.next({ GeoJSON, feature })), - ).subscribe(); - - } - - removeInteractions() { - this.removeInteraction(VisualizerInteractions.drawInteractionHandler); - this.translationSubscriptions.forEach((subscriber) => subscriber.unsubscribe()); - this.translationSubscriptions = []; - this.removeInteraction(VisualizerInteractions.translateInteractionHandler); - } - - rectangleGeometryFunction([topLeft, bottomRight], opt_geometry) { - const [x1, y1] = this.iMap.mapObject.getPixelFromCoordinate(topLeft); - const [x2, y2] = this.iMap.mapObject.getPixelFromCoordinate(bottomRight); - const topRight = this.iMap.mapObject.getCoordinateFromPixel([x2, y1]); - const bottomLeft = this.iMap.mapObject.getCoordinateFromPixel([x1, y2]); - const geometry = opt_geometry || new olPolygon([]); - const boundingBox = [topLeft, topRight, bottomRight, bottomLeft, topLeft]; - geometry.setCoordinates([boundingBox]); - return geometry; - } - - arrowGeometryFunction(coordinates, opt_geometry) { - let geometry = opt_geometry; - if (opt_geometry) { - // two lines to draw arrow - const start = coordinates[coordinates.length - 2]; - const end = coordinates[coordinates.length - 1]; - const dx = end[0] - start[0]; - const dy = end[1] - start[1]; - const rotation = Math.atan2(dy, dx); - const lineLength = Math.sqrt(Math.pow(dx, 2) + Math.pow(dy, 2)); - const factor = lineLength * 0.1; - const lineStr1 = new olLineString([end, [end[0] - factor, end[1] + factor]]); - const lineStr2 = new olLineString([end, [end[0] - factor, end[1] - factor]]); - lineStr1.rotate(rotation, end); - lineStr2.rotate(rotation, end); - geometry.setCoordinates([coordinates, lineStr1.getCoordinates(), lineStr2.getCoordinates()]); - } else { - geometry = new olMultiLineString([coordinates]); - } - return geometry; - } - - onDispose(): void { - super.onDispose(); - const { mapObject: map } = this.iMap; - this.removeInteractions(); - map.un('click', this.mapClick); - map.un('pointermove', this.mapPointermove); - map.removeInteraction(this.dragBox); - - } - - featureStyle(feature: olFeature, state: string = VisualizerStates.INITIAL) { - let superStyle = super.featureStyle(feature, state); - let styles: olStyle[] = Array.isArray(superStyle) ? superStyle : [superStyle]; - const entity = this.getEntity(feature); - if (entity && entity.showMeasures) { - styles.push(...this.getMeasuresAsStyles(feature)); - } - if (entity && entity.showArea) { - styles.push(...this.areaStyles(feature)); - } - if (entity && entity.icon) { - styles.push(this.getCenterIndicationStyle(feature)); - } - - return styles; - } - - getMeasuresAsStyles(feature: olFeature): olStyle[] { - const { mode, id } = feature.getProperties(); - const visualizerEntity = this.getEntityById(id); - const moreStyles: olStyle[] = []; - let coordinates: any[] = []; - switch (mode) { - case 'LineString': { - coordinates = (feature.getGeometry()).getCoordinates(); - for (let i = 0; i < coordinates.length - 1; i++) { - const originalCoordinates: number[][] = [visualizerEntity.featureJson.geometry.coordinates[i], visualizerEntity.featureJson.geometry.coordinates[i + 1]]; - const line: olLineString = new olLineString([coordinates[i], coordinates[i + 1]]); - moreStyles.push(new olStyle({ - geometry: line, - text: new olText({ - ...this.measuresTextStyle, - text: this.formatLength(originalCoordinates) - }) - })); - } - } - break; - case 'Polygon': - case 'Arrow': - coordinates = (feature.getGeometry()).getCoordinates()[0]; - for (let i = 0; i < coordinates.length - 1; i++) { - const originalCoordinates: number[][] = [visualizerEntity.featureJson.geometry.coordinates[0][i], visualizerEntity.featureJson.geometry.coordinates[0][i + 1]]; - const line: olLineString = new olLineString([coordinates[i], coordinates[i + 1]]); - moreStyles.push(new olStyle({ - geometry: line, - text: new olText({ - ...this.measuresTextStyle, - text: this.formatLength(originalCoordinates) - }) - })); - } - break; - case 'Rectangle': { - coordinates = (feature.getGeometry()).getCoordinates()[0]; - for (let i = 0; i < 2; i++) { - const originalCoordinates: number[][] = [visualizerEntity.featureJson.geometry.coordinates[0][i], visualizerEntity.featureJson.geometry.coordinates[0][i + 1]]; - const line: olLineString = new olLineString([coordinates[i], coordinates[i + 1]]); - moreStyles.push(new olStyle({ - geometry: line, - text: new olText({ - ...this.measuresTextStyle, - text: this.formatLength(originalCoordinates) - }) - })); - } - } - break; - case 'Circle': - coordinates = (feature.getGeometry()).getCoordinates()[0]; - const originalC = visualizerEntity.featureJson.geometry.coordinates[0]; - const leftright = this.getLeftRightResult(coordinates); - const originalLeftRight = this.getLeftRightResult(originalC); - const line: olLineString = new olLineString([leftright.left, leftright.right]); - const color = feature.values_.style.initial.stroke; - moreStyles.push( - new olStyle({ - geometry: line, - stroke: new olStroke({ - color, - width: 1 - }), - }), - new olStyle({ - geometry: new olPoint(leftright.right), - text: new olText({ - ...this.measuresTextStyle, - text: this.formatLength([originalLeftRight.left, originalLeftRight.right]), - placement: 'point', - offsetX: 20 - }) - }) - ); - break; - } - if (mode === 'Rectangle' || mode === 'Circle') { - // moreStyles.push(...this.areaCircumferenceStyles(feature)); - } - return moreStyles; - } - - getLeftRightResult(coordinates) { - const leftRight = coordinates.reduce((prevResult, currCoord) => { - if (currCoord[0] > prevResult.right[0]) { - return { left: prevResult.left, right: currCoord }; - } else if (currCoord[0] < prevResult.left[0]) { - return { left: currCoord, right: prevResult.right }; - } else { - return prevResult; - } - }, { left: [Infinity, 0], right: [-Infinity, 0] }); - return leftRight; - } - - getCenterIndicationStyle(feature: olFeature): olStyle { - const centerPoint = this.getCenterOfFeature(feature); - return new olStyle({ - geometry: new olPoint(centerPoint.coordinates), - image: new olIcon({ - scale: 1, - src: feature.getProperties().icon - }) - - }); - } - - convertPixelStringToNumeric(pixelString) { - pixelString.substring(0, pixelString.length - 2); - return parseInt(pixelString, 10); - } - - getFeatureWidth(feature) { - const WidthString = this.getFeatureBoundingRect(feature).width; - return this.convertPixelStringToNumeric(WidthString); - } - - getFeatureHeight(feature) { - const heightString = this.getFeatureBoundingRect(feature).height; - return this.convertPixelStringToNumeric(heightString); - } - - areaStyles(feature: any): olStyle[] { - const geometry = feature.getGeometry(); - const height = this.getFeatureHeight(feature); - const width = this.getFeatureWidth(feature); - const calcArea = this.formatArea(geometry); - const areaText = this.translator.instant('Area'); - - return [ - new olStyle({ - text: new olText({ - font: '16px Calibri,sans-serif', - fill: new olFill({ - color: '#fff' - }), - stroke: new olStroke({ - color: '#000', - width: 3 - }), - text: `${ calcArea } :${ areaText }`, - offsetY: height / 2, - offsetX: - (width / 2) - }) - }) - ]; - } - - removeFeature(featureId: string, internal = false) { - super.removeEntity(featureId, internal); - if (!internal) { - this.events.removeEntity.next(featureId); - } - this.events.onSelect.next(this.selected.filter((id) => id !== featureId)); - } - - updateFeature(featureId, props: Partial) { - const entity = this.idToEntity.get(featureId); - if (entity) { - entity.originalEntity = merge({}, entity.originalEntity, props); - if (entity.originalEntity.featureJson && entity.originalEntity.featureJson.properties) { - entity.originalEntity.featureJson.properties = merge({}, entity.originalEntity.featureJson.properties, props); - } - this.events.updateEntity.next(entity.originalEntity); - this.source.refresh(); - } - } - - setVisibility(isVisible: boolean) { - super.setVisibility(isVisible); - this.events.onSelect.next([]); - } - - public setIconSrc(src: string) { - this.iconSrc = src; - } - - labelTranslateMode(featureId: any) { - let oldFeature = null; - let event = null; - - if (this.labelTranslate) { - const { originalFeature } = this.labelTranslate; - this.removeInteraction(VisualizerInteractions.labelTranslateHandler); - oldFeature = originalFeature; - } - - if (!oldFeature || featureId !== oldFeature.getId()) { // start editing - this.clearAnnotationEditMode(); - let originalFeature: olFeature = this.source.getFeatureById(featureId); - this.updateFeature(originalFeature.getId(), { labelTranslateOn: true }); - this.addOrUpdateEntities([this.getEntityById(featureId)]).pipe(take(1)).subscribe(() => { - originalFeature = this.source.getFeatureById(featureId); - const labelFeature = this.createLabelFeature(originalFeature); - - this.addInteraction(VisualizerInteractions.labelTranslateHandler, this.moveLabelInteraction(originalFeature, labelFeature)); - event = { - originalFeature, - labelFeature - }; - this.source.addFeature(labelFeature); - }) - } else { - this.updateFeature(featureId, { labelTranslateOn: false }); - this.source.removeFeature(this.labelTranslate.labelFeature); - this.addOrUpdateEntities([this.getEntityById(featureId)]).pipe(take(1)).subscribe(); - } - this.events.onLabelTranslateStart.next(event); - } - - setEditAnnotationMode(featureId: string, enable: boolean) { - this.clearLabelTranslateMode(); - let event = undefined; - let centerFeature; - let feature; - if (enable) { - feature = this.source.getFeatureById(featureId); - if (centerFeature) { - this.source.removeFeature(centerFeature); - } - centerFeature = this.createCenterFeatureToDrag(feature); - if (feature.get('mode') !== 'Point') { - this.addInteraction(VisualizerInteractions.modifyInteractionHandler, this.createModifyInteraction(feature)); - } - this.addInteraction(VisualizerInteractions.editAnnotationTranslateHandler, this.createAnnotationTranslateInteraction(feature, centerFeature)); - this.source.addFeature(centerFeature); - event = { - originalFeature: feature, - centerFeature - } - - } else { - centerFeature = this.currentAnnotationEdit.centerFeature; - this.removeInteraction(VisualizerInteractions.editAnnotationTranslateHandler); - this.removeInteraction(VisualizerInteractions.modifyInteractionHandler); - if (centerFeature) { - this.source.removeFeature(centerFeature); - } - } - this.events.onAnnotationEditStart.next(event); - } - - - private createCenterFeatureToDrag(feature: olFeature) { - const center = this.getCenterOfFeature(feature); - const centerFeature = new olFeature(new olPoint(center.coordinates)); - centerFeature.setStyle(new olStyle({ - image: new olIcon({ - src: 'assets/icons/dragIcon.svg' - }) - })); - return centerFeature; - - } - - private createModifyInteraction(feature: olFeature) { - const modify = new olModify({ - features: new olCollection([feature]) - }); - - modify.on('modifystart', () => { - if (['Rectangle'].includes(feature.get('mode'))) { - feature.set('mode', 'Polygon'); - } - }); - - modify.on('modifyend', (event) => { - const features = [feature]; - feature.getGeometry().translate(-this.offset[0], -this.offset[1]); - const { geometry } = feature.get('label'); - if (geometry) { - features.push(new olFeature(geometry)); - } - this.projectionService.projectCollectionAccurately(features, this.iMap.mapObject).pipe( - take(1), - tap((GeoJSON: FeatureCollection) => this.annotationEditEnd(GeoJSON, feature)) - ).subscribe(); - }); - - return modify; - } - - private createAnnotationTranslateInteraction(feature: olFeature, center: olFeature) { - const { geometry } = feature.get('label'); - const translate = new olTranslate({ - features: new olCollection([center]), - hitToTolerance: 3 - }); - translate.on('translatestart', (event) => { - const lastCoordinate = event.coordinate; - center.set('lastCoordinate', lastCoordinate); - }); - translate.on('translating', (event) => { - - const currentCoordinates = event.coordinate; - const lastCoordinates = center.get('lastCoordinate'); - const deltaX = currentCoordinates[0] - lastCoordinates[0]; - const deltaY = currentCoordinates[1] - lastCoordinates[1]; - center.set('lastCoordinate', currentCoordinates); - feature.getGeometry().translate(deltaX, deltaY); - if (geometry) { - geometry.translate(deltaX, deltaY); - } - - }); - translate.on('translateend', (event) => { - const features = [feature]; - feature.getGeometry().translate(-this.offset[0], -this.offset[1]); - if (geometry) { - features.push(new olFeature(geometry)); - } - center.unset('lastCoordinate'); - this.projectionService.projectCollectionAccurately(features, this.iMap.mapObject).pipe( - take(1), - tap((GeoJSON: FeatureCollection) => this.annotationEditEnd(GeoJSON, feature)) - ).subscribe(); - }); - - return translate; - } - - private annotationEditEnd(GeoJSON: FeatureCollection, feature: olFeature) { - this.events.onAnnotationEditEnd.next({ GeoJSON, feature }); - // reset all -edit annotation- interactions so the annotation will response to the interaction after it update. - this.setEditAnnotationMode(feature.getId(), false); - this.setEditAnnotationMode(feature.getId(), true); - } - - private createLabelFeature(feature: olFeature): olFeature { - let labelPostion = this.getCenterOfFeature(feature); - const entity = this.getEntity(feature); - const { mode: entityMode } = feature.getProperties(); - const { label } = feature.getProperties(); - if (label.geometry) { - const labelPoint = this.geoJsonFormat.writeGeometryObject(label.geometry); - labelPoint.coordinates[0] += this.offset[0]; - labelPoint.coordinates[1] += this.offset[1]; - labelPostion = labelPoint; - } - const labelFeature = new olFeature({ - geometry: new olPoint(labelPostion.coordinates), - }); - labelFeature.setStyle(new olStyle({ - text: new olText({ - font: `${ entity.labelSize + 2 }px Calibri,sans-serif`, - fill: new olFill({ color: entity.style.initial.label.fill }), - text: label.text, - offsetY: 30 - }) - })); - - return labelFeature; - } - - private moveLabelInteraction(originalFeature: olFeature, labelFeature: olFeature): olTranslate { - const translateInteraction = new olTranslate({ - features: new olCollection([labelFeature]), - hitTolerance: 2 - }); - translateInteraction.on('translateend', (translateend) => { - const newCoord = this.geoJsonFormat.writeGeometryObject(translateend.features.item(0).getGeometry()); - newCoord.coordinates[0] -= this.offset[0]; - newCoord.coordinates[1] -= this.offset[1]; - this.projectionService.projectAccurately(newCoord, this.iMap.mapObject).subscribe((accuracyPoint) => { - this.updateFeature(originalFeature.getId(), { - label: { - text: originalFeature.get('label').text, - geometry: accuracyPoint - } - }); - this.purgeCache(originalFeature); - this.featureStyle(originalFeature); - }) - }); - - return translateInteraction; - } - - private clearLabelTranslateMode() { - if (this.labelTranslate) { - this.updateFeature(this.labelTranslate.originalFeature.getId(), { labelTranslateOn: false }); - this.removeInteraction(VisualizerInteractions.labelTranslateHandler); - this.source.removeFeature(this.labelTranslate.labelFeature); - this.labelTranslate = null; - } - } - - onResetView(): Observable { - this.clearLabelTranslateMode(); - this.clearAnnotationEditMode(); - return super.onResetView(); - } - - dispose() { - this.clearLabelTranslateMode(); - this.clearAnnotationEditMode(); - super.dispose(); - } - - protected mapClick = (event) => { - if (this.mapSearchIsActive || this.mode || this.isHidden) { - return; - } - const { shiftKey: multi } = event.originalEvent; - const selectedFeature = this.featureAtPixel(event.pixel); - let ids = []; - if (selectedFeature) { - const featureId = selectedFeature.getId(); - ids = multi ? this.selected.includes(featureId) ? this.selected.filter(id => id !== featureId) : [...this.selected, featureId] : [featureId]; - } else { - ids = multi ? this.selected : []; - } - this.events.onSelect.next(ids); - }; - - protected mapPointermove = (event) => { - if (this.mapSearchIsActive || this.mode) { - return; - } - const selectedFeature = this.featureAtPixel(event.pixel); - this.events.onHover.next(selectedFeature ? selectedFeature.getId() : null); - }; - - protected mapBoxstart = () => { - this.events.onSelect.next([]); - }; - - protected mapBoxdrag = ({ target }) => { - if (this.isHidden) { - return; - } - const extent = target.getGeometry().getExtent(); - const selected = []; - this.vector.getSource().forEachFeatureIntersectingExtent(extent, (feature) => { - selected.push(feature.getId()); - }); - this.events.onSelect.next(selected); - }; - - private isNumArray([first, second]) { - return typeof first === 'number' && typeof second === 'number'; - } - - private findMinMaxHelper(array, prev = { maxX: -Infinity, maxY: -Infinity, minX: Infinity, minY: Infinity }) { - const [x, y] = this.iMap.mapObject.getPixelFromCoordinate(array); - return { - maxX: Math.max(x, prev.maxX), - maxY: Math.max(y, prev.maxY), - minX: Math.min(x, prev.minX), - minY: Math.min(y, prev.minY) - }; - } - - clearAnnotationEditMode() { - if (this.currentAnnotationEdit) { - this.setEditAnnotationMode(this.currentAnnotationEdit.originalFeature.getId(), false) - } - } -} diff --git a/src/app/@ansyn/ol/plugins/annotations/dragPixelsInteraction.ts b/src/app/@ansyn/ol/plugins/annotations/dragPixelsInteraction.ts deleted file mode 100644 index 406fedb919..0000000000 --- a/src/app/@ansyn/ol/plugins/annotations/dragPixelsInteraction.ts +++ /dev/null @@ -1,58 +0,0 @@ -import { EventEmitter } from '@angular/core'; -import PointerInteraction from 'ol/interaction/Pointer'; - -export class DragPixelsInteraction extends PointerInteraction { - startPixel: [number, number]; - currentPixel: [number, number]; - - deltaX; - deltaY; - - onDrag: EventEmitter<[number, number]>; - onStopDrag: EventEmitter; - - handleDownEvent(args) { - this.currentPixel[0] = args.coordinate[0]; - this.currentPixel[1] = args.coordinate[1]; - this.startPixel[0] = args.coordinate[0]; - this.startPixel[1] = args.coordinate[1]; - - this.deltaX = 0; - this.deltaY = 0; - return true; - } - - handleDragEvent(args) { - this.deltaX = args.coordinate[0] - this.currentPixel[0]; - this.deltaY = args.coordinate[1] - this.currentPixel[1]; - - this.currentPixel[0] = args.coordinate[0]; - this.currentPixel[1] = args.coordinate[1]; - - this.onDrag.emit([this.deltaX, this.deltaY]); - return super.handleDragEvent(args); - } - - handleUpEvent(args) { - this.onStopDrag.emit(); - - this.startPixel = [0, 0]; - this.currentPixel = [0, 0]; - this.deltaX = 0; - this.deltaY = 0; - - return super.handleUpEvent(args); - } - - handleMoveEvent(args) { - return super.handleMoveEvent(args); - } - - constructor() { - super(); - this.startPixel = [0, 0]; - this.currentPixel = [0, 0]; - this.onDrag = new EventEmitter<[number, number]>(); - this.onStopDrag = new EventEmitter(); - } -} diff --git a/src/app/@ansyn/ol/plugins/entities-visualizer.ts b/src/app/@ansyn/ol/plugins/entities-visualizer.ts deleted file mode 100644 index 2431198aa9..0000000000 --- a/src/app/@ansyn/ol/plugins/entities-visualizer.ts +++ /dev/null @@ -1,530 +0,0 @@ -import { merge } from 'lodash'; -import SourceVector from 'ol/source/Vector'; -import Feature from 'ol/Feature'; -import Style from 'ol/style/Style'; -import Stroke from 'ol/style/Stroke'; -import Circle from 'ol/style/Circle'; -import Fill from 'ol/style/Fill'; -import Text from 'ol/style/Text'; -import Icon from 'ol/style/Icon'; -import Point from 'ol/geom/Point'; -import VectorLayer from 'ol/layer/Vector'; -import ol_Layer from 'ol/layer/Layer'; -import OLGeoJSON from 'ol/format/GeoJSON'; -import { getArea } from 'ol/sphere'; -import SelectEvent from 'ol/interaction/Select'; -import * as olExtent from 'ol/extent'; -import { - BaseImageryVisualizer, - calculateLineDistance, - getPointByGeometry, - IVisualizerEntity, - IVisualizerStateStyle, - IVisualizerStyle, - MarkerSizeDic, - VisualizerInteractionTypes, - VisualizerStates -} from '@ansyn/imagery'; -import { forkJoin, Observable, of } from 'rxjs'; -import * as ol_color from 'ol/color'; -import { OpenLayersMap } from '../maps/open-layers-map/openlayers-map/openlayers-map'; -import { map } from 'rxjs/operators'; -import { featureCollection } from '@turf/turf'; - -export interface IFeatureIdentifier { - feature: Feature; - originalEntity: IVisualizerEntity; - cachedFeatureStyle?: any; -} - -export abstract class EntitiesVisualizer extends BaseImageryVisualizer { - isHidden = false; - public source: SourceVector; - vector: ol_Layer; - public idToEntity: Map = new Map(); - offset: [number, number] = [0, 0]; - interactions: Map = new Map(); - protected featuresCollection: Feature[]; - protected disableCache = false; - protected useCachedStyleForUpdatedEntities = false; - protected visualizerStyle: IVisualizerStateStyle = { - opacity: 1, - initial: { - fill: 'transparent', - stroke: 'blue', - 'stroke-width': 3, - 'stroke-dasharray': 0 - } - }; - - constructor(visualizerStyle: Partial = {}, defaultStyle: Partial = {}) { - super(); - merge(this.visualizerStyle, defaultStyle, visualizerStyle); - } - - getEntity(feature: Feature): IVisualizerEntity { - return this.getEntityById(feature.getId()); - } - - getEntityById(featureId: string): IVisualizerEntity { - const entity = this.idToEntity.get(featureId); - return entity && entity.originalEntity; - } - - getCachedEntityOLStyleById(featureId: string): any { - const entity = this.idToEntity.get(featureId); - return entity && entity.cachedFeatureStyle; - } - - setCachedEntityOLStyleById(featureId: string, olStyle) { - const entity = this.idToEntity.get(featureId); - if (entity) { // if it's a feature from interaction (draws new) it doesn't exist's in the dictionary so we ignore it - this.idToEntity.set(featureId, { - feature: entity.feature, - originalEntity: entity.originalEntity, - cachedFeatureStyle: olStyle - }); - } - } - - getJsonFeatureById(featureId: string): Feature { - const originalEntity = this.getEntityById(featureId); - return originalEntity && originalEntity.featureJson; - } - - onInit() { - super.onInit(); - this.initLayers(); - } - - protected initLayers() { - this.createStaticLayers(); - this.resetInteractions(); - } - - protected createStaticLayers() { - this.featuresCollection = []; - this.source = new SourceVector({ features: this.featuresCollection, wrapX: false }); - - let extent = !this.dontRestrictToExtent ? (this.iMap.getMainLayer() as ol_Layer).getExtent() : undefined; - this.vector = new VectorLayer({ - source: this.source, - style: this.featureStyle.bind(this), - opacity: this.visualizerStyle.opacity, - renderBuffer: 5000, - zIndex: 10, - extent: extent - }); - - if (!this.isHidden) { - this.iMap.addLayer(this.vector); - } - } - - protected resetInteractions(): void { - - } - - setVisibility(isVisible: boolean) { - if (!this.isHideable) { - return; - } - - this.isHidden = !isVisible; - if (this.isHidden) { - this.iMap.removeLayer(this.vector); - } else { - this.iMap.addLayer((this.vector)); - } - } - - public purgeCacheById(featureId: string) { - if (this.idToEntity.has(featureId)) { - const entitiy = this.idToEntity.get(featureId); - if ((entitiy.feature).styleCache) { - delete (entitiy.feature).styleCache; - } - this.idToEntity.set(featureId, {cachedFeatureStyle: null, originalEntity: entitiy.originalEntity, feature: entitiy.feature }); - } - } - - public purgeCache(feature?: Feature) { - if (feature) { - delete (feature).styleCache; - const key = feature.getId(); - if (this.idToEntity.has(key)) { - const entitiy = this.idToEntity.get(key); - this.idToEntity.set(key, {cachedFeatureStyle: null, originalEntity: entitiy.originalEntity, feature: feature }); - } - } else if (this.source) { - let features = this.source.getFeatures(); - features.forEach(f => this.purgeCache(f)); - } - } - - protected fixStyleValues(feature: Feature, styleSettings: any) { - Object.keys(styleSettings).forEach(key => { - if (styleSettings[key]) { - switch (typeof styleSettings[key]) { - case 'function': - styleSettings[key] = styleSettings[key](feature); - break; - case 'object': - this.fixStyleValues(feature, styleSettings[key]); - break; - } - } - }); - } - - protected createStyle(feature: Feature, isStyle, ...styles: Array>) { - const styleSettings: IVisualizerStyle = merge({}, ...styles); - this.fixStyleValues(feature, styleSettings); - - let firstStyle: any = {}; - let secondaryStyle: any = {}; - let textStyle: any = {}; - - if (styleSettings.shadow) { - secondaryStyle.stroke = new Stroke({ - color: styleSettings.shadow.stroke, - width: styleSettings.shadow['stroke-width'] - }); - } - - if (styleSettings.stroke) { - const color = this.colorWithAlpha(styleSettings.stroke, styleSettings['stroke-opacity']); - const dash = styleSettings['stroke-dasharray']; - const lineDash = dash > 0 ? [dash, 10] : undefined; - const width = styleSettings['stroke-width']; - const lineCap = dash > 0 ? 'square' : undefined; - - firstStyle.stroke = new Stroke({ color, lineDash, width, lineCap, lineDashOffset: 5 }); - } - - if (styleSettings.fill) { - const color = this.colorWithAlpha(styleSettings.fill, styleSettings['fill-opacity']); - firstStyle.fill = new Fill({ color }); - } - - if (styleSettings.icon) { - firstStyle.image = new Icon(styleSettings.icon); - } - - if (styleSettings.circle) { - const radius = styleSettings.circle; - firstStyle.image = new Circle({ - radius, - fill: firstStyle.fill, - stroke: firstStyle.stroke - }); - } - - if (styleSettings.geometry) { - secondaryStyle.image = firstStyle.image; - secondaryStyle.geometry = styleSettings.geometry - } - - if ((styleSettings.label && styleSettings.label.text) && !feature.getProperties().labelTranslateOn) { - const fill = new Fill({ color: styleSettings.label.fill }); - const stroke = new Stroke({ - color: styleSettings.label.stroke ? styleSettings.label.stroke : '#fff', - width: styleSettings.label.stroke ? 4 : 0 - }); - const { label } = styleSettings; - - textStyle.text = new Text({ - overflow: label.overflow, - font: `${ styleSettings.label.fontSize }px Calibri,sans-serif`, - offsetY: styleSettings.label.offsetY, - text: label.text, - fill, - stroke - }); - textStyle.geometry = (feature) => { - const { label } = feature.getProperties(); - if (label.geometry) { - const oldCoordinates = label.geometry.getCoordinates(); - const newCoordinates = [this.offset[0] + oldCoordinates[0], this.offset[1] + oldCoordinates[1]]; - return new Point(newCoordinates); - } - return new Point(this.getCenterOfFeature(feature).coordinates) - }; - - firstStyle.geometry = (feature) => feature.getGeometry(); - } - - if (styleSettings['marker-color'] || styleSettings['marker-size']) { - const color = styleSettings['marker-color']; - const radius = MarkerSizeDic[styleSettings['marker-size']]; - firstStyle.image = new Circle({ fill: new Fill({ color }), stroke: null, radius }); - } - - - return [firstStyle, textStyle, secondaryStyle].map(style => isStyle ? new Style(style) : style); - } - - colorWithAlpha(color, alpha = 1) { - const [r, g, b] = Array.from(ol_color.asArray(color)); - return ol_color.asString([r, g, b, alpha]); - } - - featureStyle(feature: Feature, state: string = VisualizerStates.INITIAL) { - if (this.disableCache || !(feature).styleCache) { - const styles = [ - this.visualizerStyle[VisualizerStates.INITIAL], // Weakest - this.visualizerStyle[state] - ]; - - const entity = this.getEntity(feature); - if (entity) { - if (this.useCachedStyleForUpdatedEntities) { - const cachedStyle = this.getCachedEntityOLStyleById(feature.getId()); - if (cachedStyle) { - (feature).styleCache = cachedStyle; - return cachedStyle; - } - } - - if (entity.type && this.visualizerStyle.entities && this.visualizerStyle.entities[entity.type]) { - styles.push(this.visualizerStyle.entities[entity.type][VisualizerStates.INITIAL]); - styles.push(this.visualizerStyle.entities[entity.type][state]); - } - - if (entity.style) { - styles.push(entity.style[VisualizerStates.INITIAL]); - styles.push(entity.style[state]); - } - } - - (feature).styleCache = this.createStyle(feature, true, ...styles); - } - this.setCachedEntityOLStyleById(feature.getId(), (feature).styleCache); - return (feature).styleCache; - } - - addOrUpdateEntities(logicalEntities: IVisualizerEntity[], forceClearAllExistingEntites?: boolean): Observable { - const filteredLogicalEntities = logicalEntities.filter(entity => Boolean(entity.id)); - - if (filteredLogicalEntities.length < logicalEntities.length) { - console.warn('Got empty id\'s for some map features/annotations'); - } - - // save old cached styles - const cachedOldEntitiesStyles: Map = new Map(); - if (this.useCachedStyleForUpdatedEntities) { - this.idToEntity.forEach((val, key) => { - cachedOldEntitiesStyles.set(key, val.cachedFeatureStyle); - }); - } - - if (!forceClearAllExistingEntites) { - filteredLogicalEntities.forEach((entity: IVisualizerEntity) => { - this.removeEntity(entity.id, true); - }); - } else { - this.clearEntities(); - } - - if (filteredLogicalEntities.length <= 0) { - return of(true); - } - const features = []; - const labels = []; - filteredLogicalEntities.forEach(entity => { - features.push({ ...entity.featureJson, id: entity.id }); - if (entity.label && entity.label.geometry) { - const temp = this.geometryToEntity(entity.id, entity.label.geometry); - labels.push({ ...temp.featureJson, id: temp.id }); - } - }); - - const featuresCollectionToAdd: any = featureCollection(features); - const labelCollectionToAdd: any = featureCollection(labels); - const featuresProject = (this.iMap).projectionService.projectCollectionAccuratelyToImage(featuresCollectionToAdd, this.iMap.mapObject); - const labelsProject = (this.iMap).projectionService.projectCollectionAccuratelyToImage(labelCollectionToAdd, this.iMap.mapObject); - return forkJoin(featuresProject, labelsProject) - .pipe(map(([features, labels]: [Feature[], Feature[]]) => { - features.forEach((feature: Feature) => { - const _id: string = feature.getId(); - const label = labels.find(label => label.getId() === _id); - - let cachedFeatureStyle; - if (cachedOldEntitiesStyles.has(_id)) { - cachedFeatureStyle = cachedOldEntitiesStyles.get(_id); - } - const entity: IFeatureIdentifier = { - originalEntity: filteredLogicalEntities.find(({ id }) => id === _id), - feature: feature, - cachedFeatureStyle: cachedFeatureStyle - }; - entity.feature.set('label', { ...feature.get('label'), geometry: label && label.getGeometry() }); - this.idToEntity.set(_id, entity); - const featureWithTheSameId = this.source.getFeatureById(_id); - if (featureWithTheSameId) { - this.source.removeFeature(featureWithTheSameId); - } - if (this.offset[0] !== 0 || this.offset[1] !== 0) { - const geometry = feature.getGeometry(); - geometry.translate(this.offset[0], this.offset[1]); - } - }); - this.source.addFeatures(features); - return true; - })); - } - - setEntities(logicalEntities: IVisualizerEntity[]): Observable { - return this.addOrUpdateEntities(logicalEntities, true); - } - - removeEntity(logicalEntityId: string, internal = false) { - if (!logicalEntityId) { - return; - } - const entityToRemove = this.idToEntity.get(logicalEntityId); - if (!entityToRemove) { - return; - } - this.idToEntity.delete(logicalEntityId); - const featureId = entityToRemove.feature.getId(); - if (entityToRemove.feature && this.source.getFeatureById(entityToRemove.feature.getId())) { - const existingFeatures = this.source.getFeatures(); - const exists = existingFeatures.find((feature) => { - return feature.ol_uid === entityToRemove.feature.ol_uid; - }); - if (exists) { - this.source.removeFeature(entityToRemove.feature); - } else { - console.warn('can\'t remove feature id ', featureId, ' ol_id ', entityToRemove.feature.ol_uid); - } - } - } - - clearEntities() { - if (this.idToEntity) { - this.idToEntity.clear(); - } - if (this.source) { - this.source.clear(true); - } - } - - getEntities(): IVisualizerEntity[] { - const entities: IVisualizerEntity[] = []; - this.idToEntity.forEach((val, key) => entities.push(val.originalEntity)); - return entities; - } - - onResetView(): Observable { - const currentEntities: IVisualizerEntity[] = this.getEntities(); - this.clearEntities(); - this.initLayers(); - // todo: activate the use cached style flag for new drawings - return this.addOrUpdateEntities(currentEntities, true); - } - - updateStyle(style: Partial) { - merge(this.visualizerStyle, style); - this.purgeCache(); - } - - getInteraction(type: VisualizerInteractionTypes) { - return this.interactions.get(type); - } - - addInteraction(type: VisualizerInteractionTypes, interactionInstance: any): void { - this.iMap.mapObject.addInteraction(interactionInstance); - this.interactions.set(type, interactionInstance); - } - - removeInteraction(type: VisualizerInteractionTypes) { - if (this.interactions.has(type)) { - const interactionInstance: any = this.interactions.get(type); - this.iMap.mapObject.removeInteraction(interactionInstance); - this.interactions.delete(type); - } - } - - geometryToEntity(id, geometry): IVisualizerEntity { - const featureJson: GeoJSON.Feature = { - type: 'Feature', - geometry, - properties: {} - }; - return { id, featureJson }; - } - - protected getCenterOfFeature(feature: Feature) { - const featureGeoJson = new OLGeoJSON().writeFeatureObject(feature); - return getPointByGeometry(featureGeoJson.geometry); - } - - formatLength(coordinates: number[][]) { - const length = coordinates.reduce((length: number, coord, index, arr) => { - if (arr[index + 1] === undefined) { - return length; - } - const aPoint = new OLGeoJSON().writeGeometryObject(new Point(coord)); - const bPoint = new OLGeoJSON().writeGeometryObject(new Point(arr[index + 1])); - return length + calculateLineDistance(aPoint, bPoint); - }, 0); - - if (length < 1) { - return (length * 1000).toFixed(2) + 'm'; - } else { - return length.toFixed(2) + 'km'; - } - } - - formatArea(geometry) { - const fractionDigits = 2; - const projection = this.iMap.getProjectionCode(); - const area = getArea(geometry, { projection }); - - if (area >= 1000) { - return (area / 1000).toFixed(fractionDigits) + 'km2'; - } - - return (area).toFixed(fractionDigits) + 'm2'; - } - - isMouseEventInExtent(event: SelectEvent): boolean { - const coordinate = event.mapBrowserEvent.coordinate; - const extent = this.vector.getExtent(); - const result = olExtent.containsCoordinate(extent, coordinate); - return result; - } - - featureAtPixel = (pixel) => { - if (!Boolean(pixel) || !Boolean(pixel.length)) { - return undefined; - } - const featuresArray = []; - this.iMap.mapObject.forEachFeatureAtPixel(pixel, feature => { - featuresArray.push(feature); - }, { hitTolerance: 2, layerFilter: (layer) => this.vector === layer }); - return this.findFeatureWithMinimumArea(featuresArray); - }; - - entityAtPixel(pixel): IVisualizerEntity { - const feature = this.featureAtPixel(pixel); - if (!feature) { - return undefined; - } - const entity = this.getEntity(feature); - return entity; - } - - findFeatureWithMinimumArea(featuresArray: any[]) { - return featuresArray.reduce((prevResult, currFeature) => { - const currGeometry = currFeature.getGeometry(); - const currArea = currGeometry.getArea ? currGeometry.getArea() : 0; - if (currArea < prevResult.area) { - return { feature: currFeature, area: currArea }; - } else { - return prevResult; - } - }, { feature: null, area: Infinity }).feature; - } -} diff --git a/src/app/@ansyn/ol/plugins/grid-lines/grid-lines.visualizer.ts b/src/app/@ansyn/ol/plugins/grid-lines/grid-lines.visualizer.ts deleted file mode 100644 index ccd32212db..0000000000 --- a/src/app/@ansyn/ol/plugins/grid-lines/grid-lines.visualizer.ts +++ /dev/null @@ -1,115 +0,0 @@ -import Graticule from 'ol/Graticule'; -import Stroke from 'ol/style/Stroke'; -import { - BaseImageryPlugin, ImageryPlugin -} from '@ansyn/imagery'; -import { Observable } from 'rxjs'; -import { OpenLayersMap } from '../../maps/open-layers-map/openlayers-map/openlayers-map'; - -@ImageryPlugin({ - supported: [OpenLayersMap], - deps: [] -}) -export class GridLinesVisualizer extends BaseImageryPlugin { - - gridColor = 'rgba(245,245,245,0.85)'; - gridLineWidth = 3; - gridShowLabels = true; - protected graticule1: any; - protected graticule2: any; - protected _isEnabled: boolean; - - constructor() { - super(); - } - - // override this method to format the angle - formatAngle(angle: number) { - // @ts-ignore - const degrees = Math.trunc(angle); - // @ts-ignore - const minutesAndSeconds = (angle - degrees) * 60; - let minutes = Math.round(minutesAndSeconds); - let seconds = Math.round(minutesAndSeconds - minutes) * 3600; - if (seconds >= 3600) { - minutes += 1; - seconds = 0; - } - return `${degrees + String.fromCharCode(176)} ${minutes.toFixed(0)} ${seconds.toFixed(0)}`; - } - - onInit() { - if (this.isEnabled) { - this.showGridLines(); - } - } - - set isEnabled(isEnabled: boolean) { - this._isEnabled = isEnabled; - if (isEnabled) { - this.showGridLines(); - } else { - this.destroyGridLines(); - } - } - - get isEnabled(): boolean { - return this._isEnabled; - } - - showGridLines() { - if (this.graticule1 || this.graticule2) { - this.destroyGridLines(); - } - - this.graticule1 = new Graticule({ - // the style to use for the lines, optional. - // latLabelFormatter: this.formatAngle.bind(this), - // lonLabelFormatter: this.formatAngle.bind(this), - intervals: [90, 45, 30, 20, 10, 5, 2, 1], - strokeStyle: new Stroke({ - color: this.gridColor, - width: this.gridLineWidth - }), - // lonLabelStyle: lonLabelStyle, - showLabels: this.gridShowLabels - }); - - this.graticule2 = new Graticule({ - // the style to use for the lines, optional. - intervals: [1 / 6], - strokeStyle: new Stroke({ - color: 'rgba(245,245,245,0.45)', - lineDash: [0.5, 4], - width: 2 - }), - latLabelFormatter: this.formatAngle.bind(this), - lonLabelFormatter: this.formatAngle.bind(this), - showLabels: false - }); - - this.graticule2.setMap(this.iMap.mapObject); - this.graticule1.setMap(this.iMap.mapObject); - } - - destroyGridLines() { - if (this.graticule1) { - this.graticule1.setMap(undefined); - this.graticule1 = undefined; - } - - if (this.graticule2) { - this.graticule2.setMap(undefined); - this.graticule2 = undefined; - } - } - - onResetView(): Observable { - return super.onResetView(); - } - - onDispose(): void { - this.destroyGridLines(); - super.onDispose(); - } -} diff --git a/src/app/@ansyn/ol/plugins/image-processing/image-processing.plugin.ts b/src/app/@ansyn/ol/plugins/image-processing/image-processing.plugin.ts deleted file mode 100644 index 0ade0478d6..0000000000 --- a/src/app/@ansyn/ol/plugins/image-processing/image-processing.plugin.ts +++ /dev/null @@ -1,160 +0,0 @@ -import { Observable, of } from 'rxjs'; -import ImageLayer from 'ol/layer/Image'; -import { - BaseImageryPlugin, - CommunicatorEntity, - IMAGERY_BASE_MAP_LAYER, - ImageryPlugin -} from '@ansyn/imagery'; -import { OpenLayersImageProcessing } from './image-processing'; -import { tap } from 'rxjs/operators'; -import { isEqual } from 'lodash'; -import { OpenLayersMap } from '../../maps/open-layers-map/openlayers-map/openlayers-map'; -import { OpenLayersDisabledMap } from '../../maps/openlayers-disabled-map/openlayers-disabled-map'; -import { getDefaultImageProcParams, IImageProcParam, IImageManualProcessArgs } from './model'; -import { ProjectableRaster } from '../../maps/open-layers-map/models/projectable-raster'; -import { IMAGE_PROCESS_ATTRIBUTE } from '../../mapSourceProviders/open-layers.map-source-provider'; - -@ImageryPlugin({ - supported: [OpenLayersMap, OpenLayersDisabledMap], - deps: [] -}) -export class ImageProcessingPlugin extends BaseImageryPlugin { - private _imageProcessing: OpenLayersImageProcessing; - private imageLayer: ImageLayer; - - communicator: CommunicatorEntity; - customMainLayer = null; - mapLayerChangedSubscription; - params: Array; - - constructor() { - super(); - this.params = getDefaultImageProcParams(); - } - - onInit() { - super.onInit(); - this.mapLayerChangedSubscription = this.iMap.mapLayerChangedEventEmitter.pipe( - tap(() => { - this.removeImageLayer(); - }) - ).subscribe(); - } - - startImageProcessing(isAutoImageProcessingActive: boolean, imageManualProcessArgs: IImageManualProcessArgs) { - const isImageProcessActive = this.isImageProcessActive(isAutoImageProcessingActive, imageManualProcessArgs); - if (!isImageProcessActive) { - this.removeImageLayer(); - return; - } - // else - this.createImageLayer([isAutoImageProcessingActive, imageManualProcessArgs]); - const hasRasterLayer = this.getExistingRasterLayer(); - if (Boolean(hasRasterLayer)) { - // auto - this.setAutoImageProcessing(isAutoImageProcessingActive); - // manual - if (!isAutoImageProcessingActive) { - this._imageProcessing.processImage(imageManualProcessArgs); - } - } - } - - defaultImageManualProcessArgs(): IImageManualProcessArgs { - return this.params.reduce((initialObject: any, imageProcParam: IImageProcParam) => { - return { ...initialObject, [imageProcParam.name]: imageProcParam.defaultValue }; - }, {}); - } - - isImageProcessActive(isAutoImageProcessingActive: boolean, imageManualProcessArgs: IImageManualProcessArgs) { - const defaultManualParams = this.defaultImageManualProcessArgs(); - const result = isAutoImageProcessingActive || (Boolean(imageManualProcessArgs) && !isEqual(defaultManualParams, imageManualProcessArgs)); - return result; - } - - onResetView(): Observable { - this.setCustomMainLayer(null); - return of(true).pipe( - tap(() => this.recalculateManualImageProcessActive()) - ); - } - - recalculateManualImageProcessActive() { - this._imageProcessing = new OpenLayersImageProcessing(); - // todo: add get new image settings from store - } - - setCustomMainLayer(layer) { - if (!isEqual(this.getMainLayer(), layer)) { - this.removeImageLayer(); - } - this.customMainLayer = layer; - } - - getMainLayer(): any { - const baseMapLayer = (this.iMap).getLayerByName(IMAGERY_BASE_MAP_LAYER); - const mainLayer = Boolean(baseMapLayer) ? baseMapLayer : this.communicator.ActiveMap.getMainLayer(); - return Boolean(this.customMainLayer) ? this.customMainLayer : mainLayer; - } - - public setAutoImageProcessing(shouldPerform: boolean): void { - if (shouldPerform) { - // the determine the order which by the image processing will occur - const processingParams = { - Histogram: { auto: true }, - Sharpness: { auto: true } - }; - this._imageProcessing.processImage(processingParams); - } else { - this._imageProcessing.processImage(null); - } - } - - createImageLayer([isAutoImageProcessingActive, imageManualProcessArgs]: [boolean, IImageManualProcessArgs]) { - this.imageLayer = this.getExistingRasterLayer(); - if (this.imageLayer) { - return; - } - - const mainLayer = this.getMainLayer(); - const imageLayer = mainLayer.get(IMAGE_PROCESS_ATTRIBUTE); - if (!imageLayer) { - return; - } - - this.communicator.ActiveMap.addLayer(imageLayer); - this.imageLayer = imageLayer; - this.imageLayer.setZIndex(0); - this._imageProcessing = new OpenLayersImageProcessing(this.imageLayer.getSource()); - } - - removeImageLayer(): void { - this.imageLayer = this.getExistingRasterLayer(); - if (this.imageLayer) { - this.communicator.ActiveMap.removeLayer(this.imageLayer); - this._imageProcessing = new OpenLayersImageProcessing(); - this.imageLayer = null; - } - } - - getExistingRasterLayer(): ImageLayer { - const layers = this.communicator.ActiveMap.getLayers(); - const imageLayer = layers.find((layer) => { - if (layer.type && layer.type === 'IMAGE') { // for component - const source = layer.getSource(); - return source instanceof ProjectableRaster; - } - return false; - }); - return imageLayer; - } - - onDispose() { - if (this.mapLayerChangedSubscription) { - this.mapLayerChangedSubscription.unsubscribe(); - this.mapLayerChangedSubscription = null; - } - super.onDispose(); - } -} diff --git a/src/app/@ansyn/ol/plugins/image-processing/image-processing.ts b/src/app/@ansyn/ol/plugins/image-processing/image-processing.ts deleted file mode 100644 index 666aef24d3..0000000000 --- a/src/app/@ansyn/ol/plugins/image-processing/image-processing.ts +++ /dev/null @@ -1,383 +0,0 @@ -import { ProjectableRaster } from '../../maps/open-layers-map/models/projectable-raster'; - -export const IMG_PROCESS_ORDER = [ - { ArgumentName: 'Histogram', skipOnValue: 0 }, - { ArgumentName: 'Gamma', skipOnValue: 100 }, - { ArgumentName: 'Contrast', skipOnValue: 0 }, - { ArgumentName: 'Saturation', skipOnValue: 100 }, - { ArgumentName: 'Brightness', skipOnValue: 0 }, - { ArgumentName: 'Sharpness', skipOnValue: 0, perImage: true } -]; - -interface IProcessOperation { - type: string, - args: any -} - -// design based on : https://openlayers.org/en/latest/examples/raster.html -export class OpenLayersImageProcessing { - private _libs: Object; - private _raster: ProjectableRaster | any; - - constructor(layerSource?: ProjectableRaster) { - this.initializeOperations(); - if (layerSource) { - this.initializeRaster(layerSource); - } - } - - initializeRaster(layerRaster: ProjectableRaster) { - this._raster = layerRaster; - // register pixelOperations to raster event - this._raster.on('beforeoperations', (event) => { - const eve = event; - // to hack compile error - eve.data.pixelOperations = this._raster.get('pixelOperations'); - eve.data.imageOperations = this._raster.get('imageOperations'); - }); - // set a raster operation - this._raster.setOperation(cascadeOperations, this._libs); - - } - - initializeOperations() { - this._libs = { - // general functions - buildHistogramLut: buildHistogramLut, - normalizeColor: normalizeColor, - fillArray: fillArray, - rgb2YCbCr: rgb2YCbCr, - yCbCr2RGB: yCbCr2RGB, - forEachRGBPixel: forEachRGBPixel, - getFunctionByArgument: getFunctionByArgument, - // per pixel operations - performHistogram: performHistogram, - performGamma: performGamma, - performContrast: performContrast, - performSaturation: performSaturation, - performBrightness: performBrightness, - // all pixels (entire image) operations - performSharpness: performSharpness - }; - } - - processImage(operationsArguments: Object) { - if (!this._raster) { - return; - } - // collection operation by processingParams - const pixelOperations: IProcessOperation[] = []; - const imageOperations: IProcessOperation[] = []; - - // collect parameters in processing order - IMG_PROCESS_ORDER.forEach(operation => { - // operationsArguments has provided (for example: {Brightness: 34} ) - if (operationsArguments && operationsArguments.hasOwnProperty(operation.ArgumentName)) { - // add operation to pixelOperations in order - const operationArgs = operationsArguments[operation.ArgumentName]; - // if provided argument equal to skip (default) value - skip processing for this parameter - if (operationArgs !== operation.skipOnValue) { - if (operation['perImage']) { - imageOperations.push({ - type: operation.ArgumentName, - args: operationArgs - }); - } else { - pixelOperations.push({ - type: operation.ArgumentName, - args: operationArgs - }); - } - } - } - }); - - // set operations parameters - this._raster.set('pixelOperations', pixelOperations); - this._raster.set('imageOperations', imageOperations); - this._raster.changed(); - } -} - -// ------ General Operation Start ------ // -function cascadeOperations(pixels, data) { - const pixelOperations = data.pixelOperations; - const imageOperations = data.imageOperations; - const imageData = pixels[0]; - const that = this; - const conversionFn: { fn, args }[] = []; - let outputImageData = imageData; - - if (pixelOperations) { - // collect per-pixel operations (function + arguments) - Object.keys(pixelOperations).forEach(key => { - const operation = pixelOperations[key]; - const operationFn = that.getFunctionByArgument(operation.type); - let operationArgs = operation.args; - if (operationFn) { - if (operation.type === 'Histogram') { - operationArgs = that.buildHistogramLut(imageData, operationArgs); - } - conversionFn.push({ - fn: operationFn.bind(that), - args: operationArgs - }); - } - }); - // run per-pixel operations - outputImageData = that.forEachRGBPixel(imageData, conversionFn); - } - if (imageOperations) { - // run image operations (process all pixel at once) - Object.keys(imageOperations).forEach(key => { - const operation = imageOperations[key]; - const operationFn = that.getFunctionByArgument(operation.type); - outputImageData = operationFn(outputImageData, operation.args); - }); - } - return outputImageData; -} - -function getFunctionByArgument(arg) { - switch (arg) { - case 'Histogram': - return this['performHistogram']; - case 'Gamma': - return this['performGamma']; - case 'Contrast': - return this['performContrast']; - case 'Saturation': - return this['performSaturation']; - case 'Brightness': - return this['performBrightness']; - case 'Sharpness': - return this['performSharpness']; - } - return null; -} - -function fillArray(size, item) { - if (Array.prototype.fill) { - return new Array(size).fill(item); - } - const array = []; - for (let i = 0; i < size; i++) { - array[i] = item; - } - return array; -} - -// ------ General Operation End ------ // - -// ------ Histogram Start ------ // - -function rgb2YCbCr(rgb): { y: number, cb, cr } { - const y = 16 + 0.257 * rgb.r + 0.504 * rgb.g + 0.098 * rgb.b; - const cb = 128 - 0.148 * rgb.r - 0.291 * rgb.g + 0.439 * rgb.b; - const cr = 128 + 0.439 * rgb.r - 0.368 * rgb.g - 0.071 * rgb.b; - - return { y, cb, cr }; -} - -function yCbCr2RGB(yCbCr): any { - const yNorm = yCbCr.y - 16; - const cbNorm = yCbCr.cb - 128; - const crNorm = yCbCr.cr - 128; - - const r = 1.164 * yNorm + 1.596 * crNorm; - const g = 1.164 * yNorm - 0.392 * cbNorm - 0.813 * crNorm; - const b = 1.164 * yNorm + 2.017 * cbNorm; - - return { r, g, b }; -} - -function buildHistogramLut(imageData) { - const BANDS = 4, CUTEDGE = 85, MAXBIT = 256; - const histogram = this['fillArray'](MAXBIT, 0); - const { width, height, data } = imageData; - for ( let i = 0; i < data.length; i += BANDS) { - const [r, g, b] = data.subarray(i, i + BANDS); - histogram[g]++; - } - const totalPixels = width * height; - let minPixel = 0, maxPixel = 0, pixelsSoFar = 0; - for (let i = 0; i < MAXBIT; i++) { - minPixel = i; - pixelsSoFar += histogram[i]; - if (pixelsSoFar > totalPixels / CUTEDGE) { - break; - } - } - pixelsSoFar = 0; - for (let i = 0; i < MAXBIT; i++) { - maxPixel = 255 - i; - pixelsSoFar += histogram[255 - i]; - if (pixelsSoFar > totalPixels / CUTEDGE) { - break; - } - } - return this['fillArray'](MAXBIT, 0).map( (val, index) => { - return this['normalizeColor'](255 * (index - minPixel) / (maxPixel - minPixel)); - }); -} - -function performHistogram(pixel, histogramLut) { - return { - r: histogramLut[pixel.r], - g: histogramLut[pixel.g], - b: histogramLut[pixel.b], - a: pixel.a - }; -} - -// ------ Histogram Equalization End ------ // - -// ------ Sharpness Start ------ // -// based on: Convolving images -// https://www.html5rocks.com/en/tutorials/canvas/imagefilters/ -function performSharpness(imageData, args) { - const AUTO_SHARPNESS = 50; - - function getWeights(sharpness: number) { - // matrix sum should be equal to 1 to maintain the brightness - const s = sharpness / 10; - const t = -((s - 1) / 4); - return [0, t, 0, - t, s, t, - 0, t, 0]; - } - - let weights = (args.auto) ? getWeights(AUTO_SHARPNESS) : getWeights(args); - - const side = Math.round(Math.sqrt(weights.length)); - const halfSide = Math.floor(side / 2); - const pixels = imageData.data; - const imageWidth = imageData.width; - const imageHeight = imageData.height; - - const destPixels = []; - - for (let y = 0; y < imageHeight; y++) { - for (let x = 0; x < imageWidth; x++) { - const dstOff = (y * imageWidth + x) * 4; - - let r = 0, g = 0, b = 0; - for (let cy = 0; cy < side; cy++) { - for (let cx = 0; cx < side; cx++) { - const scy = y + cy - halfSide; - const scx = x + cx - halfSide; - if (scy >= 0 && scy < imageHeight && scx >= 0 && scx < imageWidth) { - const srcOff = (scy * imageWidth + scx) * 4; - const wt = weights[cy * side + cx]; - r += pixels[srcOff] * wt; - g += pixels[srcOff + 1] * wt; - b += pixels[srcOff + 2] * wt; - } - } - } - - destPixels[dstOff] = this['normalizeColor'](r); - destPixels[dstOff + 1] = this['normalizeColor'](g); - destPixels[dstOff + 2] = this['normalizeColor'](b); - destPixels[dstOff + 3] = pixels[dstOff + 3]; - } - } - - for (let index = 0; index < imageData.data.length; index++) { - imageData.data[index] = destPixels[index]; - } - return imageData; -} - -function normalizeColor(color) { - if (color < 0) { - return 0; - } else if (color > 255) { - return 255; - } else { - return color; - } -} - -// ------ Sharpness End ------ // - -// ------ Contrast start ------ // -function performContrast(pixel, contrast) { - const factor = (259 * (contrast + 255)) / (255 * (259 - contrast)); - return { - r: factor * (pixel.r - 128) + 128, - g: factor * (pixel.g - 128) + 128, - b: factor * (pixel.b - 128) + 128, - a: pixel.a - }; -} - -// ------ Contrast End ------ // - -// ------ Brightness start ------ // -function performBrightness(pixel, brightness) { - return { - r: pixel.r + brightness, - g: pixel.g + brightness, - b: pixel.b + brightness, - a: pixel.a - }; -} - -// ------ Brightness End ------ // - -// ------ Gamma start ------ // -// based on: -// http://www.dfstudios.co.uk/articles/programming/image-programming-algorithms/image-processing-algorithms-part-6-gamma-correction/ -function performGamma(pixel, gamma) { - // const DEFAULT_VALUE = 1; - // gamma sent range [1-200], should be converted to [0.01-2.00], hence gamma / 100 - const gammaCorrection = 1 / (gamma / 100); - return { - r: 255 * Math.pow((pixel.r / 255), gammaCorrection), - g: 255 * Math.pow((pixel.g / 255), gammaCorrection), - b: 255 * Math.pow((pixel.b / 255), gammaCorrection), - a: pixel.a - }; -} - -// ------ Gamma End ------ // - -// ------ Saturation start ------ // -// based on: -// https://stackoverflow.com/questions/13348129/using-native-javascript-to-desaturate-a-colour -function performSaturation(pixel, saturation) { - // saturation sent range [1-100], should be converted to [0.01-1.00], hence saturation / 100 - saturation = saturation / 100; - const gray = pixel.r * 0.3086 + pixel.g * 0.6094 + pixel.b * 0.0820; // gray range [1-255] - return { - r: Math.round(pixel.r * saturation + gray * (1 - saturation)), - g: Math.round(pixel.g * saturation + gray * (1 - saturation)), - b: Math.round(pixel.b * saturation + gray * (1 - saturation)), - a: pixel.a - }; -} - -// ------ Saturation End ------ // -// process a list of operation on each pixel -function forEachRGBPixel(imageData, conversionFn: Array) { - const pixel = { r: 0, g: 0, b: 0, a: 0 }; - let convertedPixel; - - for (let index = 0; index < imageData.data.length; index += 4) { - pixel.r = imageData.data[index]; - pixel.g = imageData.data[index + 1]; - pixel.b = imageData.data[index + 2]; - pixel.a = imageData.data[index + 3]; - // do conversion - convertedPixel = pixel; - conversionFn.forEach(fnData => convertedPixel = fnData.fn(convertedPixel, fnData.args)); - - imageData.data[index] = convertedPixel.r; // Red - imageData.data[index + 1] = convertedPixel.g; // Green - imageData.data[index + 2] = convertedPixel.b; // Blue - imageData.data[index + 3] = convertedPixel.a; // Alpha - } - - return imageData; -} diff --git a/src/app/@ansyn/ol/plugins/image-processing/model.ts b/src/app/@ansyn/ol/plugins/image-processing/model.ts deleted file mode 100644 index 20f2d253f9..0000000000 --- a/src/app/@ansyn/ol/plugins/image-processing/model.ts +++ /dev/null @@ -1,59 +0,0 @@ -import { cloneDeep } from 'lodash'; - -export interface IImageManualProcessArgs { - Brightness?: number; - Contrast?: number; - Gamma?: number; - Saturation?: number; - Sharpness?: number; -} - -export interface IImageProcessingData { - isAutoImageProcessingActive?: boolean; - imageManualProcessArgs?: IImageManualProcessArgs; -} - -export interface IImageProcParam { - name: string, - defaultValue: number, - min: number, - max: number -} - - -const defaultImageProcParams: IImageProcParam[] = [ - { - 'name': 'Sharpness', - 'defaultValue': 0, - 'min': 0, - 'max': 100 - }, - { - 'name': 'Contrast', - 'defaultValue': 0, - 'min': -100, - 'max': 100 - }, - { - 'name': 'Brightness', - 'defaultValue': 0, - 'min': -100, - 'max': 100 - }, - { - 'name': 'Gamma', - 'defaultValue': 100, - 'min': 1, - 'max': 200 - }, - { - 'name': 'Saturation', - 'defaultValue': 100, - 'min': 1, - 'max': 100 - } -]; - -export function getDefaultImageProcParams(): IImageProcParam[] { - return cloneDeep(defaultImageProcParams); -} diff --git a/src/app/@ansyn/ol/plugins/measure-ruler/measure-ruler.visualizer.ts b/src/app/@ansyn/ol/plugins/measure-ruler/measure-ruler.visualizer.ts deleted file mode 100644 index 4f85c96a90..0000000000 --- a/src/app/@ansyn/ol/plugins/measure-ruler/measure-ruler.visualizer.ts +++ /dev/null @@ -1,602 +0,0 @@ -import Feature from 'ol/Feature'; -import Draw from 'ol/interaction/Draw'; -import Translate from 'ol/interaction/Translate'; -import Text from 'ol/style/Text'; -import Fill from 'ol/style/Fill'; -import Style from 'ol/style/Style'; -import Stroke from 'ol/style/Stroke'; -import Circle from 'ol/style/Circle'; -import Point from 'ol/geom/Point'; -import MultiPoint from 'ol/geom/MultiPoint'; -import LineString from 'ol/geom/LineString'; -import { LineString as geoJsonLineString } from 'geojson'; -import VectorSource from 'ol/source/Vector'; -import * as Sphere from 'ol/sphere'; -import GeoJSON from 'ol/format/GeoJSON'; -import * as condition from 'ol/events/condition'; -import Select from 'ol/interaction/Select'; -import { UUID } from 'angular2-uuid'; -import { - getPointByGeometry, - ImageryVisualizer, - IVisualizerEntity, - IVisualizersConfig, - MarkerSize, - VisualizerInteractions, - VisualizerStates, - VisualizersConfig, - toDegrees -} from '@ansyn/imagery'; -import { FeatureCollection, GeometryObject } from 'geojson'; -import { Observable, Subject } from 'rxjs'; -import { take, tap } from 'rxjs/operators'; -import { Inject } from '@angular/core'; -import { EntitiesVisualizer } from '../entities-visualizer'; -import { OpenLayersProjectionService } from '../../projection/open-layers-projection.service'; -import { OpenLayersMap } from '../../maps/open-layers-map/openlayers-map/openlayers-map'; - -export interface ILabelHandler { - select: Select; - translate: Translate; -} - -@ImageryVisualizer({ - supported: [OpenLayersMap], - deps: [OpenLayersProjectionService, VisualizersConfig], - isHideable: true -}) -export class MeasureRulerVisualizer extends EntitiesVisualizer { - labelToMeasures: Map = new Map(); - isTotalMeasureActive: boolean; - isAzimuthAngleActive: boolean; - geoJsonFormat: GeoJSON; - interactionSource: VectorSource; - hoveredMeasureId: string; - onHiddenStateChanged = new Subject(); - azimuthDigitsAfterDot = 0; - measurePositionInEndPoint = true; - - protected allLengthTextStyle = new Text({ - font: '16px Calibri,sans-serif', - backgroundFill: new Fill({ - color: this.colorWithAlpha('#000000', 0.5), - }), - fill: new Fill({ - color: '#fff' - }), - stroke: new Stroke({ - color: '#000', - width: 3 - }), - offsetY: 30 - }); - protected editDistanceStyle = new Style({ - fill: new Fill({ - color: 'rgba(255, 255, 255, 0.2)' - }), - stroke: new Stroke({ - color: 'yellow', - lineDash: [10, 10], - width: 2 - }), - image: new Circle({ - radius: 5, - stroke: new Stroke({ - color: 'rgba(0, 0, 0, 0.7)' - }), - fill: new Fill({ - color: 'rgba(255, 255, 255, 0.2)' - }) - }), - zIndex: 3 - }); - - constructor(protected projectionService: OpenLayersProjectionService, - @Inject(VisualizersConfig) config: IVisualizersConfig) { - super(config.MeasureDistanceVisualizer, { - initial: { - stroke: '#3399CC', - 'stroke-width': 2, - fill: '#FFFFFF', - 'marker-size': MarkerSize.small, - 'marker-color': '#FFFFFF', - zIndex: 5 - }, - hover: { - stroke: '#ccb918', - 'stroke-width': 2, - fill: '#61ff55', - 'marker-size': MarkerSize.small, - 'marker-color': '#ff521a', - zIndex: 5 - } - }); - this.isTotalMeasureActive = config.MeasureDistanceVisualizer.extra.isTotalMeasureActive; - this.isAzimuthAngleActive = (config && config.MeasureDistanceVisualizer && config.MeasureDistanceVisualizer.extra && config.MeasureDistanceVisualizer.extra.isAzimuthAngleActive) || true; - this.geoJsonFormat = new GeoJSON(); - } - - onInitSubscriptions() { - super.onInitSubscriptions(); - this.onHiddenStateChanged.next(); - } - - enableRuler(activate: boolean) { - if (activate) { - this.createDrawInteraction(); - } else { - this.removeDrawInteraction(); - } - } - - startDeleteSingleEntity(activate: boolean) { - if (activate) { - this.createHoverForDeleteInteraction(); - this.createClickDeleteInteraction(); - } else { - this.removeHoverForDeleteInteraction(); - this.removeClickDeleteInteraction(); - } - } - - clearRulerEntities() { - this.clearEntities(); - this.setLabelsFeature([]); - } - - get drawInteractionHandler() { - return this.interactions.get(VisualizerInteractions.drawInteractionHandler); - } - - // override base method - setVisibility(isVisible: boolean) { - super.setVisibility(isVisible); - this.onHiddenStateChanged.next(); - } - - createHoverForDeleteInteraction() { - this.removeHoverForDeleteInteraction(); - const pointerMove = new Select({ - condition: condition.pointerMove, - style: this.hoverStyle.bind(this), - layers: [this.vector] - }); - pointerMove.on('select', this.onHoveredFeature.bind(this)); - this.addInteraction(VisualizerInteractions.pointerMove, pointerMove); - } - - onHoveredFeature($event) { - if ($event.selected.length > 0) { - this.hoveredMeasureId = $event.selected[0].getId(); - } else { - this.hoveredMeasureId = null; - } - } - - removeHoverForDeleteInteraction() { - this.removeInteraction(VisualizerInteractions.pointerMove); - } - - createClickDeleteInteraction() { - this.removeClickDeleteInteraction(); - const click = new Select({ - condition: condition.click, - style: () => new Style({}), - layers: [this.vector] - }); - click.on('select', this.onClickDeleteFeature.bind(this)); - this.addInteraction(VisualizerInteractions.click, click); - } - - onClickDeleteFeature($event) { - if ($event.selected.length > 0 && this.hoveredMeasureId === $event.selected[0].getId()) { - const feature = $event.selected[0]; - const entity = this.getEntity(feature); - if (entity) { - this.clearLabelInteractionsAndFeaturesById(entity.id); - this.afterEntityDeleted(entity); - this.hoveredMeasureId = null; - } - } - } - - afterEntityDeleted(entity: IVisualizerEntity) { - this.removeEntity(entity.id); - - const entities = this.getEntities(); - this.setLabelsFeature(entities); - } - - removeClickDeleteInteraction() { - this.removeInteraction(VisualizerInteractions.click); - } - - getSinglePointLengthTextStyle(): Text { - return new Text({ - font: '14px Calibri,sans-serif', - fill: new Fill({ - color: '#FFFFFF' - }), - backgroundFill: new Fill({ - color: this.colorWithAlpha('#000000', 0.5), - }), - stroke: new Stroke({ - color: '#000', - width: 3 - }), - offsetY: 30 - }); - } - - onResetView(): Observable { - return super.onResetView() - .pipe(tap(() => { - if (this.drawInteractionHandler) { - this.createDrawInteraction(); - } - })); - } - - protected initLayers() { - super.initLayers(); - } - - createDrawInteraction(type = 'LineString') { - this.removeDrawInteraction(); - - this.interactionSource = new VectorSource({ wrapX: false }); - - const drawInteractionHandler = new Draw({ - source: this.interactionSource, - type: type, - condition: (event) => event.originalEvent.which === 1, - style: this.drawFeatureStyle.bind(this) - }); - - drawInteractionHandler.on('drawend', this.onDrawEndEvent.bind(this)); - this.addInteraction(VisualizerInteractions.drawInteractionHandler, drawInteractionHandler); - } - - removeDrawInteraction() { - this.removeInteraction(VisualizerInteractions.drawInteractionHandler); - } - - get isRulerEnabled(): boolean { - return this.interactions.has(VisualizerInteractions.drawInteractionHandler); - } - - get isRulerRemoveEntitiesEnabled(): boolean { - return this.interactions.has(VisualizerInteractions.pointerMove); - } - - onDrawEndEvent(data) { - this.projectionService.projectCollectionAccurately([data.feature], this.iMap.mapObject) - .subscribe((featureCollection: FeatureCollection) => { - const [featureJson] = featureCollection.features; - const newEntity: IVisualizerEntity = { - id: UUID.UUID(), - featureJson - }; - this.afterDrawEndEvent(newEntity); - }); - } - - afterDrawEndEvent(entity: IVisualizerEntity) { - this.addOrUpdateEntities([entity]).pipe(take(1)).subscribe(); - - const entities = this.getEntities(); - this.setLabelsFeature(entities); - } - - protected setLabelsFeature(entities: IVisualizerEntity[]) { - if (!entities.length) { - this.source.clear(); - this.clearLabelInteractions(); - this.labelToMeasures.clear(); - } - - // add new measures - entities - .filter((measure: IVisualizerEntity) => !this.labelToMeasures.has(measure.id)) - .forEach((measure: IVisualizerEntity) => { - const feature = this.source.getFeatureById(measure.id); - const labelsFeatures = this.createMeasureLabelsFeatures(feature, measure.featureJson.geometry); - const labelHandler: ILabelHandler = this.defineLabelsTranslate(labelsFeatures); - this.iMap.mapObject.addInteraction(labelHandler.select); - this.iMap.mapObject.addInteraction(labelHandler.translate); - this.labelToMeasures.set(measure.id, { features: labelsFeatures, handler: labelHandler }); - this.source.addFeatures(labelsFeatures); - }) - } - - featurePointsStyle(initial) { - const pointsStyle = new Style({ - image: new Circle({ - radius: 5, - stroke: new Stroke({ - color: initial.stroke, - width: initial['stroke-width'] - }), - fill: new Fill({ color: initial.fill }) - }), - geometry: function (feature) { - // return the coordinates of the first ring of the polygon - const coordinates = (feature.getGeometry()).getCoordinates(); - return new MultiPoint(coordinates); - } - }); - return pointsStyle; - } - - featureStrokeStyle(initial) { - const stroke = new Style({ - stroke: new Stroke({ - color: initial.stroke, - width: initial['stroke-width'] - }) - }); - return stroke; - } - - // The feature after created - featureStyle(feature: Feature, state: string = VisualizerStates.INITIAL) { - return this.measurementMainStyle(); - } - - // Style in draw mode - drawFeatureStyle(feature: Feature) { - const styles = this.getMeasureTextStyle(feature); - styles.push(this.editDistanceStyle); - return styles; - } - - measurementMainStyle() { - const { initial } = this.visualizerStyle; - const styles = [this.featureStrokeStyle(initial)]; - styles.push(this.featurePointsStyle(initial)); - return styles; - } - - hoverStyle(feature) { - const styles = [new Style({ - stroke: new Stroke({ - color: this.visualizerStyle.hover.stroke, - width: this.visualizerStyle.hover['stroke-width'] - }) - })]; - // Points - const pointsStyle = new Style({ - image: new Circle({ - radius: 5, - stroke: new Stroke({ - color: this.visualizerStyle.hover.stroke, - width: this.visualizerStyle.hover['stroke-width'] - }), - fill: new Fill({ color: this.visualizerStyle.hover.fill }) - }), - geometry: function (feature) { - // return the coordinates of the first ring of the polygon - const coordinates = (feature.getGeometry()).getCoordinates(); - return new MultiPoint(coordinates); - } - }); - styles.push(pointsStyle); - return styles; - } - - // points string styles - getMeasureTextStyle(feature: Feature, calculateCenterOfMass = false) { - const styles = []; - const geometry = feature.getGeometry(); - - if (geometry.getType() === 'Point') { - return styles; - } - const view = (this.iMap.mapObject).getView(); - const projection = view.getProjection(); - - // text points - const length = geometry.getCoordinates().length; - if (length > 2) { - geometry.forEachSegment((start, end) => { - const lineString = new LineString([start, end]); - const textPosition = this.getMeasurePosition(start, end); - const segmentLengthText = this.measureApproximateLength(lineString, projection); - - const singlePointLengthTextStyle = this.getSinglePointLengthTextStyle(); - - if (this.isAzimuthAngleActive) { - // find azimuth - const angle = this.getAzimuth(start, end); - singlePointLengthTextStyle.setText(angle + String.fromCharCode(176) + '\n' + segmentLengthText); - } else { - singlePointLengthTextStyle.setText(segmentLengthText); - } - - styles.push(new Style({ - geometry: new Point(<[number, number]>textPosition.coordinates), - text: singlePointLengthTextStyle - })); - }); - } - if (this.isTotalMeasureActive || length === 2) { - const coords = geometry.getCoordinates(); - // all line string - let position; - const allLengthText = this.measureApproximateLength(geometry, projection); - if (this.isAzimuthAngleActive && length === 2) { - // find azimuth - const angle = this.getAzimuth(coords[0], coords[1]); - this.allLengthTextStyle.setText(angle + String.fromCharCode(176) + '\n' + String.fromCharCode(931) + ' ' + allLengthText); - position = this.getMeasurePosition(coords[0], coords[coords.length - 1]); - } else { - this.allLengthTextStyle.setText(String.fromCharCode(931) + ' ' + allLengthText) - position = { - type: 'Point', - coordinates: coords[0] - }; - } - const allLinePoint = new Point(<[number, number]>position.coordinates); - styles.push(new Style({ - geometry: allLinePoint, - text: this.allLengthTextStyle - })); - } - return styles; - } - - getMeasurePosition(sourceCoords: [number, number], destCoords: [number, number]): Point { - let textPosition: Point; - if (!this.measurePositionInEndPoint) { - textPosition = getPointByGeometry({ - type: 'LineString', - coordinates: [sourceCoords, destCoords] - }); - } else { // at the end - textPosition = { - type: Point.type, - coordinates: destCoords - } - } - return textPosition; - } - - protected createMeasureLabelsFeatures(feature, featureGeoJson: geoJsonLineString) { - // @TODO: try to make this and getMeasureTextStyle one function - const features = []; - const geometry = feature.getGeometry(); - - // text points - const coordinates = geometry.getCoordinates(); - const length = coordinates.length; - if (length > 2) { - for (let i = 0; i < featureGeoJson.coordinates.length - 1; i++) { - const textPosition = this.getMeasurePosition(coordinates[i], coordinates[i + 1]); - const segmentLengthText = this.formatLength([featureGeoJson.coordinates[i], featureGeoJson.coordinates[i + 1]]); - const singlePointLengthTextStyle = this.getSinglePointLengthTextStyle(); - - if (this.isAzimuthAngleActive) { - // find azimuth - const angle = this.getAzimuth(featureGeoJson.coordinates[i], featureGeoJson.coordinates[i + 1]); - singlePointLengthTextStyle.setText(angle + String.fromCharCode(176) + '\n' + segmentLengthText); - } else { - singlePointLengthTextStyle.setText(segmentLengthText); - } - const labelFeature = new Feature({ - geometry: new Point(<[number, number]>textPosition.coordinates), - }); - labelFeature.setStyle(new Style({ - text: singlePointLengthTextStyle - })); - features.push(labelFeature); - } - } - - if (this.isTotalMeasureActive || length === 2) { - // all line string - let textPosition; - const allLengthText = this.formatLength(featureGeoJson.coordinates); - if (this.isAzimuthAngleActive && length === 2) { - // find azimuth - const angle = this.getAzimuth(coordinates[0], coordinates[coordinates.length - 1]); - this.allLengthTextStyle.setText(angle + String.fromCharCode(176) + '\n' + String.fromCharCode(931) + ' ' + allLengthText); - textPosition = this.getMeasurePosition(coordinates[0], coordinates[coordinates.length - 1]); - } else { - this.allLengthTextStyle.setText(String.fromCharCode(931) + ' ' + allLengthText); - textPosition = { - type: Point.type, - coordinates: coordinates[0] - }; - } - const lengthText = this.allLengthTextStyle.clone(); - const labelFeature = new Feature({ - geometry: new Point(textPosition.coordinates) - }); - labelFeature.setStyle(new Style({ - text: lengthText - })); - features.push(labelFeature); - } - features.forEach(feature => feature.setId(UUID.UUID())); - return features; - } - - getAzimuth(source, dest) { - const rad = Math.atan2((dest[0] - source[0]), (dest[1] - source[1])); - let deg = toDegrees(rad); - deg = (deg + 360) % 360; - return deg.toFixed(this.azimuthDigitsAfterDot); - } - - clearLabelInteractions() { - if (this.labelToMeasures && this.labelToMeasures.size) { - const labelToMeasureIterator = this.labelToMeasures.values(); - let val = labelToMeasureIterator.next().value; - while (val) { - this.iMap.mapObject.removeInteraction(val.handler.select); - this.iMap.mapObject.removeInteraction(val.handler.translate); - val = labelToMeasureIterator.next().value; - } - } - } - - clearLabelInteractionsAndFeaturesById(id: string) { - if (!this.labelToMeasures.has(id)) { - return; - } - - const measureLabels = this.labelToMeasures.get(id); - this.iMap.mapObject.removeInteraction(measureLabels.handler.translate); - this.iMap.mapObject.removeInteraction(measureLabels.handler.select); - measureLabels.features.forEach((feature) => { - this.source.removeFeature(feature); - }) - } - - protected defineLabelsTranslate(labelsFeatures: Feature[]): ILabelHandler { - const handler: ILabelHandler = { select: undefined, translate: undefined }; - handler.select = new Select({ - condition: (event) => event.type === 'pointermove' && !event.dragging, - style: (event) => { - if (event.getGeometry().getType() === 'LineString') { - return event.styleCache; - } - return new Style({}) - }, - filter: (feature, layer) => { - return labelsFeatures.indexOf(feature) >= 0 || Array.from(this.labelToMeasures).some((labelMeasure => labelMeasure[1].features.indexOf(feature) >= 0)); - } - }); - handler.translate = new Translate({ - features: handler.select.getFeatures() - }); - - return handler; - } - - /** - * Format length output. - * @param line The line. - * @param projection The Projection. - */ - measureApproximateLength(line, projection): string { - const length = Sphere.getLength(line, { projection: projection }); - let output; - if (length >= 1000) { - output = (Math.round(length / 1000 * 100) / 100) + - ' ' + 'km'; - } else { - output = (Math.round(length * 100) / 100) + - ' ' + 'm'; - } - return output; - }; - - onDispose(): void { - this.clearLabelInteractions(); - this.removeInteraction(VisualizerInteractions.drawInteractionHandler); - this.removeInteraction(VisualizerInteractions.pointerMove); - this.removeInteraction(VisualizerInteractions.click); - super.onDispose(); - } -} diff --git a/src/app/@ansyn/ol/plugins/plugins.config.ts b/src/app/@ansyn/ol/plugins/plugins.config.ts deleted file mode 100644 index b15a9068b0..0000000000 --- a/src/app/@ansyn/ol/plugins/plugins.config.ts +++ /dev/null @@ -1,7 +0,0 @@ -export const OL_PLUGINS_CONFIG = 'olPluginsConfig'; - -export interface IOLPluginsConfig { - Annotations: { - displayId: '0' | '1'; - } -} diff --git a/src/app/@ansyn/ol/projection/free-layer-projection.ts b/src/app/@ansyn/ol/projection/free-layer-projection.ts deleted file mode 100644 index 47febea931..0000000000 --- a/src/app/@ansyn/ol/projection/free-layer-projection.ts +++ /dev/null @@ -1,44 +0,0 @@ -import TileLayer from 'ol/layer/Tile'; -import { add, get as getProjection } from 'ol/proj/projections'; -import { remove as removeTransformFunc, get as getTransform } from 'ol/proj/transforms'; -import { EPSG_3857, EPSG_4326 } from '@ansyn/imagery'; - -TileLayer.prototype.disposeLayer = (layer) => { - function removeTransform(fromProjectionCode, toProjection) { - const toProjectionCode = toProjection.getCode(); - const fromProjection = getProjection(fromProjectionCode); - let isExistTransform = getTransform(fromProjectionCode, toProjectionCode); - if (isExistTransform) { - removeTransformFunc(fromProjection, toProjection); - } - isExistTransform = getTransform(toProjectionCode, fromProjectionCode); - if (isExistTransform) { - removeTransformFunc(toProjection, fromProjection); - } - } - - const source = layer.getSource(); - if (Boolean(source)) { - let projection = source.projection || source.getProjection(); - const code = projection && projection.getCode(); - if (!projection || !Boolean(code) || code === EPSG_4326 || code === EPSG_3857) { - return; - } - - removeTransform(EPSG_4326, projection); - removeTransform(EPSG_3857, projection); - removeTransform(code, projection); - - if (projection.tag) { - projection.tag.dispose(); - delete (projection.tag); - projection.tag = undefined; - } - - if (projection && projection.dispose) { - projection.dispose(); - } - projection = undefined; - add(code, undefined); - } -}; diff --git a/src/app/@ansyn/ol/projection/open-layers-projection.service.ts b/src/app/@ansyn/ol/projection/open-layers-projection.service.ts deleted file mode 100644 index 5785cb3f2c..0000000000 --- a/src/app/@ansyn/ol/projection/open-layers-projection.service.ts +++ /dev/null @@ -1,80 +0,0 @@ -import { Injectable } from '@angular/core'; -import { CommunicatorEntity, EPSG_4326, getNewPoint, ProjectionService } from '@ansyn/imagery'; -import { Observable, of } from 'rxjs'; -import { FeatureCollection, GeometryObject, Point } from 'geojson'; -import * as proj from 'ol/proj'; -import OLGeoJSON from 'ol/format/GeoJSON'; -import './free-layer-projection'; - -@Injectable({ - providedIn: 'root' -}) -export class OpenLayersProjectionService extends ProjectionService { - - private olGeoJSON: OLGeoJSON = new OLGeoJSON(); - - /* points */ - - projectAccurately(point: Point, mapObject: any): Observable { - return this.projectApproximately(point, mapObject); - } - - projectAccuratelyToImage(point: Point, mapObject: any): Observable { - return this.projectApproximatelyToImage(point, mapObject); - } - - projectApproximatelyToImage(point: Point, mapObject: any): Observable { - const projection = mapObject.getView().getProjection(); - const newPoint = getNewPoint(proj.fromLonLat(<[number, number]>point.coordinates, projection)); - return of(newPoint); - } - - projectApproximately(point: Point, mapObject: any): Observable { - const projection = mapObject.getView().getProjection(); - point.coordinates = proj.toLonLat(<[number, number]>point.coordinates, projection); - return of(point); - } - - projectApproximatelyFromProjection(point: Point, sourceProjection: string, destProjection: string): Observable { - if (sourceProjection === destProjection) { - return of(point); - } - // there is no direct proj transform from 2 pixel's projections - point.coordinates = proj.transform(<[number, number]>point.coordinates, sourceProjection, EPSG_4326); - point.coordinates = proj.transform(<[number, number]>point.coordinates, EPSG_4326, destProjection); - return of(point); - } - - /* collections */ - - projectCollectionAccuratelyToImage(featureCollection: FeatureCollection, mapObject: any): Observable { - return this.projectCollectionApproximatelyToImage(featureCollection, mapObject); - } - - - projectCollectionAccurately(features: olFeature[] | any, mapObject: any): Observable> { - return this.projectCollectionApproximately(features, mapObject); - } - - projectCollectionApproximatelyToImage(featureCollection: FeatureCollection, mapObject: any): Observable { - const view = mapObject.getView(); - const featureProjection = view.getProjection(); - const dataProjection = EPSG_4326; - const options = { featureProjection, dataProjection }; - const features: olFeature[] = this.olGeoJSON.readFeatures(featureCollection, options); - return of(features); - } - - projectCollectionApproximately(features: olFeature[] | any, mapObject: any): Observable> { - const featureProjection = mapObject.getView().getProjection(); - const dataProjection = EPSG_4326; - const options = { featureProjection, dataProjection }; - const geoJsonFeature = this.olGeoJSON.writeFeaturesObject(features, options); - return of(geoJsonFeature); - } - - getProjectionProperties(communicator: CommunicatorEntity, annotationLayer: any, feature: any, overlay: any): Object { - return undefined; - } - -} diff --git a/src/app/@ansyn/ol/public_api.ts b/src/app/@ansyn/ol/public_api.ts deleted file mode 100644 index a4b5ed36c8..0000000000 --- a/src/app/@ansyn/ol/public_api.ts +++ /dev/null @@ -1,68 +0,0 @@ -export { IImageProcParam, IImageManualProcessArgs, getDefaultImageProcParams } from './plugins/image-processing/model'; -export { ImageProcessingPlugin } from './plugins/image-processing/image-processing.plugin'; - -export { GridLinesVisualizer } from './plugins/grid-lines/grid-lines.visualizer'; - -export { MeasureRulerVisualizer, ILabelHandler } from './plugins/measure-ruler/measure-ruler.visualizer'; -export { IMAGE_PROCESS_ATTRIBUTE } from './mapSourceProviders/open-layers.map-source-provider'; - -export { OpenLayerESRI_4326SourceProviderSourceType } from './mapSourceProviders/open-layers-ESRI-4326-source-provider'; -export { OpenLayerPic4CartoSourceProvider } from './mapSourceProviders/open-layers-Pic4Carto-source-provider'; -export { IStyleWeight } from './plugins/annotations/annotations-context-menu/components/annotations-weight/annotations-weight.component'; -export { OpenLayersAirbusSourceProvider } from './mapSourceProviders/open-layers-Airbus-source-provider'; - -export { removeWorkers } from './maps/open-layers-map/shared/openlayers-shared'; - -export { ANNOTATION_MODE_LIST } from './plugins/annotations/annotations.model'; -export { OL_PLUGINS_CONFIG, IOLPluginsConfig } from './plugins/plugins.config'; -export { OL_CONFIG } from './config/ol-config'; -export { OpenLayerBingSourceProviderSourceType } from './mapSourceProviders/open-layers-BING-source-provider'; -export { EntitiesVisualizer } from './plugins/entities-visualizer'; -export { ProjectableRaster } from './maps/open-layers-map/models/projectable-raster'; -export { OpenLayersProjectionService } from './projection/open-layers-projection.service'; -export { DisabledOpenLayersMapName } from './maps/openlayers-disabled-map/openlayers-disabled-map'; -export { OpenlayersMapName } from './maps/open-layers-map/openlayers-map/openlayers-map'; -export { - OpenLayersStaticImageSourceProviderSourceType -}from './mapSourceProviders/open-layers-static-image-source-provider'; -export { OpenLayerMarcoSourceProviderSourceType } from './mapSourceProviders/marco/open-layers-MARCO-source-provider'; -export { OpenLayersMapSourceProvider } from './mapSourceProviders/open-layers.map-source-provider'; -export { OpenLayersMap } from './maps/open-layers-map/openlayers-map/openlayers-map'; -export { OpenLayersDisabledMap } from './maps/openlayers-disabled-map/openlayers-disabled-map'; -export { OpenLayerTileWMSSourceProvider } from './mapSourceProviders/open-layers-TileWMS-source-provider'; -export { OpenLayerMapBoxSourceProvider } from './mapSourceProviders/open-layers-MapBox-source-provider'; -export { OpenLayerOSMSourceProvider } from './mapSourceProviders/open-layers-OSM-source-provider'; -export { OpenLayerIDAHOSourceProvider } from './mapSourceProviders/open-layers-IDAHO-source-provider'; -export { OpenLayerPlanetSourceProvider } from './mapSourceProviders/open-layers-planet-source-provider'; -export { OpenLayerBingSourceProvider } from './mapSourceProviders/open-layers-BING-source-provider'; -export { OpenLayerESRI4326SourceProvider } from './mapSourceProviders/open-layers-ESRI-4326-source-provider'; -export { OpenLayerOpenAerialSourceProvider } from './mapSourceProviders/open-layers-open-aerial-source-provider'; -export { OpenLayersStaticImageSourceProvider } from './mapSourceProviders/open-layers-static-image-source-provider'; -export { OpenLayerMarcoSourceProvider } from './mapSourceProviders/marco/open-layers-MARCO-source-provider'; -export { OpenLayerGEESourceProvider } from './mapSourceProviders/open-layers-GEE-source-provider'; - -export { - AnnotationInteraction, - AnnotationMode, - IAnnotationBoundingRect, - IDrawEndEvent, - IUpdateFeatureEvent -} from './plugins/annotations/annotations.model'; - -export { AnnotationsVisualizer } from './plugins/annotations/annotations.visualizer'; -export { - AnnotationsColorComponent -}from './plugins/annotations/annotations-context-menu/components/annotations-color/annotations-color.component'; -export { - AnnotationsWeightComponent -}from './plugins/annotations/annotations-context-menu/components/annotations-weight/annotations-weight.component'; -export { - ColorPickerComponent -}from './plugins/annotations/annotations-context-menu/components/color-picker/color-picker.component'; -export { - AnnotationContextMenuComponent -} - from './plugins/annotations/annotations-context-menu/components/annotation-context-menu/annotation-context-menu.component'; -export { - AnnotationsContextMenuModule -}from './plugins/annotations/annotations-context-menu/annotations-context-menu.module'; diff --git a/src/app/@ansyn/ol/tsconfig.json b/src/app/@ansyn/ol/tsconfig.json deleted file mode 100644 index 41c80adab0..0000000000 --- a/src/app/@ansyn/ol/tsconfig.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "extends": "../../../../tsconfig.json", - "compilerOptions": { - "module": "commonjs", - "paths": { - "@ansyn/imagery": [ - "src/app/@ansyn/imagery/public_api" - ] - }, - "target": "es5", - "sourceMap": true - }, - "exclude": [ - "node_modules" - ] -} diff --git a/src/app/@ansyn/ol/tsconfig.lib.json b/src/app/@ansyn/ol/tsconfig.lib.json deleted file mode 100644 index a394e7fb82..0000000000 --- a/src/app/@ansyn/ol/tsconfig.lib.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "extends": "../../../../tsconfig.json", - "compilerOptions": { - "paths": { - "@ansyn/imagery": [ - "dist/ansyn/imagery" - ] - }, - "outDir": "../../../out-tsc/lib", - "target": "es2015", - "module": "es2015", - "moduleResolution": "node", - "declaration": true, - "sourceMap": true, - "inlineSources": true, - "emitDecoratorMetadata": true, - "experimentalDecorators": true, - "importHelpers": true, - "types": [], - "lib": [ - "es2017", - "es2017.object", - "es2016.array.include", - "dom" - ] - }, - "angularCompilerOptions": { - "skipTemplateCodegen": true, - "strictMetadataEmit": true, - "fullTemplateTypeCheck": true, - "strictInjectionParameters": true, - "flatModuleId": "AUTOGENERATED", - "flatModuleOutFile": "AUTOGENERATED" - }, - "exclude": [ - "src/test.ts", - "**/*.spec.ts" - ] -} diff --git a/src/app/@ansyn/ol/tsconfig.lib.prod.json b/src/app/@ansyn/ol/tsconfig.lib.prod.json deleted file mode 100644 index b1d501abbc..0000000000 --- a/src/app/@ansyn/ol/tsconfig.lib.prod.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "extends": "./tsconfig.lib.json", - "angularCompilerOptions": { - "enableIvy": false - } -} \ No newline at end of file diff --git a/src/app/app/imisight/open-layers-imisight-source-provider.ts b/src/app/app/imisight/open-layers-imisight-source-provider.ts index 61e93c327c..0a075756d6 100644 --- a/src/app/app/imisight/open-layers-imisight-source-provider.ts +++ b/src/app/app/imisight/open-layers-imisight-source-provider.ts @@ -15,7 +15,7 @@ import { import { ImisightOverlaySourceType } from './imisight-source-provider'; import { map } from 'rxjs/operators'; import { Observable } from 'rxjs'; -import { OpenLayersDisabledMap, OpenLayersMap, OpenLayersMapSourceProvider } from '@ansyn/ol'; +import { OpenLayersDisabledMap, OpenLayersMap, OpenLayersMapSourceProvider } from '@ansyn/imagery-ol'; @ImageryMapSource({ sourceType: ImisightOverlaySourceType, diff --git a/src/app/app/sandbox/components/sandbox.component.ts b/src/app/app/sandbox/components/sandbox.component.ts index 031aeaaf9b..9f6dcd8448 100644 --- a/src/app/app/sandbox/components/sandbox.component.ts +++ b/src/app/app/sandbox/components/sandbox.component.ts @@ -17,7 +17,7 @@ import { AnnotationsVisualizer, OpenLayerMarcoSourceProviderSourceType, OpenLayersStaticImageSourceProviderSourceType -} from '@ansyn/ol'; +} from '@ansyn/imagery-ol'; import * as momentNs from 'moment'; import { take, tap } from 'rxjs/operators'; import { ImageryCommunicatorService } from '@ansyn/imagery'; diff --git a/src/app/app/sentinel/open-layers-sentinel-source-provider.ts b/src/app/app/sentinel/open-layers-sentinel-source-provider.ts index 98c827f97b..f812ba5f9e 100644 --- a/src/app/app/sentinel/open-layers-sentinel-source-provider.ts +++ b/src/app/app/sentinel/open-layers-sentinel-source-provider.ts @@ -17,7 +17,7 @@ import { Inject } from '@angular/core'; import { Store } from '@ngrx/store'; import { selectSentinelselectedLayers } from './reducers/sentinel.reducer'; import { map, take } from 'rxjs/operators'; -import { OpenLayersDisabledMap, OpenLayersMap, OpenLayersMapSourceProvider } from '@ansyn/ol'; +import { OpenLayersDisabledMap, OpenLayersMap, OpenLayersMapSourceProvider } from '@ansyn/imagery-ol'; import { BBox2d } from '@turf/helpers/lib/geojson'; export const OpenLayerSentinelSourceProviderSourceType = 'SENTINEL'; diff --git a/src/typings.d.ts b/src/typings.d.ts index cd16e59fcf..73847e13cb 100644 --- a/src/typings.d.ts +++ b/src/typings.d.ts @@ -10,4 +10,3 @@ declare module '*package.json' { export default value; } -declare var Cesium: any; diff --git a/tsconfig.json b/tsconfig.json index b14707eec9..7e031a7646 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -8,19 +8,19 @@ "src/app/@ansyn/ansyn/public_api" ], "@ansyn/imagery": [ - "src/app/@ansyn/imagery/public_api" + "src/app/@ansyn/imagery-submodules/imagery/public_api" ], "@ansyn/map-facade": [ "src/app/@ansyn/map-facade/public_api" ], - "@ansyn/ol": [ - "src/app/@ansyn/ol/public_api" + "@ansyn/imagery-ol": [ + "src/app/@ansyn/imagery-submodules/imagery-ol/public_api" ], "@ansyn/imagery-cesium": [ - "src/app/@ansyn/imagery-cesium/public_api" + "src/app/@ansyn/imagery-submodules/imagery-cesium/public_api" ], "@ansyn/imagery-video": [ - "src/app/@ansyn/imagery-video/public_api" + "src/app/@ansyn/imagery-submodules/imagery-video/public_api" ], "@ansyn/menu": [ "src/app/@ansyn/menu/public_api" diff --git a/tslint.json b/tslint.json index 58b290ff2c..15c3b986a3 100644 --- a/tslint.json +++ b/tslint.json @@ -1,128 +1,128 @@ { - "rulesDirectory": [ - "node_modules/codelyzer" - ], - "rules": { - "callable-types": true, - "class-name": true, - "comment-format": [ - true, - "check-space" - ], - "curly": true, - "eofline": true, - "forin": true, - "import-blacklist": [ - true - ], - "import-spacing": true, - "indent": [ - true, - "tabs" - ], - "interface-over-type-literal": true, - "label-position": true, - "max-line-length": [ - false, - 140 - ], - "member-access": false, - "member-ordering": [ - true, - "static-before-instance", - "variables-before-functions" - ], - "no-arg": true, - "no-bitwise": false, - "no-console": [ - true, - "debug", - "info", - "trace" - ], - "no-construct": true, - "no-debugger": true, - "no-duplicate-variable": true, - "no-empty": false, - "no-empty-interface": true, - "no-eval": true, - "no-inferrable-types": [ - true, - "ignore-params" - ], - "no-shadowed-variable": false, - "no-string-literal": false, - "no-string-throw": true, - "no-switch-case-fall-through": true, - "no-trailing-whitespace": false, - "no-unused-expression": true, - "no-use-before-declare": true, - "no-var-keyword": true, - "object-literal-sort-keys": false, - "one-line": [ - false, - "check-open-brace", - "check-catch", - "check-else", - "check-whitespace" - ], - "prefer-const": false, - "quotemark": [ - false, - "single" - ], - "radix": true, - "semicolon": [ - "always" - ], - "triple-equals": [ - true, - "allow-null-check" - ], - "typedef-whitespace": [ - true, - { - "call-signature": "nospace", - "index-signature": "nospace", - "parameter": "nospace", - "property-declaration": "nospace", - "variable-declaration": "nospace" - } - ], - "typeof-compare": true, - "unified-signatures": true, - "variable-name": false, - "whitespace": [ - true, - "check-branch", - "check-decl", - "check-operator", - "check-module", - "check-separator", - "check-type", - "check-preblock" - ], - "directive-selector": [ - true, - "attribute", - "ansyn", - "camelCase" - ], - "component-selector": [ - false, - "element", - "ansyn", - "kebab-case" - ], - "use-input-property-decorator": true, - "use-output-property-decorator": true, - "use-host-property-decorator": true, - "no-input-rename": true, - "no-output-rename": true, - "use-life-cycle-interface": true, - "use-pipe-transform-interface": true, - "component-class-suffix": true, - "directive-class-suffix": true, - "interface-name": true - } + "rulesDirectory": [ + "node_modules/codelyzer" + ], + "rules": { + "callable-types": true, + "class-name": true, + "comment-format": [ + true, + "check-space" + ], + "curly": true, + "eofline": true, + "forin": true, + "import-blacklist": [ + true + ], + "import-spacing": true, + "indent": [ + true, + "tabs" + ], + "interface-over-type-literal": true, + "label-position": true, + "max-line-length": [ + false, + 140 + ], + "member-access": false, + "member-ordering": [ + true, + "static-before-instance", + "variables-before-functions" + ], + "no-arg": true, + "no-bitwise": false, + "no-console": [ + true, + "debug", + "info", + "trace" + ], + "no-construct": true, + "no-debugger": true, + "no-duplicate-variable": true, + "no-empty": false, + "no-empty-interface": true, + "no-eval": true, + "no-inferrable-types": [ + true, + "ignore-params" + ], + "no-shadowed-variable": false, + "no-string-literal": false, + "no-string-throw": true, + "no-switch-case-fall-through": true, + "no-trailing-whitespace": false, + "no-unused-expression": true, + "no-use-before-declare": true, + "no-var-keyword": true, + "object-literal-sort-keys": false, + "one-line": [ + false, + "check-open-brace", + "check-catch", + "check-else", + "check-whitespace" + ], + "prefer-const": false, + "quotemark": [ + false, + "single" + ], + "radix": true, + "semicolon": [ + "always" + ], + "triple-equals": [ + true, + "allow-null-check" + ], + "typedef-whitespace": [ + true, + { + "call-signature": "nospace", + "index-signature": "nospace", + "parameter": "nospace", + "property-declaration": "nospace", + "variable-declaration": "nospace" + } + ], + "typeof-compare": true, + "unified-signatures": true, + "variable-name": false, + "whitespace": [ + true, + "check-branch", + "check-decl", + "check-operator", + "check-module", + "check-separator", + "check-type", + "check-preblock" + ], + "directive-selector": [ + true, + "attribute", + "ansyn", + "camelCase" + ], + "component-selector": [ + false, + "element", + "ansyn", + "kebab-case" + ], + "use-input-property-decorator": true, + "use-output-property-decorator": true, + "use-host-property-decorator": true, + "no-input-rename": true, + "no-output-rename": true, + "use-life-cycle-interface": true, + "use-pipe-transform-interface": true, + "component-class-suffix": true, + "directive-class-suffix": true, + "interface-name": true + } }