diff --git a/browserslist b/.browserslistrc similarity index 100% rename from browserslist rename to .browserslistrc diff --git a/.editorconfig b/.editorconfig index e89330a6..81058c79 100644 --- a/.editorconfig +++ b/.editorconfig @@ -1,13 +1,14 @@ -# Editor configuration, see https://editorconfig.org +# Editor configuration, see http://editorconfig.org root = true [*] charset = utf-8 indent_style = space -indent_size = 2 +indent_size = 4 +end_of_line = lf insert_final_newline = true trim_trailing_whitespace = true [*.md] -max_line_length = off +max_line_length = 0 trim_trailing_whitespace = false diff --git a/.eslintrc.js b/.eslintrc.js new file mode 100644 index 00000000..a5de7671 --- /dev/null +++ b/.eslintrc.js @@ -0,0 +1,228 @@ +/* +👋 Hi! This file was autogenerated by tslint-to-eslint-config. +https://github.com/typescript-eslint/tslint-to-eslint-config + +It represents the closest reasonable ESLint configuration to this +project's original TSLint configuration. + +We recommend eventually switching this configuration to extend from +the recommended rulesets in typescript-eslint. +https://github.com/typescript-eslint/tslint-to-eslint-config/blob/master/docs/FAQs.md + +Happy linting! 💖 +*/ +module.exports = { + 'env': { + 'browser': true, + 'es6': true, + 'node': true + }, + 'parser': '@typescript-eslint/parser', + 'parserOptions': { + 'project': 'tsconfig.json', + 'sourceType': 'module' + }, + 'plugins': [ + '@angular-eslint/eslint-plugin', + '@typescript-eslint' + ], + 'rules': { + '@angular-eslint/component-class-suffix': 'error', + '@angular-eslint/component-selector': [ + 'off', + { + 'type': 'element', + 'prefix': [ + 'app', + 'mpi' + ], + 'style': 'kebab-case' + } + ], + '@angular-eslint/directive-class-suffix': 'error', + '@angular-eslint/directive-selector': [ + 'off', + { + 'type': 'attribute', + 'prefix': [ + 'app', + 'mpi', + 'tm' + ], + 'style': 'camelCase' + } + ], + '@angular-eslint/no-host-metadata-property': 'error', + '@angular-eslint/no-inputs-metadata-property': 'error', + '@angular-eslint/no-output-rename': 'error', + '@angular-eslint/no-outputs-metadata-property': 'error', + '@angular-eslint/use-lifecycle-interface': 'error', + '@angular-eslint/use-pipe-transform-interface': 'error', + '@typescript-eslint/consistent-type-definitions': 'error', + '@typescript-eslint/dot-notation': 'off', + '@typescript-eslint/explicit-member-accessibility': [ + 'off', + { + 'accessibility': 'explicit' + } + ], + 'keyword-spacing': ['error', { 'after': true, 'before': true }], + 'space-before-blocks': ['error', { 'functions': 'always', 'keywords': 'always', 'classes': 'always' }], + '@typescript-eslint/indent': [ + 'error', + 4, + { + 'ObjectExpression': 'first', + 'FunctionDeclaration': { + 'parameters': 'first' + }, + 'FunctionExpression': { + 'parameters': 'first' + }, + 'SwitchCase': 1, + 'ArrayExpression': 'first' + } + ], + '@typescript-eslint/member-delimiter-style': [ + 'error', + { + 'multiline': { + 'delimiter': 'semi', + 'requireLast': true + }, + 'singleline': { + 'delimiter': 'semi', + 'requireLast': false + } + } + ], + '@typescript-eslint/no-empty-function': 'off', + '@typescript-eslint/no-empty-interface': 'error', + '@typescript-eslint/no-inferrable-types': [ + 'error', + { + 'ignoreParameters': true + } + ], + '@typescript-eslint/prefer-function-type': 'error', + '@typescript-eslint/quotes': [ + 'error', + 'single' + ], + '@typescript-eslint/semi': [ + 'error', + 'always' + ], + '@typescript-eslint/type-annotation-spacing': 'error', + '@typescript-eslint/unified-signatures': 'error', + 'brace-style': [ + 'error', + '1tbs', + { 'allowSingleLine': true } + ], + 'object-curly-spacing': ['error', 'always'], + 'curly': 'error', + 'comma-spacing': ['error', { 'before': false, 'after': true }], + 'dot-notation': 'off', + 'eol-last': 'error', + 'eqeqeq': [ + 'error', + 'smart' + ], + 'guard-for-in': 'off', + 'id-blacklist': 'off', + 'id-match': 'off', + 'max-len': [ + 'off', + { + 'code': 140 + } + ], + 'no-bitwise': 'error', + 'no-caller': 'error', + 'no-console': [ + 'error', + { + 'allow': [ + 'debug', + 'info', + 'dirxml', + 'warn', + 'dir', + 'time', + 'timeEnd', + 'timeLog', + 'trace', + 'assert', + 'clear', + 'count', + 'countReset', + 'group', + 'groupCollapsed', + 'groupEnd', + 'table', + 'Console', + 'markTimeline', + 'profile', + 'profileEnd', + 'timeline', + 'timelineEnd', + 'timeStamp', + 'context' + ] + } + ], + 'no-debugger': 'error', + 'no-empty': 'off', + 'no-empty-function': 'off', + 'no-eval': 'error', + 'no-fallthrough': 'error', + 'no-new-wrappers': 'error', + 'no-redeclare': 'error', + 'no-restricted-imports': 'error', + 'no-throw-literal': 'error', + 'no-trailing-spaces': 'error', + 'no-underscore-dangle': 'off', + 'no-unused-labels': 'error', + 'no-var': 'error', + 'prefer-const': ['error', { + 'destructuring': 'any', + 'ignoreReadBeforeAssign': false + }], + 'prefer-arrow-callback': [ + 'error', + { 'allowUnboundThis': true, 'allowNamedFunctions': true } + ], + 'space-before-function-paren': [ + 'error', + { + 'anonymous': 'always', + 'named': 'never', + 'asyncArrow': 'always' + } + ], + 'quotes': ['error', 'single'], + 'radix': 'error', + 'semi': 'error', + 'spaced-comment': [ + 'error', + 'always', + { + 'markers': [ + '/' + ] + } + ], + 'array-bracket-spacing': [ + 'error', + 'never', + { + 'singleValue': false, + 'objectsInArrays': false, + 'arraysInArrays': false + } + ], + 'no-irregular-whitespace': ['error', { 'skipComments': true }], + 'no-multi-spaces': 'error' + } +}; diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 00000000..a20768bb --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,58 @@ + +### Requerimiento + + +### Funcionalidad desarrollada + +1. +2. +3. + + +### UserStory llegó a completarse + +- [ ] Si +- [ ] No +- [ ] No corresponde + +### Requiere actualizaciones en la base de datos + +- [ ] Si +- [ ] No + +### Requiere actualizaciones en la API + +- [ ] Si +- [ ] No + + + + + + + + + + + + diff --git a/.gitignore b/.gitignore index 86d943a9..327dae72 100644 --- a/.gitignore +++ b/.gitignore @@ -41,6 +41,9 @@ yarn-error.log testem.log /typings +#Angular files +src/environments/api.key.ts + # System Files .DS_Store Thumbs.db diff --git a/angular.json b/angular.json index dad8624f..43ee5023 100644 --- a/angular.json +++ b/angular.json @@ -22,7 +22,6 @@ "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", - "aot": true, "assets": [ "src/favicon.ico", "src/assets" @@ -34,7 +33,13 @@ "scripts": [], "stylePreprocessorOptions": { "includePaths": ["src/app/shared/"] - } + }, + "vendorChunk": true, + "extractLicenses": false, + "buildOptimizer": false, + "sourceMap": true, + "optimization": false, + "namedChunks": true }, "configurations": { "production": { @@ -47,7 +52,6 @@ "optimization": true, "outputHashing": "all", "sourceMap": false, - "extractCss": true, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, @@ -73,7 +77,8 @@ } ] } - } + }, + "defaultConfiguration": "" }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", diff --git a/e2e/tsconfig.json b/e2e/tsconfig.json index 39b800f7..c92199cf 100644 --- a/e2e/tsconfig.json +++ b/e2e/tsconfig.json @@ -3,7 +3,7 @@ "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", - "target": "es5", + "target": "es2018", "types": [ "jasmine", "jasminewd2", diff --git a/package-lock.json b/package-lock.json index 7f56e1b4..33437722 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4,819 +4,1030 @@ "lockfileVersion": 1, "requires": true, "dependencies": { + "@ampproject/remapping": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-1.0.1.tgz", + "integrity": "sha512-Ta9bMA3EtUHDaZJXqUoT5cn/EecwOp+SXpKJqxDbDuMbLvEMu6YTyDDuvTWeStODfdmXyfMo7LymQyPkN3BicA==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "1.0.0", + "sourcemap-codec": "1.4.8" + } + }, "@angular-devkit/architect": { - "version": "0.900.7", - "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.900.7.tgz", - "integrity": "sha512-hfiTVYc72kzbXrzK4tea6jnTDnSKpE1D+vEptBXN2tdXEVNEAQI5Qm5L1zVDtt16UdqoUTUypIgUc9jcNH1mUQ==", + "version": "0.1202.18", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1202.18.tgz", + "integrity": "sha512-C4ASKe+xBjl91MJyHDLt3z7ICPF9FU6B0CeJ1phwrlSHK9lmFG99WGxEj/Tc82+vHyPhajqS5XJ38KyVAPBGzA==", "dev": true, "requires": { - "@angular-devkit/core": "9.0.7", - "rxjs": "6.5.3" + "@angular-devkit/core": "12.2.18", + "rxjs": "6.6.7" }, "dependencies": { "rxjs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.3.tgz", - "integrity": "sha512-wuYsAYYFdWTAnAaPoKGNhfpWwKZbJW+HgAJ+mImp+Epl7BG8oNWBCTyRM8gba9k4lk8BgWdoYm21Mo/RYhhbgA==", + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", "dev": true, "requires": { "tslib": "^1.9.0" } + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true } } }, "@angular-devkit/build-angular": { - "version": "0.900.7", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-0.900.7.tgz", - "integrity": "sha512-Yv2y3OEaYEd0fE0pKvtqBpmkQYs9xJws7thHnJYCwIfYO55RfolYsXkJgAXke/4NPLrD3EsIDqoPxF7l+uw2/Q==", - "dev": true, - "requires": { - "@angular-devkit/architect": "0.900.7", - "@angular-devkit/build-optimizer": "0.900.7", - "@angular-devkit/build-webpack": "0.900.7", - "@angular-devkit/core": "9.0.7", - "@babel/core": "7.7.7", - "@babel/generator": "7.7.7", - "@babel/preset-env": "7.7.7", - "@ngtools/webpack": "9.0.7", - "ajv": "6.10.2", - "autoprefixer": "9.7.1", - "babel-loader": "8.0.6", + "version": "12.2.18", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-12.2.18.tgz", + "integrity": "sha512-Hf3s7etN7zkHc7lhZZx3Bsm6hfLozuvN3z2aI39RDSlHOA83SoYpltnD9UV4B4d3cxU4PLUzpirb96QeS+E53Q==", + "dev": true, + "requires": { + "@ampproject/remapping": "1.0.1", + "@angular-devkit/architect": "0.1202.18", + "@angular-devkit/build-optimizer": "0.1202.18", + "@angular-devkit/build-webpack": "0.1202.18", + "@angular-devkit/core": "12.2.18", + "@babel/core": "7.14.8", + "@babel/generator": "7.14.8", + "@babel/helper-annotate-as-pure": "7.14.5", + "@babel/plugin-proposal-async-generator-functions": "7.14.7", + "@babel/plugin-transform-async-to-generator": "7.14.5", + "@babel/plugin-transform-runtime": "7.14.5", + "@babel/preset-env": "7.14.8", + "@babel/runtime": "7.14.8", + "@babel/template": "7.14.5", + "@discoveryjs/json-ext": "0.5.3", + "@jsdevtools/coverage-istanbul-loader": "3.0.5", + "@ngtools/webpack": "12.2.18", + "ansi-colors": "4.1.1", + "babel-loader": "8.2.2", "browserslist": "^4.9.1", - "cacache": "13.0.1", + "cacache": "15.2.0", "caniuse-lite": "^1.0.30001032", - "circular-dependency-plugin": "5.2.0", - "copy-webpack-plugin": "5.1.1", - "core-js": "3.6.4", - "coverage-istanbul-loader": "2.0.3", - "cssnano": "4.1.10", - "file-loader": "4.2.0", - "find-cache-dir": "3.0.0", - "glob": "7.1.5", - "jest-worker": "24.9.0", + "circular-dependency-plugin": "5.2.2", + "copy-webpack-plugin": "9.0.1", + "core-js": "3.16.0", + "critters": "0.0.12", + "css-loader": "6.2.0", + "css-minimizer-webpack-plugin": "3.0.2", + "esbuild": "0.13.8", + "esbuild-wasm": "0.13.8", + "find-cache-dir": "3.3.1", + "glob": "7.1.7", + "https-proxy-agent": "5.0.0", + "inquirer": "8.1.2", "karma-source-map-support": "1.4.0", - "less": "3.10.3", - "less-loader": "5.0.0", - "license-webpack-plugin": "2.1.3", - "loader-utils": "1.2.3", - "magic-string": "0.25.4", - "mini-css-extract-plugin": "0.8.0", + "less": "4.1.1", + "less-loader": "10.0.1", + "license-webpack-plugin": "2.3.20", + "loader-utils": "2.0.0", + "mini-css-extract-plugin": "2.4.2", "minimatch": "3.0.4", - "open": "7.0.0", - "parse5": "4.0.0", - "postcss": "7.0.21", - "postcss-import": "12.0.1", - "postcss-loader": "3.0.0", - "raw-loader": "3.1.0", - "regenerator-runtime": "0.13.3", - "rimraf": "3.0.0", - "rollup": "1.25.2", - "rxjs": "6.5.3", - "sass": "1.23.3", - "sass-loader": "8.0.0", - "semver": "6.3.0", - "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.0.0", - "stylus": "0.54.7", - "stylus-loader": "3.0.2", - "terser": "4.5.1", - "terser-webpack-plugin": "2.3.3", + "open": "8.2.1", + "ora": "5.4.1", + "parse5-html-rewriting-stream": "6.0.1", + "piscina": "3.1.0", + "postcss": "8.3.6", + "postcss-import": "14.0.2", + "postcss-loader": "6.1.1", + "postcss-preset-env": "6.7.0", + "regenerator-runtime": "0.13.9", + "resolve-url-loader": "4.0.0", + "rxjs": "6.6.7", + "sass": "1.36.0", + "sass-loader": "12.1.0", + "semver": "7.3.5", + "source-map-loader": "3.0.0", + "source-map-support": "0.5.19", + "style-loader": "3.2.1", + "stylus": "0.54.8", + "stylus-loader": "6.1.0", + "terser": "5.14.2", + "terser-webpack-plugin": "5.1.4", + "text-table": "0.2.0", "tree-kill": "1.2.2", - "webpack": "4.41.2", - "webpack-dev-middleware": "3.7.2", - "webpack-dev-server": "3.9.0", - "webpack-merge": "4.2.2", - "webpack-sources": "1.4.3", - "webpack-subresource-integrity": "1.3.4", - "worker-plugin": "3.2.0" + "tslib": "2.3.0", + "webpack": "5.50.0", + "webpack-dev-middleware": "5.0.0", + "webpack-dev-server": "3.11.3", + "webpack-merge": "5.8.0", + "webpack-subresource-integrity": "1.5.2" }, "dependencies": { "rxjs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.3.tgz", - "integrity": "sha512-wuYsAYYFdWTAnAaPoKGNhfpWwKZbJW+HgAJ+mImp+Epl7BG8oNWBCTyRM8gba9k4lk8BgWdoYm21Mo/RYhhbgA==", + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", "dev": true, "requires": { "tslib": "^1.9.0" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + } } + }, + "tslib": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", + "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==", + "dev": true } } }, "@angular-devkit/build-optimizer": { - "version": "0.900.7", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-optimizer/-/build-optimizer-0.900.7.tgz", - "integrity": "sha512-gxin2oPNMN+PYo82At2JP1Q+uxnvwyDFWA1Wl+Ufuc5zHGhjKqxdQjkdMF7OT0ihtmkllN+t/NTB7rcx/Sx9Wg==", + "version": "0.1202.18", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-optimizer/-/build-optimizer-0.1202.18.tgz", + "integrity": "sha512-8ANaqa66IuaSRqJT3zTNUoeRDyLanE56tkNWqgYDPyZUsafEsomh9/fGVIkazymP1hReDLw+RoxSVxUsaRSsTA==", "dev": true, "requires": { - "loader-utils": "1.2.3", "source-map": "0.7.3", - "tslib": "1.10.0", - "typescript": "3.6.4", - "webpack-sources": "1.4.3" + "tslib": "2.3.0", + "typescript": "4.3.5" }, "dependencies": { "tslib": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz", - "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==", - "dev": true - }, - "typescript": { - "version": "3.6.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.6.4.tgz", - "integrity": "sha512-unoCll1+l+YK4i4F8f22TaNVPRHcD9PA3yCuZ8g5e0qGqlVlJ/8FSateOLLSagn+Yg5+ZwuPkL8LFUc0Jcvksg==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", + "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==", "dev": true } } }, "@angular-devkit/build-webpack": { - "version": "0.900.7", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.900.7.tgz", - "integrity": "sha512-Nwwqjo1ZpHFLavN+nXOmuBgGjhoMBZGelDCvHtiQlQ9N6i7k9cKnP7eU5pY7jbalBguS+gWg5wJIGnbqk1K9Rg==", + "version": "0.1202.18", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1202.18.tgz", + "integrity": "sha512-656TIHb820Sb3ILHqcqoGJOPTsx2aUdeRrK8f7e6mxR4/kvQZQAevxP9C0TY+LUqQQqekzjKFq3+aYWOfzdR4Q==", "dev": true, "requires": { - "@angular-devkit/architect": "0.900.7", - "@angular-devkit/core": "9.0.7", - "rxjs": "6.5.3" + "@angular-devkit/architect": "0.1202.18", + "rxjs": "6.6.7" }, "dependencies": { "rxjs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.3.tgz", - "integrity": "sha512-wuYsAYYFdWTAnAaPoKGNhfpWwKZbJW+HgAJ+mImp+Epl7BG8oNWBCTyRM8gba9k4lk8BgWdoYm21Mo/RYhhbgA==", + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", "dev": true, "requires": { "tslib": "^1.9.0" } + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true } } }, "@angular-devkit/core": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-9.0.7.tgz", - "integrity": "sha512-tMrz36sM1xrwvFf9Qm59GwALscVlMP7rQBjtd0fIR/QbsiOAIX4AQbV+vN6Vtwnzo5NIRZY1IXJUhesWms+h5w==", + "version": "12.2.18", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-12.2.18.tgz", + "integrity": "sha512-GDLHGe9HEY5SRS+NrKr14C8aHsRCiBFkBFSSbeohgLgcgSXzZHFoU84nDWrl3KZNP8oqcUSv5lHu6dLcf2fnww==", "dev": true, "requires": { - "ajv": "6.10.2", - "fast-json-stable-stringify": "2.0.0", - "magic-string": "0.25.4", - "rxjs": "6.5.3", + "ajv": "8.6.2", + "ajv-formats": "2.1.0", + "fast-json-stable-stringify": "2.1.0", + "magic-string": "0.25.7", + "rxjs": "6.6.7", "source-map": "0.7.3" }, "dependencies": { "rxjs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.3.tgz", - "integrity": "sha512-wuYsAYYFdWTAnAaPoKGNhfpWwKZbJW+HgAJ+mImp+Epl7BG8oNWBCTyRM8gba9k4lk8BgWdoYm21Mo/RYhhbgA==", + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", "dev": true, "requires": { "tslib": "^1.9.0" } + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true } } }, "@angular-devkit/schematics": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-9.0.7.tgz", - "integrity": "sha512-ryPC+l24f3gX5DFMTLkDM/q2Kp6LPzBn6400k7j4qVdb1cIrZx+JUQd7F4iAksTTkX15EQPanptQXeztUrl9Ng==", + "version": "12.2.18", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-12.2.18.tgz", + "integrity": "sha512-bZ9NS5PgoVfetRC6WeQBHCY5FqPZ9y2TKHUo12sOB2YSL3tgWgh1oXyP8PtX34gasqsLjNULxEQsAQYEsiX/qQ==", "dev": true, "requires": { - "@angular-devkit/core": "9.0.7", - "ora": "4.0.2", - "rxjs": "6.5.3" + "@angular-devkit/core": "12.2.18", + "ora": "5.4.1", + "rxjs": "6.6.7" }, "dependencies": { "rxjs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.3.tgz", - "integrity": "sha512-wuYsAYYFdWTAnAaPoKGNhfpWwKZbJW+HgAJ+mImp+Epl7BG8oNWBCTyRM8gba9k4lk8BgWdoYm21Mo/RYhhbgA==", + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", "dev": true, "requires": { "tslib": "^1.9.0" } + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true } } }, + "@angular-eslint/eslint-plugin": { + "version": "12.2.2", + "resolved": "https://registry.npmjs.org/@angular-eslint/eslint-plugin/-/eslint-plugin-12.2.2.tgz", + "integrity": "sha512-n1dIoXCjEZj8nZOLR2i+/Q87JZ9cm/UgGZ/17UXHMZBo03b+kh9iiabPzLzmIphcI1IQIWAfhH/41YIqBER7vw==", + "dev": true, + "requires": { + "@typescript-eslint/experimental-utils": "4.23.0" + } + }, "@angular/animations": { - "version": "9.1.2", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-9.1.2.tgz", - "integrity": "sha512-5UJ8SzCtFj4vZChVsni4K9oa4qE9tQ67bwnP6DKxkLEJKQWWyasYp+2siAi/7zD2ro2XA0qRMYhgQz5Vj6eBoQ==" + "version": "12.2.17", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-12.2.17.tgz", + "integrity": "sha512-WVUcvKvr6wr9Nf3I2ksu5bFJ5xHhby4UEBTvOAdLpDqic+dzqtzVwAktDRprBSdxKQk1OlTw6jD4MsVEDKnZTg==", + "requires": { + "tslib": "^2.2.0" + } }, "@angular/cdk": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-9.2.0.tgz", - "integrity": "sha512-jeeznvNDpR9POuxzz8Y0zFvMynG9HCJo3ZPTqOjlOq8Lj8876+rLsHDvKEMeLdwlkdi1EweYJW1CLQzI+TwqDA==", + "version": "12.2.13", + "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-12.2.13.tgz", + "integrity": "sha512-zSKRhECyFqhingIeyRInIyTvYErt4gWo+x5DQr0b7YLUbU8DZSwWnG4w76Ke2s4U8T7ry1jpJBHoX/e8YBpGMg==", "requires": { - "parse5": "^5.0.0" - }, - "dependencies": { - "parse5": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz", - "integrity": "sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==", - "optional": true - } + "parse5": "^5.0.0", + "tslib": "^2.2.0" } }, "@angular/cli": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-9.0.7.tgz", - "integrity": "sha512-/9CUNSSVyTtTNUADZ/VXJDEdhineMN/rfd35w6VsHiob49tKkeOTggaoiSne3RY4VCTqlo7GGf4KhhVXEMGnDQ==", + "version": "12.2.18", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-12.2.18.tgz", + "integrity": "sha512-AvHi6DsxavxXJgEoFrrlYDtGGgCpofPDmOwHmxpIFNAeG1xdGYtK1zJhGbfu5acn8/5cGoJoBgDY+SEI+WOjxA==", "dev": true, "requires": { - "@angular-devkit/architect": "0.900.7", - "@angular-devkit/core": "9.0.7", - "@angular-devkit/schematics": "9.0.7", - "@schematics/angular": "9.0.7", - "@schematics/update": "0.900.7", + "@angular-devkit/architect": "0.1202.18", + "@angular-devkit/core": "12.2.18", + "@angular-devkit/schematics": "12.2.18", + "@schematics/angular": "12.2.18", "@yarnpkg/lockfile": "1.1.0", "ansi-colors": "4.1.1", - "debug": "^4.1.1", - "ini": "1.3.5", - "inquirer": "7.0.0", - "npm-package-arg": "6.1.1", - "npm-pick-manifest": "3.0.2", - "open": "7.0.0", - "pacote": "9.5.8", - "read-package-tree": "5.3.1", - "rimraf": "3.0.0", - "semver": "6.3.0", - "symbol-observable": "1.2.0", - "universal-analytics": "^0.4.20", - "uuid": "^3.3.2" - }, - "dependencies": { - "ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "dev": true - } + "debug": "4.3.2", + "ini": "2.0.0", + "inquirer": "8.1.2", + "jsonc-parser": "3.0.0", + "npm-package-arg": "8.1.5", + "npm-pick-manifest": "6.1.1", + "open": "8.2.1", + "ora": "5.4.1", + "pacote": "12.0.2", + "resolve": "1.20.0", + "semver": "7.3.5", + "symbol-observable": "4.0.0", + "uuid": "8.3.2" } }, "@angular/common": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-9.0.7.tgz", - "integrity": "sha512-B58YgxZva1DBaeayOBsaUOOkoyR+GRibuNC3gfOMm2vXeW9eCNX+jvDtw767GnKm2yGzIq8wB3x6GHojN00dPw==" + "version": "12.2.17", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-12.2.17.tgz", + "integrity": "sha512-/Rc83mzlL6YZScYTzg+Ng2hiCSf3jUVHAfQ8cyLOIMj/y8863Q+DMLVWW+ttvHwCjEFY44pC8IPyBl5FmSJYHg==", + "requires": { + "tslib": "^2.2.0" + } }, "@angular/compiler": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-9.0.7.tgz", - "integrity": "sha512-hFpkuGpzxpK5h59LHHAjTFWsY6DCXZwgJFqvCuTPxWi/srvLGZRXrpC6Z1SlgHI9xxXaPfoa4uWw2VfA3BnqEg==" + "version": "12.2.17", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-12.2.17.tgz", + "integrity": "sha512-dxM1CxzvEJPk6ShJngkW5j5BejBloxQNi+fJi+F8P/GN/Rj7vJUf0JxL+TUt1+Iv575V4NidJDKKikk6K485CA==", + "requires": { + "tslib": "^2.2.0" + } }, "@angular/compiler-cli": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-9.0.7.tgz", - "integrity": "sha512-+RXghex63v0Vi8vpQtDpWiqpAAnrTaN3bHT5fntRenq5+Ok5vL1MJ1mzbTmBXs2tuwTqNlwMm2AlZB7G/xcDMQ==", + "version": "12.2.17", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-12.2.17.tgz", + "integrity": "sha512-gJJlnDr8Fhs6z0hH0Y/5GC1YAgHY+sRh2BUrbDu+nIUubyyOVYSyQdL1jwEfCSIZl1GSg+4b4thU7pp7HtmX8g==", "dev": true, "requires": { + "@babel/core": "^7.8.6", + "@babel/types": "^7.8.6", "canonical-path": "1.0.0", "chokidar": "^3.0.0", "convert-source-map": "^1.5.1", - "dependency-graph": "^0.7.2", - "fs-extra": "4.0.2", + "dependency-graph": "^0.11.0", "magic-string": "^0.25.0", "minimist": "^1.2.0", "reflect-metadata": "^0.1.2", - "semver": "^6.3.0", + "semver": "^7.0.0", "source-map": "^0.6.1", "sourcemap-codec": "^1.4.8", - "yargs": "13.1.0" + "tslib": "^2.2.0", + "yargs": "^17.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 - }, - "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": "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 - }, - "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" - } - }, - "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, - "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==", - "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 - }, - "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 - }, "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 - }, - "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" - } - }, - "yargs": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.1.0.tgz", - "integrity": "sha512-1UhJbXfzHiPqkfXNHYhiz79qM/kZqjTE8yGlEjZa85Q+3+OwcV6NRkV7XOV1W2Eom2bzILeUn55pQYffjVOLAg==", - "dev": true, - "requires": { - "cliui": "^4.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "os-locale": "^3.1.0", - "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.0.0" - } - }, - "yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", - "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } } } }, "@angular/core": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-9.0.7.tgz", - "integrity": "sha512-E9XZH5Dl+9MWG3MDC6wrKllhA8Rljpz66HOIeqKv2fHPed8kzuJZU3WJWLtbhDAXFwtGTyTZ4c82ZLSmqwTorg==" + "version": "12.2.17", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-12.2.17.tgz", + "integrity": "sha512-XUvTgU0D8XqNH5Y7UlTMk/XjUQaEGC0kZxhw/QSSQr65WrXtXmcD4d8Cg84TJ52uGXmf7IAruKvtbvu1Mbmvug==", + "requires": { + "tslib": "^2.2.0" + } }, "@angular/flex-layout": { - "version": "9.0.0-beta.29", - "resolved": "https://registry.npmjs.org/@angular/flex-layout/-/flex-layout-9.0.0-beta.29.tgz", - "integrity": "sha512-93sxR+kYfYMOdnlWL0Q77FZ428gg8XnBu0YZm6GsCdkw/vLggIT/G1ZAqHlCPIODt6pxmCJ5KXh4ShvniIYDsA==" + "version": "12.0.0-beta.35", + "resolved": "https://registry.npmjs.org/@angular/flex-layout/-/flex-layout-12.0.0-beta.35.tgz", + "integrity": "sha512-nPi2MGDFuCacwWHqxF/G7lUJd2X99HbLjjUvKXnyLwyCIVgH1sfS52su2wYbVYWJRqAVAB2/VMlrtW8Khr8hDA==", + "requires": { + "tslib": "^2.1.0" + } }, "@angular/forms": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-9.0.7.tgz", - "integrity": "sha512-PaHAmjMJDtg/3aGCPuq5BCRC1eZ/DBCpva9f7NrA1kqk0LcLdebm0v2uHwTOBtiz/VEgPvxiS4tXC4rjvUtfEg==" + "version": "12.2.17", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-12.2.17.tgz", + "integrity": "sha512-iOIAz5OR6yLWuNTSOSDqAffQ0FU71yw1QsOmltU/hBsO6H6smsIKVe8VlFa4SnBSAyVZXf/OhDRJ8gOqQT09mw==", + "requires": { + "tslib": "^2.2.0" + } }, "@angular/language-service": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-9.0.7.tgz", - "integrity": "sha512-IZG1kvw48JyFRy7bfMHqBixWrEHZmXmkP5DWsi5Tw6KusaczkMghI20BevCkodPcajXWHAUHNKyp1tlE3OnH0w==", + "version": "12.2.17", + "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-12.2.17.tgz", + "integrity": "sha512-mloPdK9iWLR3KQDE85e2k2iuIDsEr9gyFla3QI7UOVbzrsazRADxQxc5WHeDPxNbzTMjCYrcw8Jyc7WHssAPGw==", "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": "12.2.13", + "resolved": "https://registry.npmjs.org/@angular/material/-/material-12.2.13.tgz", + "integrity": "sha512-6g2GyN4qp2D+DqY2AwrQuPB3cd9gybvQVXvNRbTPXEulHr+LgGei00ySdFHFp6RvdGSMZ4i3LM1Fq3VkFxhCfQ==", + "requires": { + "tslib": "^2.2.0" + } }, "@angular/material-moment-adapter": { - "version": "9.2.3", - "resolved": "https://registry.npmjs.org/@angular/material-moment-adapter/-/material-moment-adapter-9.2.3.tgz", - "integrity": "sha512-+B+njuV0rr2GKOglgXlFzgT6Pq7VMsPsMHhTkJWeRe96RVEIuT6pMehlHJAEQgaFi+LRjH1MIHLH2jcc0myDvg==" + "version": "12.2.13", + "resolved": "https://registry.npmjs.org/@angular/material-moment-adapter/-/material-moment-adapter-12.2.13.tgz", + "integrity": "sha512-0XhkAhBalvNvIfvi9t5qDKaTBtOuIqd1cABfotyaTecWmw57VoH0KoJtNekXjxDcx71S0LaqeYXfqTo4m+duSA==", + "requires": { + "tslib": "^2.2.0" + } }, "@angular/platform-browser": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-9.0.7.tgz", - "integrity": "sha512-Por8omrEiSV2U/K2mm/Kuv+2R2rJkbAZ3ctEM6CWj9Y4Gz2akjOCxmEgWhhBeqdigcC3T1v707f52osf9jWBkg==" + "version": "12.2.17", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-12.2.17.tgz", + "integrity": "sha512-fxs0FDEnS9mzd36u0bHd6TbCvRC9pqK0YCWNnoLCf5ALQtyIL8CpgGNjOMnO8mCEl5l9QTFCDvKOn4V3p7E/dg==", + "requires": { + "tslib": "^2.2.0" + } }, "@angular/platform-browser-dynamic": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-9.0.7.tgz", - "integrity": "sha512-jwpyd93ofcRtchbayKD5v4GN4Lc7vbPe6dMUiwfnVnVAql0bOD/3YRI7w5qJ0Xx0sgQT+9Xo6jTXYnyUsZpEww==" + "version": "12.2.17", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-12.2.17.tgz", + "integrity": "sha512-2v7R5l+4ULSNLviKVTHCqn6iNFgY1M/+HtM1ZcM72V4cVVsXqXUAh7WV4sk4l4ECsExKxQoc6JlVtPUub8cCKA==", + "requires": { + "tslib": "^2.2.0" + } }, "@angular/router": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-9.0.7.tgz", - "integrity": "sha512-uKru9F/Zju//gg6INl54abnlpLdEUUO/GpCfMk4zqu8LCZGNFta6OY7VT+9DK9Vdrh/XUD70oE9WoelcRwwTYA==" + "version": "12.2.17", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-12.2.17.tgz", + "integrity": "sha512-GKvEMUpLe157izpHLiS4bCZllqOj+MWhfWbhvR0DHFpE9FtkcDjBseTsWqQmyA1gqtRblO1Zn/1E33l9uaGMqw==", + "requires": { + "tslib": "^2.2.0" + } + }, + "@assemblyscript/loader": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/@assemblyscript/loader/-/loader-0.10.1.tgz", + "integrity": "sha512-H71nDOOL8Y7kWRLqf6Sums+01Q5msqBW2KhDUTemh1tvY04eSkSXrK0uj/4mmY0Xr16/3zyZmsrxN7CKuRbNRg==", + "dev": true }, "@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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", + "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", "dev": true, "requires": { - "@babel/highlight": "^7.8.3" + "@babel/helper-validator-identifier": "^7.27.1", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" } }, + "@babel/compat-data": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.28.0.tgz", + "integrity": "sha512-60X7qkglvrap8mn1lh2ebxXdZYtUcpd7gsmy9kLaBJ4i/WdY8PqTSdxyA8qraikqKQK5C1KRBKXqznrVapyNaw==", + "dev": true + }, "@babel/core": { - "version": "7.7.7", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.7.7.tgz", - "integrity": "sha512-jlSjuj/7z138NLZALxVgrx13AOtqip42ATZP7+kYl53GvDV6+4dCek1mVUo8z8c8Xnw/mx2q3d9HWh3griuesQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.5.5", - "@babel/generator": "^7.7.7", - "@babel/helpers": "^7.7.4", - "@babel/parser": "^7.7.7", - "@babel/template": "^7.7.4", - "@babel/traverse": "^7.7.4", - "@babel/types": "^7.7.4", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.14.8.tgz", + "integrity": "sha512-/AtaeEhT6ErpDhInbXmjHcUQXH0L0TEgscfcxk1qbOvLuKCa5aZT0SOOtDKFY96/CLROwbLSKyFor6idgNaU4Q==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.14.5", + "@babel/generator": "^7.14.8", + "@babel/helper-compilation-targets": "^7.14.5", + "@babel/helper-module-transforms": "^7.14.8", + "@babel/helpers": "^7.14.8", + "@babel/parser": "^7.14.8", + "@babel/template": "^7.14.5", + "@babel/traverse": "^7.14.8", + "@babel/types": "^7.14.8", "convert-source-map": "^1.7.0", "debug": "^4.1.0", - "json5": "^2.1.0", - "lodash": "^4.17.13", - "resolve": "^1.3.2", - "semver": "^5.4.1", + "gensync": "^1.0.0-beta.2", + "json5": "^2.1.2", + "semver": "^6.3.0", "source-map": "^0.5.0" }, "dependencies": { - "json5": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.2.tgz", - "integrity": "sha512-MoUOQ4WdiN3yxhm7NEVJSJrieAo5hNSLQ5sj05OTRHPL9HOBy8u4Bu88jsC1jvqAdN+E1bJmsUcZH+1HQxliqQ==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - }, "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true }, "source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", "dev": true } } }, "@babel/generator": { - "version": "7.7.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.7.7.tgz", - "integrity": "sha512-/AOIBpHh/JU1l0ZFS4kiRCBnLi6OTHzh0RPk3h9isBxkkqELtQNFi1Vr/tiG9p1yfoUdKVwISuXWQR+hwwM4VQ==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.8.tgz", + "integrity": "sha512-cYDUpvIzhBVnMzRoY1fkSEhK/HmwEVwlyULYgn/tMQYd6Obag3ylCjONle3gdErfXBW61SVTlR9QR7uWlgeIkg==", "dev": true, "requires": { - "@babel/types": "^7.7.4", + "@babel/types": "^7.14.8", "jsesc": "^2.5.1", - "lodash": "^4.17.13", "source-map": "^0.5.0" }, "dependencies": { "source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", "dev": true } } }, "@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, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@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, - "requires": { - "@babel/helper-explode-assignable-expression": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@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==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.14.5.tgz", + "integrity": "sha512-EivH9EgBIb+G8ij1B2jAwSH36WnGvkQSEC6CkX/6v6ZFlw5fVOHvsgGF4uiEHO2GzMvunZb6tDLQEQSdrdocrA==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.8.3", - "@babel/helper-regex": "^7.8.3", - "regexpu-core": "^4.7.0" + "@babel/types": "^7.14.5" } }, - "@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==", + "@babel/helper-compilation-targets": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.2.tgz", + "integrity": "sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==", "dev": true, "requires": { - "@babel/helper-function-name": "^7.8.3", - "@babel/types": "^7.8.3", - "lodash": "^4.17.13" + "@babel/compat-data": "^7.27.2", + "@babel/helper-validator-option": "^7.27.1", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "dependencies": { + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } } }, - "@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==", + "@babel/helper-create-class-features-plugin": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.27.1.tgz", + "integrity": "sha512-QwGAmuvM17btKU5VqXfb+Giw4JcN0hjuufz3DYnpeVDvZLAObloM77bhMXiqry3Iio+Ai4phVRDwl6WU10+r5A==", "dev": true, "requires": { - "@babel/traverse": "^7.8.3", - "@babel/types": "^7.8.3" + "@babel/helper-annotate-as-pure": "^7.27.1", + "@babel/helper-member-expression-to-functions": "^7.27.1", + "@babel/helper-optimise-call-expression": "^7.27.1", + "@babel/helper-replace-supers": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", + "@babel/traverse": "^7.27.1", + "semver": "^6.3.1" + }, + "dependencies": { + "@babel/helper-annotate-as-pure": { + "version": "7.27.3", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.3.tgz", + "integrity": "sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==", + "dev": true, + "requires": { + "@babel/types": "^7.27.3" + } + }, + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } } }, - "@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==", + "@babel/helper-create-regexp-features-plugin": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.27.1.tgz", + "integrity": "sha512-uVDC72XVf8UbrH5qQTc18Agb8emwjTiZrQE11Nv3CuBEZmVvTwwE9CBUEvHku06gQCAyYf8Nv6ja1IN+6LMbxQ==", "dev": true, "requires": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" + "@babel/helper-annotate-as-pure": "^7.27.1", + "regexpu-core": "^6.2.0", + "semver": "^6.3.1" + }, + "dependencies": { + "@babel/helper-annotate-as-pure": { + "version": "7.27.3", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.3.tgz", + "integrity": "sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==", + "dev": true, + "requires": { + "@babel/types": "^7.27.3" + } + }, + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } } }, - "@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==", + "@babel/helper-define-polyfill-provider": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.2.4.tgz", + "integrity": "sha512-OrpPZ97s+aPi6h2n1OXzdhVis1SGSsMU2aMHgLcOKfsp4/v1NWpx3CWT3lBj5eeBq9cDkPkh+YCfdF7O12uNDQ==", "dev": true, "requires": { - "@babel/types": "^7.8.3" + "@babel/helper-compilation-targets": "^7.13.0", + "@babel/helper-module-imports": "^7.12.13", + "@babel/helper-plugin-utils": "^7.13.0", + "@babel/traverse": "^7.13.0", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, + "dependencies": { + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } } }, - "@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, - "requires": { - "@babel/types": "^7.8.3" - } + "@babel/helper-globals": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", + "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", + "dev": true }, "@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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.27.1.tgz", + "integrity": "sha512-E5chM8eWjTp/aNoVpcbfM7mLxu9XGLWYise2eBKGQomAk/Mb4XoxyqXTZbuTohbsl8EKqdlMhnDI2CCLfcs9wA==", "dev": true, "requires": { - "@babel/types": "^7.8.3" + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.27.1.tgz", + "integrity": "sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==", "dev": true, "requires": { - "@babel/types": "^7.8.3" + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.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==", + "version": "7.27.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.27.3.tgz", + "integrity": "sha512-dSOvYwvyLsWBeIRyOeHXp5vPj5l1I011r52FM1+r1jCERv+aFXYk4whgQccYEGYxK2H3ZAIA8nuPkQ0HaUo3qg==", "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", - "lodash": "^4.17.13" + "@babel/helper-module-imports": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1", + "@babel/traverse": "^7.27.3" } }, "@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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.27.1.tgz", + "integrity": "sha512-URMGH08NzYFhubNSGJrpUEphGKQwMQYBySzat5cAByY1/YgIRkULnIy3tAMeszlL/so2HbeilYloUmSpd7GdVw==", "dev": true, "requires": { - "@babel/types": "^7.8.3" + "@babel/types": "^7.27.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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.27.1.tgz", + "integrity": "sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==", "dev": true }, - "@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, - "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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.27.1.tgz", + "integrity": "sha512-7fiA521aVw8lSPeI4ZOD3vRFkoqkJcS+z4hFo82bFSH/2tNd6eJ5qCVMS5OzDmZh/kaHQeBaeyxK6wljcPtveA==", "dev": true, "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.27.1", + "@babel/helper-wrap-function": "^7.27.1", + "@babel/traverse": "^7.27.1" + }, + "dependencies": { + "@babel/helper-annotate-as-pure": { + "version": "7.27.3", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.3.tgz", + "integrity": "sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==", + "dev": true, + "requires": { + "@babel/types": "^7.27.3" + } + } } }, "@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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.27.1.tgz", + "integrity": "sha512-7EHz6qDZc8RYS5ElPoShMheWvEgERonFCs7IAonWLLUTXW59DP14bCZt89/GKyreYn8g3S83m21FelHKbeDCKA==", "dev": true, "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" + "@babel/helper-member-expression-to-functions": "^7.27.1", + "@babel/helper-optimise-call-expression": "^7.27.1", + "@babel/traverse": "^7.27.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==", + "@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.27.1.tgz", + "integrity": "sha512-Tub4ZKEXqbPjXgWLl2+3JpQAYBJ8+ikpQ2Ocj/q/r0LwE3UhENh7EUabyHjz2kCEsrRY83ew2DQdHluuiDQFzg==", "dev": true, "requires": { - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.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, - "requires": { - "@babel/types": "^7.8.3" - } + "@babel/helper-string-parser": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", + "dev": true }, "@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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz", + "integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==", + "dev": true + }, + "@babel/helper-validator-option": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", + "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", "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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.27.1.tgz", + "integrity": "sha512-NFJK2sHUvrjo8wAU/nQTWU890/zB2jj0qBcCbZbbf+005cAsv6tMjXz31fBign6M5ov1o0Bllu+9nbqkfsjjJQ==", "dev": true, "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.27.1", + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" + }, + "dependencies": { + "@babel/template": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz", + "integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.27.1", + "@babel/parser": "^7.27.2", + "@babel/types": "^7.27.1" + } + } } }, "@babel/helpers": { - "version": "7.9.2", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.9.2.tgz", - "integrity": "sha512-JwLvzlXVPjO8eU9c/wF9/zOIN7X6h8DYf7mG4CiFRZRvZNKEF5dQ3H3V+ASkHoIB3mWhatgl5ONhyqHRI6MppA==", + "version": "7.27.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.6.tgz", + "integrity": "sha512-muE8Tt8M22638HU31A3CgfSUciwz1fhATfoVai05aPXGor//CdWDCbnlY1yvBPo07njuVOCNGCSp/GTt12lIug==", "dev": true, "requires": { - "@babel/template": "^7.8.3", - "@babel/traverse": "^7.9.0", - "@babel/types": "^7.9.0" + "@babel/template": "^7.27.2", + "@babel/types": "^7.27.6" + }, + "dependencies": { + "@babel/template": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz", + "integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.27.1", + "@babel/parser": "^7.27.2", + "@babel/types": "^7.27.1" + } + } } }, "@babel/highlight": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz", - "integrity": "sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.25.9.tgz", + "integrity": "sha512-llL88JShoCsth8fF8R4SJnIn+WLvR6ccFxu1H3FlMhDontdcmZWf2HgIZ7AIqV3Xcck1idlohrN4EUBQz6klbw==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" + "@babel/helper-validator-identifier": "^7.25.9", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "dependencies": { + "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" + } + }, + "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" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true + }, + "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" + } + } } }, "@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 + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.0.tgz", + "integrity": "sha512-jVZGvOxOuNSsuQuLRTh13nU0AogFlw32w/MT+LV6D3sP5WdbW61E77RnkbaO2dUvmPAYrBDJXGn5gGS6tH4j8g==", + "dev": true, + "requires": { + "@babel/types": "^7.28.0" + } + }, + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.27.1.tgz", + "integrity": "sha512-oO02gcONcD5O1iTLi/6frMJBIwWEHceWGSGqrpCmEL8nogiS6J9PBlE48CaK20/Jx1LuRml9aDftLgdjXT8+Cw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", + "@babel/plugin-transform-optional-chaining": "^7.27.1" + } }, "@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==", + "version": "7.14.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.14.7.tgz", + "integrity": "sha512-RK8Wj7lXLY3bqei69/cc25gwS5puEc3dknoFPFbqfy3XxYQBQFvu4ioWpafMBAB+L9NyptQK4nMOa5Xz16og8Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-remap-async-to-generator": "^7.14.5", + "@babel/plugin-syntax-async-generators": "^7.8.4" + } + }, + "@babel/plugin-proposal-class-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", + "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-proposal-class-static-block": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.21.0.tgz", + "integrity": "sha512-XP5G9MWNUskFuP30IfFSEFB0Z6HzLIUcjYM4bYOPHXl7eiJ9HFv8tWj6TXTN5QODiEhDZAeI4hLok2iHFFV4hw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/helper-remap-async-to-generator": "^7.8.3", - "@babel/plugin-syntax-async-generators": "^7.8.0" + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-class-static-block": "^7.14.5" } }, "@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==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", + "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + } + }, + "@babel/plugin-proposal-export-namespace-from": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", + "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/plugin-syntax-dynamic-import": "^7.8.0" + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" } }, "@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==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", + "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-json-strings": "^7.8.3" + } + }, + "@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz", + "integrity": "sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + } + }, + "@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", + "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + } + }, + "@babel/plugin-proposal-numeric-separator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", + "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.0" + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" } }, "@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==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz", + "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0" + "@babel/compat-data": "^7.20.5", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.20.7" } }, "@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==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", + "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + } + }, + "@babel/plugin-proposal-optional-chaining": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz", + "integrity": "sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + } + }, + "@babel/plugin-proposal-private-methods": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", + "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.11.tgz", + "integrity": "sha512-0QZ8qP/3RLDVBwBFoWAwCtgcDZJVwA5LUJRZU8x2YFfKNuFq161wK3cuGrALu5yiPu+vzwTAg/sMWVNeWeNyaw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.0" + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "dependencies": { + "@babel/helper-annotate-as-pure": { + "version": "7.27.3", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.3.tgz", + "integrity": "sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==", + "dev": true, + "requires": { + "@babel/types": "^7.27.3" + } + } } }, "@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==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", + "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", "dev": true, "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.8.8", - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/plugin-syntax-async-generators": { @@ -828,6 +1039,24 @@ "@babel/helper-plugin-utils": "^7.8.0" } }, + "@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.12.13" + } + }, + "@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, "@babel/plugin-syntax-dynamic-import": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", @@ -837,6 +1066,15 @@ "@babel/helper-plugin-utils": "^7.8.0" } }, + "@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, "@babel/plugin-syntax-json-strings": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", @@ -846,6 +1084,33 @@ "@babel/helper-plugin-utils": "^7.8.0" } }, + "@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-nullish-coalescing-operator": { + "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.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, "@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", @@ -864,4071 +1129,4122 @@ "@babel/helper-plugin-utils": "^7.8.0" } }, - "@babel/plugin-syntax-top-level-await": { + "@babel/plugin-syntax-optional-chaining": { "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==", + "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.3" + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, "@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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.27.1.tgz", + "integrity": "sha512-8Z4TGic6xW70FKThA5HYEKKyBpOOsucTOD1DjU3fZxDg+K3zBJcXMFnt/4yQiZnf5+MiOMSXQ9PaEK/Ilh1DeA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.27.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==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.14.5.tgz", + "integrity": "sha512-szkbzQ0mNk0rpu76fzDdqSyPu0MuvpXgC+6rz5rpMb5OIRxdmHfQxrktL8CYolL2d8luMCZTR0DpIMIdL27IjA==", "dev": true, "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.14.5", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-remap-async-to-generator": "^7.14.5" } }, "@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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.27.1.tgz", + "integrity": "sha512-cnqkuOtZLapWYZUYM5rVIdv1nXYuFVIltZ6ZJ7nIj585QsjKM5dhL2Fu/lICXZ1OyIAFc7Qy+bvDAtTXqGrlhg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.27.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==", + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.28.0.tgz", + "integrity": "sha512-gKKnwjpdx5sER/wl0WN0efUBFzF/56YZO0RJrSYP4CljXnP31ByY7fol89AzomdlLNzI36AvOTmYHsnZTCkq8Q==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "lodash": "^4.17.13" + "@babel/helper-plugin-utils": "^7.27.1" } }, "@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==", + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.28.0.tgz", + "integrity": "sha512-IjM1IoJNw72AZFlj33Cu8X0q2XK/6AaVC3jQu+cgQ5lThWD5ajnuUAml80dqRmOhmPkTH8uAwnpMu9Rvj0LTRA==", "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", - "globals": "^11.1.0" + "@babel/helper-annotate-as-pure": "^7.27.3", + "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-globals": "^7.28.0", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-replace-supers": "^7.27.1", + "@babel/traverse": "^7.28.0" + }, + "dependencies": { + "@babel/helper-annotate-as-pure": { + "version": "7.27.3", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.3.tgz", + "integrity": "sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==", + "dev": true, + "requires": { + "@babel/types": "^7.27.3" + } + } } }, "@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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.27.1.tgz", + "integrity": "sha512-lj9PGWvMTVksbWiDT2tW68zGS/cyo4AkZ/QTp0sQT0mjPopCmrSkzxeXkznjqBxzDI6TclZhOJbBmbBLjuOZUw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/template": "^7.27.1" + }, + "dependencies": { + "@babel/template": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz", + "integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.27.1", + "@babel/parser": "^7.27.2", + "@babel/types": "^7.27.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==", + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.28.0.tgz", + "integrity": "sha512-v1nrSMBiKcodhsyJ4Gf+Z0U/yawmJDBOTpEB3mcQY52r9RIyPneGyAS/yM6seP/8I+mWI3elOMtT5dB8GJVs+A==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/traverse": "^7.28.0" } }, "@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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.27.1.tgz", + "integrity": "sha512-gEbkDVGRvjj7+T1ivxrfgygpT7GUd4vmODtYpbs0gZATdkX8/iSnOtZSxiZnsgm1YjTgjI6VKBGSJJevkrclzw==", "dev": true, "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.27.1.tgz", + "integrity": "sha512-MTyJk98sHvSs+cvZ4nOauwTTG1JeonDjSGvGGUNHreGQns+Mpt6WX/dVzWBHgg+dYZhkC4X+zTDfkTU+Vy9y7Q==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.27.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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.27.1.tgz", + "integrity": "sha512-uspvXnhHvGKf2r4VVtBpeFnuDWsJLQ6MF6lGJLC89jBR1uoVeqM416AZtTuhTezOfgHicpJQmoD5YUakO/YmXQ==", "dev": true, "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.27.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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.27.1.tgz", + "integrity": "sha512-BfbWFFEJFQzLCQ5N8VocnCtA8J1CLkNTe2Ms2wocj75dd6VpiqS5Z5quTYcUoo4Yq+DN0rtikODccuv7RU81sw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.27.1.tgz", + "integrity": "sha512-1bQeydJF9Nr1eBCMMbC+hdwmRlsv5XYOMu03YSWFwNs0HsAmtSxxF1fyuYPqemVldVyFmlCU7w8UE14LupUSZQ==", "dev": true, "requires": { - "@babel/helper-function-name": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-compilation-targets": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/traverse": "^7.27.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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.27.1.tgz", + "integrity": "sha512-0HCFSepIpLTkLcsi86GG3mTUzxV5jpmbv97hTETW3yzrAij8aqlD36toB1D0daVFJM8NK6GvKO0gslVQmm+zZA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.27.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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.27.1.tgz", + "integrity": "sha512-hqoBX4dcZ1I33jCSWcXrP+1Ku7kdqXf1oeah7ooKOIiAdKQ+uqftgCFNOSzA5AMS2XIHEYeGFg4cKRCdpxzVOQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.27.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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.27.1.tgz", + "integrity": "sha512-iCsytMg/N9/oFq6n+gFTvUYDZQOMK5kEdeYxmxt91fcJGycfxVP9CnrxoliM0oumFERba2i8ZtwRUCMhvP1LnA==", "dev": true, "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.27.1", + "@babel/helper-plugin-utils": "^7.27.1" } }, "@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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.27.1.tgz", + "integrity": "sha512-OJguuwlTYlN0gBZFRPqwOGNWssZjfIUdS7HMYtN8c1KmwpwHFBwTeFZrg9XZa+DFTitWOW5iTAG7tyCUPsCCyw==", "dev": true, "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.27.1", + "@babel/helper-plugin-utils": "^7.27.1" } }, "@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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.27.1.tgz", + "integrity": "sha512-w5N1XzsRbc0PQStASMksmUeqECuzKuTJer7kFagK8AXgpCMkeDMO5S+aaFb7A51ZYDF7XI34qsTX+fkHiIm5yA==", "dev": true, "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-module-transforms": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1", + "@babel/traverse": "^7.27.1" } }, "@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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.27.1.tgz", + "integrity": "sha512-iQBE/xC5BV1OxJbp6WG7jq9IWiD+xxlZhLrdwpPkTX3ydmXdvoCpyfJN7acaIBZaOqTfr76pgzqBJflNbeRK+w==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.9.0", - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-module-transforms": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.27.1.tgz", + "integrity": "sha512-SstR5JYy8ddZvD6MhV0tM/j16Qds4mIpJTOd1Yu9J9pJjH93bxHECF7pgtc28XvkzTD6Pxcm/0Z73Hvk7kb3Ng==", "dev": true, "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.8.3" + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" } }, "@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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.27.1.tgz", + "integrity": "sha512-f6PiYeqXQ05lYq3TIfIDu/MtliKUbNwkGApPUvyo6+tc7uaR4cPjPe7DFPr15Uyycg2lZU6btZ575CuQoYh7MQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.27.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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.27.1.tgz", + "integrity": "sha512-SFy8S9plRPbIcxlJ8A6mT/CxFdJx/c04JEctz4jf8YZaVS2px34j7NXRrlGlHkN/M2gnpL37ZpGRGVFLd3l8Ng==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/helper-replace-supers": "^7.8.3" + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-replace-supers": "^7.27.1" + } + }, + "@babel/plugin-transform-optional-chaining": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.27.1.tgz", + "integrity": "sha512-BQmKPPIuc8EkZgNKsv0X4bPmOoayeu4F1YCwx2/CfmDSXDbp7GnzlUH+/ul5VGfRg1AoFPsrIThlEBj2xb4CAg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.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==", + "version": "7.27.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.27.7.tgz", + "integrity": "sha512-qBkYTYCb76RRxUM6CcZA5KRu8K4SM8ajzVeUgVdMVO9NN9uI/GaVmBg/WKJJGnNokV9SY8FxNOVWGXzqzUidBg==", "dev": true, "requires": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.27.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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.27.1.tgz", + "integrity": "sha512-oThy3BCuCha8kDZ8ZkgOg2exvPYUlprMukKQXI1r1pJ47NCvxfkEy8vK+r/hT9nF0Aa4H1WUPZZjHTFtAhGfmQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.27.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==", + "version": "7.28.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.28.1.tgz", + "integrity": "sha512-P0QiV/taaa3kXpLY+sXla5zec4E+4t4Aqc9ggHlfZ7a2cp8/x/Gv08jfwEtn9gnnYIMvHx6aoOZ8XJL8eU71Dg==", "dev": true, "requires": { - "regenerator-transform": "^0.14.2" + "@babel/helper-plugin-utils": "^7.27.1" } }, "@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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.27.1.tgz", + "integrity": "sha512-V2ABPHIJX4kC7HegLkYoDpfg9PVmuWy/i6vUM5eGK22bx4YVFD3M5F0QQnWQoDs6AGsUWTVOopBiMFQgHaSkVw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.27.1" + } + }, + "@babel/plugin-transform-runtime": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.14.5.tgz", + "integrity": "sha512-fPMBhh1AV8ZyneiCIA+wYYUH1arzlXR1UMcApjvchDhfKxhy2r2lReJv8uHEyihi4IFIGlr1Pdx7S5fkESDQsg==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5", + "babel-plugin-polyfill-corejs2": "^0.2.2", + "babel-plugin-polyfill-corejs3": "^0.2.2", + "babel-plugin-polyfill-regenerator": "^0.2.2", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } } }, "@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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.27.1.tgz", + "integrity": "sha512-N/wH1vcn4oYawbJ13Y/FxcQrWk63jhfNa7jef0ih7PHSIHX2LB7GWE1rkPrOnka9kwMxb6hMl19p7lidA+EHmQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.27.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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.27.1.tgz", + "integrity": "sha512-kpb3HUqaILBJcRFVhFUs6Trdd4mkrzcGXss+6/mxUd273PfbWqSDHRzMT2234gIg2QYfAjvXLSquP1xECSg09Q==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.27.1.tgz", + "integrity": "sha512-lhInBO5bi/Kowe2/aLdBAawijx+q1pQzicSgnkB6dUPc1+RC8QmJHKf2OjvU+NZWitguJHEaEmbV6VWEouT58g==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/helper-regex": "^7.8.3" + "@babel/helper-plugin-utils": "^7.27.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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.27.1.tgz", + "integrity": "sha512-fBJKiV7F2DxZUkg5EtHKXQdbsbURW3DZKQUWphDum0uRP6eHGGa/He9mc0mypL680pb+e/lDIthRohlv8NCHkg==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.27.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==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.27.1.tgz", + "integrity": "sha512-RiSILC+nRJM7FY5srIyc4/fGIwUhyDuuBSdWn4y6yT6gm652DpCHZjIipgn6B7MQ1ITOUnAKWixEUjQRIBIcLw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.27.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==", + "@babel/plugin-transform-unicode-escapes": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.27.1.tgz", + "integrity": "sha512-Ysg4v6AmF26k9vpfFuTZg8HRfVWzsh1kVfowA23y9j/Gu6dOuahdUVhkLqpObp3JIv27MLSii6noRnuKN8H0Mg==", "dev": true, "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.27.1" } }, - "@babel/preset-env": { - "version": "7.7.7", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.7.7.tgz", - "integrity": "sha512-pCu0hrSSDVI7kCVUOdcMNQEbOPJ52E+LrQ14sN8uL2ALfSqePZQlKrOy+tM4uhEdYlCHi4imr8Zz2cZe9oSdIg==", + "@babel/plugin-transform-unicode-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.27.1.tgz", + "integrity": "sha512-xvINq24TRojDuyt6JGtHmkVkrfVV3FPT16uytxImLeBZqW3/H52yN+kM1MGuyPkIQxrzKwPHs5U/MP3qKyzkGw==", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.7.4", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-async-generator-functions": "^7.7.4", - "@babel/plugin-proposal-dynamic-import": "^7.7.4", - "@babel/plugin-proposal-json-strings": "^7.7.4", - "@babel/plugin-proposal-object-rest-spread": "^7.7.7", - "@babel/plugin-proposal-optional-catch-binding": "^7.7.4", - "@babel/plugin-proposal-unicode-property-regex": "^7.7.7", - "@babel/plugin-syntax-async-generators": "^7.7.4", - "@babel/plugin-syntax-dynamic-import": "^7.7.4", - "@babel/plugin-syntax-json-strings": "^7.7.4", - "@babel/plugin-syntax-object-rest-spread": "^7.7.4", - "@babel/plugin-syntax-optional-catch-binding": "^7.7.4", - "@babel/plugin-syntax-top-level-await": "^7.7.4", - "@babel/plugin-transform-arrow-functions": "^7.7.4", - "@babel/plugin-transform-async-to-generator": "^7.7.4", - "@babel/plugin-transform-block-scoped-functions": "^7.7.4", - "@babel/plugin-transform-block-scoping": "^7.7.4", - "@babel/plugin-transform-classes": "^7.7.4", - "@babel/plugin-transform-computed-properties": "^7.7.4", - "@babel/plugin-transform-destructuring": "^7.7.4", - "@babel/plugin-transform-dotall-regex": "^7.7.7", - "@babel/plugin-transform-duplicate-keys": "^7.7.4", - "@babel/plugin-transform-exponentiation-operator": "^7.7.4", - "@babel/plugin-transform-for-of": "^7.7.4", - "@babel/plugin-transform-function-name": "^7.7.4", - "@babel/plugin-transform-literals": "^7.7.4", - "@babel/plugin-transform-member-expression-literals": "^7.7.4", - "@babel/plugin-transform-modules-amd": "^7.7.5", - "@babel/plugin-transform-modules-commonjs": "^7.7.5", - "@babel/plugin-transform-modules-systemjs": "^7.7.4", - "@babel/plugin-transform-modules-umd": "^7.7.4", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.7.4", - "@babel/plugin-transform-new-target": "^7.7.4", - "@babel/plugin-transform-object-super": "^7.7.4", - "@babel/plugin-transform-parameters": "^7.7.7", - "@babel/plugin-transform-property-literals": "^7.7.4", - "@babel/plugin-transform-regenerator": "^7.7.5", - "@babel/plugin-transform-reserved-words": "^7.7.4", - "@babel/plugin-transform-shorthand-properties": "^7.7.4", - "@babel/plugin-transform-spread": "^7.7.4", - "@babel/plugin-transform-sticky-regex": "^7.7.4", - "@babel/plugin-transform-template-literals": "^7.7.4", - "@babel/plugin-transform-typeof-symbol": "^7.7.4", - "@babel/plugin-transform-unicode-regex": "^7.7.4", - "@babel/types": "^7.7.4", - "browserslist": "^4.6.0", - "core-js-compat": "^3.6.0", - "invariant": "^2.2.2", - "js-levenshtein": "^1.1.3", - "semver": "^5.5.0" + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + } + }, + "@babel/preset-env": { + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.14.8.tgz", + "integrity": "sha512-a9aOppDU93oArQ51H+B8M1vH+tayZbuBqzjOhntGetZVa+4tTu5jp+XTwqHGG2lxslqomPYVSjIxQkFwXzgnxg==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.14.7", + "@babel/helper-compilation-targets": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-validator-option": "^7.14.5", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.14.5", + "@babel/plugin-proposal-async-generator-functions": "^7.14.7", + "@babel/plugin-proposal-class-properties": "^7.14.5", + "@babel/plugin-proposal-class-static-block": "^7.14.5", + "@babel/plugin-proposal-dynamic-import": "^7.14.5", + "@babel/plugin-proposal-export-namespace-from": "^7.14.5", + "@babel/plugin-proposal-json-strings": "^7.14.5", + "@babel/plugin-proposal-logical-assignment-operators": "^7.14.5", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.14.5", + "@babel/plugin-proposal-numeric-separator": "^7.14.5", + "@babel/plugin-proposal-object-rest-spread": "^7.14.7", + "@babel/plugin-proposal-optional-catch-binding": "^7.14.5", + "@babel/plugin-proposal-optional-chaining": "^7.14.5", + "@babel/plugin-proposal-private-methods": "^7.14.5", + "@babel/plugin-proposal-private-property-in-object": "^7.14.5", + "@babel/plugin-proposal-unicode-property-regex": "^7.14.5", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.14.5", + "@babel/plugin-transform-async-to-generator": "^7.14.5", + "@babel/plugin-transform-block-scoped-functions": "^7.14.5", + "@babel/plugin-transform-block-scoping": "^7.14.5", + "@babel/plugin-transform-classes": "^7.14.5", + "@babel/plugin-transform-computed-properties": "^7.14.5", + "@babel/plugin-transform-destructuring": "^7.14.7", + "@babel/plugin-transform-dotall-regex": "^7.14.5", + "@babel/plugin-transform-duplicate-keys": "^7.14.5", + "@babel/plugin-transform-exponentiation-operator": "^7.14.5", + "@babel/plugin-transform-for-of": "^7.14.5", + "@babel/plugin-transform-function-name": "^7.14.5", + "@babel/plugin-transform-literals": "^7.14.5", + "@babel/plugin-transform-member-expression-literals": "^7.14.5", + "@babel/plugin-transform-modules-amd": "^7.14.5", + "@babel/plugin-transform-modules-commonjs": "^7.14.5", + "@babel/plugin-transform-modules-systemjs": "^7.14.5", + "@babel/plugin-transform-modules-umd": "^7.14.5", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.14.7", + "@babel/plugin-transform-new-target": "^7.14.5", + "@babel/plugin-transform-object-super": "^7.14.5", + "@babel/plugin-transform-parameters": "^7.14.5", + "@babel/plugin-transform-property-literals": "^7.14.5", + "@babel/plugin-transform-regenerator": "^7.14.5", + "@babel/plugin-transform-reserved-words": "^7.14.5", + "@babel/plugin-transform-shorthand-properties": "^7.14.5", + "@babel/plugin-transform-spread": "^7.14.6", + "@babel/plugin-transform-sticky-regex": "^7.14.5", + "@babel/plugin-transform-template-literals": "^7.14.5", + "@babel/plugin-transform-typeof-symbol": "^7.14.5", + "@babel/plugin-transform-unicode-escapes": "^7.14.5", + "@babel/plugin-transform-unicode-regex": "^7.14.5", + "@babel/preset-modules": "^0.1.4", + "@babel/types": "^7.14.8", + "babel-plugin-polyfill-corejs2": "^0.2.2", + "babel-plugin-polyfill-corejs3": "^0.2.2", + "babel-plugin-polyfill-regenerator": "^0.2.2", + "core-js-compat": "^3.15.0", + "semver": "^6.3.0" }, "dependencies": { "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true } } }, + "@babel/preset-modules": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6.tgz", + "integrity": "sha512-ID2yj6K/4lKfhuU3+EX4UvNbIt7eACFbHmNUjzA+ep+B5971CknnA/9DEWKbRokfbbtblxxxXFJJrH47UEAMVg==", + "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" + } + }, "@babel/runtime": { - "version": "7.9.2", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.9.2.tgz", - "integrity": "sha512-NE2DtOdufG7R5vnfQUTehdTfNycfUANEtCa9PssN9O/xmTzP4E08UI797ixaei6hBEVL9BI/PsdJS5x7mWoB9Q==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.8.tgz", + "integrity": "sha512-twj3L8Og5SaCRCErB4x4ajbvBIVV77CGeFglHpeg5WC5FF8TZzBWXtTJ4MqaD9QszLYTtr+IsaAL2rEUevb+eg==", "dev": true, "requires": { "regenerator-runtime": "^0.13.4" - }, - "dependencies": { - "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 - } } }, "@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==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.14.5.tgz", + "integrity": "sha512-6Z3Po85sfxRGachLULUhOmvAaOo7xCvqGQtxINai2mEGPFm6pQ4z5QInFnUrRpfoSV60BnjyF5F3c+15fxFV1g==", "dev": true, "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6" + "@babel/code-frame": "^7.14.5", + "@babel/parser": "^7.14.5", + "@babel/types": "^7.14.5" } }, "@babel/traverse": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.9.0.tgz", - "integrity": "sha512-jAZQj0+kn4WTHO5dUZkZKhbFrqZE7K5LAQ5JysMnmvGij+wOdr+8lWqPeW0BcF4wFwrEXXtdGO7wcV6YPJcf3w==", + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.0.tgz", + "integrity": "sha512-mGe7UK5wWyh0bKRfupsUchrQGqvDbZDbKJw+kcRGSmdHVYrv+ltd0pnpDTVpiTqnaBru9iEvA8pz8W46v0Amwg==", "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", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.13" + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.28.0", + "@babel/helper-globals": "^7.28.0", + "@babel/parser": "^7.28.0", + "@babel/template": "^7.27.2", + "@babel/types": "^7.28.0", + "debug": "^4.3.1" }, "dependencies": { "@babel/generator": { - "version": "7.9.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.9.4.tgz", - "integrity": "sha512-rjP8ahaDy/ouhrvCoU1E5mqaitWrxwuNGU+dy1EpaoK48jZay4MdkskKGIMHLZNewg8sAsqpGSREJwP0zH3YQA==", + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.28.0.tgz", + "integrity": "sha512-lJjzvrbEeWrhB4P3QBsH7tey117PjLZnDbLiQEKjQ/fNJTjuq4HSqgFA+UNSwZT8D7dxxbnuSBMsa1lrWzKlQg==", "dev": true, "requires": { - "@babel/types": "^7.9.0", - "jsesc": "^2.5.1", - "lodash": "^4.17.13", - "source-map": "^0.5.0" + "@babel/parser": "^7.28.0", + "@babel/types": "^7.28.0", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" } }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "@babel/template": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz", + "integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.27.1", + "@babel/parser": "^7.27.2", + "@babel/types": "^7.27.1" + } + }, + "jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", "dev": true } } }, "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", + "version": "7.28.1", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.1.tgz", + "integrity": "sha512-x0LvFTekgSX+83TI28Y9wYPUfzrnl2aT5+5QLnO6v7mSJYtEEevuDRN0F0uSHRk1G1IWZC43o00Y0xDDrpBGPQ==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1" } }, - "@istanbuljs/schema": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.2.tgz", - "integrity": "sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==", + "@colors/colors": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", "dev": true }, - "@ngtools/webpack": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-9.0.7.tgz", - "integrity": "sha512-MvoMaErkjESefoIrbt8F2RpKDr9KavwvH4v3hwSAKooVNFdFKNsjJ7m3gCQehumEfsYFq2mrEK2sTW4/CpFlMQ==", + "@csstools/convert-colors": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@csstools/convert-colors/-/convert-colors-1.4.0.tgz", + "integrity": "sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw==", + "dev": true + }, + "@discoveryjs/json-ext": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.3.tgz", + "integrity": "sha512-Fxt+AfXgjMoin2maPIYzFZnQjAXjAL0PHscM5pRTtatFqB+vZxAM9tLp2Optnuw3QOQC40jTNeGYFOMvyf7v9g==", + "dev": true + }, + "@eslint/eslintrc": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", + "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", "dev": true, "requires": { - "@angular-devkit/core": "9.0.7", - "enhanced-resolve": "4.1.1", - "rxjs": "6.5.3", - "webpack-sources": "1.4.3" + "ajv": "^6.12.4", + "debug": "^4.1.1", + "espree": "^7.3.0", + "globals": "^13.9.0", + "ignore": "^4.0.6", + "import-fresh": "^3.2.1", + "js-yaml": "^3.13.1", + "minimatch": "^3.0.4", + "strip-json-comments": "^3.1.1" }, "dependencies": { - "rxjs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.3.tgz", - "integrity": "sha512-wuYsAYYFdWTAnAaPoKGNhfpWwKZbJW+HgAJ+mImp+Epl7BG8oNWBCTyRM8gba9k4lk8BgWdoYm21Mo/RYhhbgA==", + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, "requires": { - "tslib": "^1.9.0" + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" } + }, + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "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 } } }, - "@schematics/angular": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-9.0.7.tgz", - "integrity": "sha512-3UCeexYx/YVo3kboyPZ8KgqBTduMA18AAm3s2yrC0qj41fBFVVZAZLa74uouTf4RYVgy9kR7J3uv6VLxrJPOnQ==", - "dev": true, - "requires": { - "@angular-devkit/core": "9.0.7", - "@angular-devkit/schematics": "9.0.7" - } - }, - "@schematics/update": { - "version": "0.900.7", - "resolved": "https://registry.npmjs.org/@schematics/update/-/update-0.900.7.tgz", - "integrity": "sha512-e9tX2DGNYfj/k9mVICpQt2bWIYyD92dlsip7LzPeZGt+R9zCp5w19uBLa8Z00OgEGzFR1krhRvkQE5OxkkAnVw==", + "@humanwhocodes/config-array": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", + "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==", "dev": true, "requires": { - "@angular-devkit/core": "9.0.7", - "@angular-devkit/schematics": "9.0.7", - "@yarnpkg/lockfile": "1.1.0", - "ini": "1.3.5", - "npm-package-arg": "^7.0.0", - "pacote": "9.5.8", - "rxjs": "6.5.3", - "semver": "6.3.0", - "semver-intersect": "1.4.0" - }, - "dependencies": { - "npm-package-arg": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-7.0.0.tgz", - "integrity": "sha512-xXxr8y5U0kl8dVkz2oK7yZjPBvqM2fwaO5l3Yg13p03v8+E3qQcD0JNhHzjL1vyGgxcKkD0cco+NLR72iuPk3g==", - "dev": true, - "requires": { - "hosted-git-info": "^3.0.2", - "osenv": "^0.1.5", - "semver": "^5.6.0", - "validate-npm-package-name": "^3.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 - } - } - }, - "rxjs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.3.tgz", - "integrity": "sha512-wuYsAYYFdWTAnAaPoKGNhfpWwKZbJW+HgAJ+mImp+Epl7BG8oNWBCTyRM8gba9k4lk8BgWdoYm21Mo/RYhhbgA==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - } + "@humanwhocodes/object-schema": "^1.2.0", + "debug": "^4.1.1", + "minimatch": "^3.0.4" } }, - "@types/color-name": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", - "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", - "dev": true - }, - "@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 - }, - "@types/events": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz", - "integrity": "sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g==", + "@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", "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, - "requires": { - "@types/events": "*", - "@types/minimatch": "*", - "@types/node": "*" - } - }, - "@types/jasmine": { - "version": "3.5.10", - "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-3.5.10.tgz", - "integrity": "sha512-3F8qpwBAiVc5+HPJeXJpbrl+XjawGmciN5LgiO7Gv1pl1RHtjoMNqZpqEksaPJW05ViKe8snYInRs6xB25Xdew==", + "@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", "dev": true }, - "@types/jasminewd2": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/@types/jasminewd2/-/jasminewd2-2.0.8.tgz", - "integrity": "sha512-d9p31r7Nxk0ZH0U39PTH0hiDlJ+qNVGjlt1ucOoTUptxb2v+Y5VMnsxfwN+i3hK4yQnqBi3FMmoMFcd1JHDxdg==", + "@jridgewell/gen-mapping": { + "version": "0.3.12", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.12.tgz", + "integrity": "sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg==", "dev": true, "requires": { - "@types/jasmine": "*" + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" } }, - "@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 - }, - "@types/node": { - "version": "12.12.34", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.34.tgz", - "integrity": "sha512-BneGN0J9ke24lBRn44hVHNeDlrXRYF+VRp0HbSUNnEZahXGAysHZIqnf/hER6aabdBgzM4YOV4jrR8gj4Zfi0g==", + "@jridgewell/resolve-uri": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-1.0.0.tgz", + "integrity": "sha512-9oLAnygRMi8Q5QkYEU4XWK04B+nuoXoxjRvRxgjuChkLZFBja0YPSgdZ7dZtwhncLBcQe/I/E+fLuk5qxcYVJA==", "dev": true }, - "@types/pdfkit": { - "version": "0.10.5", - "resolved": "https://registry.npmjs.org/@types/pdfkit/-/pdfkit-0.10.5.tgz", - "integrity": "sha512-VBv1XDVge3mfeY6MsiyFLm9bPCDTWhxR0+yV3GeiSyjGY3CkbSQHOOdYfKVr834B2grALC763PAM6TreTM5vJA==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/pdfmake": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/@types/pdfmake/-/pdfmake-0.1.12.tgz", - "integrity": "sha512-EsLMa2dclRTx2/36qotZQNi3h5EUoyhLqT3TGK50h3ZaiTJSIrksmkEXJa6xNwoek0JwDELr4MYE2LQsl/dIUw==", + "@jridgewell/source-map": { + "version": "0.3.10", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.10.tgz", + "integrity": "sha512-0pPkgz9dY+bijgistcTTJ5mR+ocqRXLuhXHYdzoMmmoJ2C9S46RCm2GMUbatPEUK9Yjy26IrAy8D/M00lLkv+Q==", "dev": true, "requires": { - "@types/node": "*", - "@types/pdfkit": "*" + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" } }, - "@types/q": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.2.tgz", - "integrity": "sha512-ce5d3q03Ex0sy4R14722Rmt6MT07Ua+k4FwDfdcToYJcMKNtRVQvJ6JCAPdAmAnbRb6CsX6aYb9m96NGod9uTw==", - "dev": true - }, - "@types/selenium-webdriver": { - "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==", + "@jridgewell/sourcemap-codec": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.4.tgz", + "integrity": "sha512-VT2+G1VQs/9oz078bLrYbecdZKs912zQlkelYpuf+SXF+QvZDYJlbx/LSx+meSAwdDFnF8FVXW92AVjjkVmgFw==", "dev": true }, - "@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==", + "@jridgewell/trace-mapping": { + "version": "0.3.29", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.29.tgz", + "integrity": "sha512-uw6guiW/gcAGPDhLmd77/6lW8QLeiV5RUTsAX46Db6oLhGaVj4lhnPwb184s1bkc8kdVg/+h988dro8GRDpmYQ==", "dev": true, "requires": { - "@types/node": "*", - "@types/source-list-map": "*", - "source-map": "^0.6.1" + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" }, "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", "dev": true } } }, - "@webassemblyjs/ast": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.8.5.tgz", - "integrity": "sha512-aJMfngIZ65+t71C3y2nBBg5FFG0Okt9m0XEgWZ7Ywgn1oMAT8cNwx00Uv1cQyHtidq0Xn94R4TAywO+LCQ+ZAQ==", + "@jsdevtools/coverage-istanbul-loader": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@jsdevtools/coverage-istanbul-loader/-/coverage-istanbul-loader-3.0.5.tgz", + "integrity": "sha512-EUCPEkaRPvmHjWAAZkWMT7JDzpw7FKB00WTISaiXsbNOd5hCHg77XLA8sLYLFDo1zepYLo2w7GstN8YBqRXZfA==", "dev": true, "requires": { - "@webassemblyjs/helper-module-context": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/wast-parser": "1.8.5" + "convert-source-map": "^1.7.0", + "istanbul-lib-instrument": "^4.0.3", + "loader-utils": "^2.0.0", + "merge-source-map": "^1.1.0", + "schema-utils": "^2.7.0" } }, - "@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 - }, - "@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 - }, - "@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==", + "@ngtools/webpack": { + "version": "12.2.18", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-12.2.18.tgz", + "integrity": "sha512-6h/QSG6oZDs2BGfrozdOKqtM5daoCu05q+0gyb3owHz1u9FtMeXXKQ3sQfyFC/GNT3dTMlH6YFxsJPvMPwuy9A==", "dev": true }, - "@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==", + "@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", "dev": true, "requires": { - "@webassemblyjs/wast-printer": "1.8.5" + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" } }, - "@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==", + "@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", "dev": true }, - "@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==", + "@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "mamacro": "^0.0.3" + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" } }, - "@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 - }, - "@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==", + "@npmcli/git": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-2.1.0.tgz", + "integrity": "sha512-/hBFX/QG1b+N7PZBFs0bi+evgRZcK9nWBxQKZkGoXUT5hJSwl5c4d7y8/hm+NQZRPhQ67RzFaj5UM9YeyKoryw==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-buffer": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5" + "@npmcli/promise-spawn": "^1.3.2", + "lru-cache": "^6.0.0", + "mkdirp": "^1.0.4", + "npm-pick-manifest": "^6.1.1", + "promise-inflight": "^1.0.1", + "promise-retry": "^2.0.1", + "semver": "^7.3.5", + "which": "^2.0.2" + }, + "dependencies": { + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } } }, - "@webassemblyjs/ieee754": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.8.5.tgz", - "integrity": "sha512-aaCvQYrvKbY/n6wKHb/ylAJr27GglahUO89CcGXMItrOBqRarUMxWLJgxm9PJNuKULwN5n1csT9bYoMeZOGF3g==", + "@npmcli/installed-package-contents": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz", + "integrity": "sha512-9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw==", "dev": true, "requires": { - "@xtuc/ieee754": "^1.2.0" + "npm-bundled": "^1.1.1", + "npm-normalize-package-bin": "^1.0.1" } }, - "@webassemblyjs/leb128": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.8.5.tgz", - "integrity": "sha512-plYUuUwleLIziknvlP8VpTgO4kqNaH57Y3JnNa6DLpu/sGcP6hbVdfdX5aHAV716pQBKrfuU26BJK29qY37J7A==", + "@npmcli/move-file": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.1.2.tgz", + "integrity": "sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==", "dev": true, "requires": { - "@xtuc/long": "4.2.2" + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" } }, - "@webassemblyjs/utf8": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.8.5.tgz", - "integrity": "sha512-U7zgftmQriw37tfD934UNInokz6yTmn29inT2cAetAsaU9YeVCveWEwhKL1Mg4yS7q//NGdzy79nlXh3bT8Kjw==", + "@npmcli/node-gyp": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-1.0.3.tgz", + "integrity": "sha512-fnkhw+fmX65kiLqk6E3BFLXNC26rUhK90zVwe2yncPliVT/Qos3xjhTLE59Df8KnPlcwIERXKVlU1bXoUQ+liA==", "dev": true }, - "@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", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/helper-wasm-section": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5", - "@webassemblyjs/wasm-opt": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5", - "@webassemblyjs/wast-printer": "1.8.5" - } - }, - "@webassemblyjs/wasm-gen": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.8.5.tgz", - "integrity": "sha512-BCZBT0LURC0CXDzj5FXSc2FPTsxwp3nWcqXQdOZE4U7h7i8FqtFK5Egia6f9raQLpEKT1VL7zr4r3+QX6zArWg==", + "@npmcli/promise-spawn": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-1.3.2.tgz", + "integrity": "sha512-QyAGYo/Fbj4MXeGdJcFzZ+FkDkomfRBrPM+9QYJSg+PxgAUL+LU3FneQk37rKR2/zjqkCV1BLHccX98wRXG3Sg==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/ieee754": "1.8.5", - "@webassemblyjs/leb128": "1.8.5", - "@webassemblyjs/utf8": "1.8.5" + "infer-owner": "^1.0.4" } }, - "@webassemblyjs/wasm-opt": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.8.5.tgz", - "integrity": "sha512-HKo2mO/Uh9A6ojzu7cjslGaHaUU14LdLbGEKqTR7PBKwT6LdPtLLh9fPY33rmr5wcOMrsWDbbdCHq4hQUdd37Q==", + "@npmcli/run-script": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-2.0.0.tgz", + "integrity": "sha512-fSan/Pu11xS/TdaTpTB0MRn9guwGU8dye+x56mEVgBEd/QsybBbYcAL0phPXi8SGWFEChkQd6M9qL4y6VOpFig==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-buffer": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5" + "@npmcli/node-gyp": "^1.0.2", + "@npmcli/promise-spawn": "^1.3.2", + "node-gyp": "^8.2.0", + "read-package-json-fast": "^2.0.1" } }, - "@webassemblyjs/wasm-parser": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.8.5.tgz", - "integrity": "sha512-pi0SYE9T6tfcMkthwcgCpL0cM9nRYr6/6fjgDtL6q/ZqKHdMWvxitRi5JcZ7RI4SNJJYnYNaWy5UUrHQy998lw==", + "@schematics/angular": { + "version": "12.2.18", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-12.2.18.tgz", + "integrity": "sha512-niRS9Ly9y8uI0YmTSbo8KpdqCCiZ/ATMZWeS2id5M8JZvfXbngwiqJvojdSol0SWU+n1W4iA+lJBdt4gSKlD5w==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-api-error": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/ieee754": "1.8.5", - "@webassemblyjs/leb128": "1.8.5", - "@webassemblyjs/utf8": "1.8.5" + "@angular-devkit/core": "12.2.18", + "@angular-devkit/schematics": "12.2.18", + "jsonc-parser": "3.0.0" } }, - "@webassemblyjs/wast-parser": { - "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", - "@webassemblyjs/helper-api-error": "1.8.5", - "@webassemblyjs/helper-code-frame": "1.8.5", - "@webassemblyjs/helper-fsm": "1.8.5", - "@xtuc/long": "4.2.2" - } + "@socket.io/component-emitter": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.2.tgz", + "integrity": "sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==", + "dev": true }, - "@webassemblyjs/wast-printer": { - "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, + "@swc/helpers": { + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.3.17.tgz", + "integrity": "sha512-tb7Iu+oZ+zWJZ3HJqwx8oNwSDIU440hmVMDPhpACWQWnrZHK99Bxs70gT1L2dnr5Hg50ZRWEFkQCAnOVVV0z1Q==", "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/wast-parser": "1.8.5", - "@xtuc/long": "4.2.2" + "tslib": "^2.4.0" } }, - "@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 - }, - "@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==", + "@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", "dev": true }, - "@yarnpkg/lockfile": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", - "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", + "@trysound/sax": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", + "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", "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==", + "@types/cors": { + "version": "2.8.19", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.19.tgz", + "integrity": "sha512-mFNylyeyqN93lfe/9CSxOGREz8cpzAhH+E93xJ4xWQf62V8sQ/24reV2nyzUWM6H6Xji+GGHpkbLe7pVoUEskg==", "dev": true, "requires": { - "jsonparse": "^1.2.0", - "through": ">=2.2.7 <3" - } - }, - "accepts": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", - "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", - "requires": { - "mime-types": "~2.1.24", - "negotiator": "0.6.2" - } - }, - "acorn": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.1.1.tgz", - "integrity": "sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg==" - }, - "acorn-node": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz", - "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==", - "requires": { - "acorn": "^7.0.0", - "acorn-walk": "^7.0.0", - "xtend": "^4.0.2" + "@types/node": "*" } }, - "acorn-walk": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.1.1.tgz", - "integrity": "sha512-wdlPY2tm/9XBr7QkKlq0WQVgiuGTX6YWPyRyBviSoScBuLfTVQhvwg6wJ369GJ/1nPfTLMfnrFIfjqVg6d+jQQ==" - }, - "adm-zip": { - "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": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz", - "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=", - "dev": true + "@types/crypto-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@types/crypto-js/-/crypto-js-4.2.2.tgz", + "integrity": "sha512-sDOLlVbHhXpAUAL0YHDUUwDZf3iN4Bwi4W6a0W0b+QcAezUbRtH4FVb+9J4h+XFPW7l/gQ9F8qC7P+Ec4k8QVQ==" }, - "agent-base": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz", - "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==", + "@types/eslint": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-9.6.1.tgz", + "integrity": "sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==", "dev": true, "requires": { - "es6-promisify": "^5.0.0" + "@types/estree": "*", + "@types/json-schema": "*" } }, - "agentkeepalive": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-3.5.2.tgz", - "integrity": "sha512-e0L/HNe6qkQ7H19kTlRRqUibEAwDK5AFk6y3PtMsuut2VAH6+Q4xZml1tNDJD7kSAyqmbG/K08K5WEJYtUrSlQ==", + "@types/eslint-scope": { + "version": "3.7.7", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", + "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", "dev": true, "requires": { - "humanize-ms": "^1.2.1" + "@types/eslint": "*", + "@types/estree": "*" } }, - "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" - } + "@types/estree": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", + "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", + "dev": true }, - "ajv": { - "version": "6.10.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", - "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==", + "@types/glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==", "dev": true, "requires": { - "fast-deep-equal": "^2.0.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" + "@types/minimatch": "*", + "@types/node": "*" } }, - "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 - }, - "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 - }, - "alphanum-sort": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/alphanum-sort/-/alphanum-sort-1.0.2.tgz", - "integrity": "sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM=", + "@types/jasmine": { + "version": "3.6.11", + "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-3.6.11.tgz", + "integrity": "sha512-S6pvzQDvMZHrkBz2Mcn/8Du7cpr76PlRJBAoHnSDNbulULsH5dp0Gns+WRyNX5LHejz/ljxK4/vIHK/caHt6SQ==", "dev": true }, - "amdefine": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", - "optional": true - }, - "angular-animations": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/angular-animations/-/angular-animations-0.0.10.tgz", - "integrity": "sha512-UKKWRZDDXl3m+bcS1PfW5xZ2WoyM9ixfdLS7OG9lDrWm5KkIYEIrZvC+r5nfU3C5ovltHId5e2BlwYqL18kxOA==", + "@types/jasminewd2": { + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/@types/jasminewd2/-/jasminewd2-2.0.13.tgz", + "integrity": "sha512-aJ3wj8tXMpBrzQ5ghIaqMisD8C3FIrcO6sDKHqFbuqAsI7yOxj0fA7MrRCPLZHIVUjERIwsMmGn/vB0UQ9u0Hg==", + "dev": true, "requires": { - "tslib": "^1.9.0" + "@types/jasmine": "*" } }, - "ansi-colors": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.4.tgz", - "integrity": "sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==", + "@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", "dev": true }, - "ansi-escapes": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", - "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", + "@types/minimatch": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-6.0.0.tgz", + "integrity": "sha512-zmPitbQ8+6zNutpwgcQuLcsEpn/Cj54Kbn7L5pX0Os5kdWplB7xPgEh/g+SWOB/qmows2gpuCaPyduq8ZZRnxA==", "dev": true, "requires": { - "type-fest": "^0.11.0" + "minimatch": "*" } }, - "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 + "@types/node": { + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "@types/parse-json": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", + "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==", "dev": true }, - "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==", + "@types/pdfkit": { + "version": "0.17.2", + "resolved": "https://registry.npmjs.org/@types/pdfkit/-/pdfkit-0.17.2.tgz", + "integrity": "sha512-a7mqP/l8lsLMVNhQ3N2blU5pA1KX0YFE8FxWp0OTqZQKEZoPk7ndAlW+kdFBAWpFmLpy6fFbMRm4a6ZELWNgOQ==", "dev": true, "requires": { - "color-convert": "^1.9.0" + "@types/node": "*" } }, - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "@types/pdfmake": { + "version": "0.1.21", + "resolved": "https://registry.npmjs.org/@types/pdfmake/-/pdfmake-0.1.21.tgz", + "integrity": "sha512-rDmJr/jzUZSg/AzWYAMVBS4z4weZKTOtrD6Jlt+hzZu87bkIe7WVA02+m+uGGopyTUazFoWYT6HXxwT68Nqfeg==", "dev": true, "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" + "@types/node": "*", + "@types/pdfkit": "*" } }, - "app-root-path": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/app-root-path/-/app-root-path-2.2.1.tgz", - "integrity": "sha512-91IFKeKk7FjfmezPKkwtaRvSpnUc4gDwPAjA1YZ9Gn0q0PPeW+vbeUsZuyDwjI7+QTHhcLen2v25fi/AmhvbJA==", + "@types/q": { + "version": "0.0.32", + "resolved": "https://registry.npmjs.org/@types/q/-/q-0.0.32.tgz", + "integrity": "sha512-qYi3YV9inU/REEfxwVcGZzbS3KG/Xs90lv0Pr+lDtuVjBPGd1A+eciXzVSaRvLify132BfcvhvEjeVahrUl0Ug==", "dev": true }, - "append-transform": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-1.0.0.tgz", - "integrity": "sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw==", - "dev": true, + "@types/qrcode": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@types/qrcode/-/qrcode-1.5.5.tgz", + "integrity": "sha512-CdfBi/e3Qk+3Z/fXYShipBT13OJ2fDO2Q2w5CIP5anLTLIndQG9z6P1cnm+8zCWSpm5dnxMFd/uREtb0EXuQzg==", "requires": { - "default-require-extensions": "^2.0.0" + "@types/node": "*" } }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "@types/selenium-webdriver": { + "version": "3.0.26", + "resolved": "https://registry.npmjs.org/@types/selenium-webdriver/-/selenium-webdriver-3.0.26.tgz", + "integrity": "sha512-dyIGFKXfUFiwkMfNGn1+F6b80ZjR3uSYv1j6xVJSDlft5waZ2cwkHW4e7zNzvq7hiEackcgvBpmnXZrI1GltPg==", "dev": true }, - "arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "@types/source-list-map": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.6.tgz", + "integrity": "sha512-5JcVt1u5HDmlXkwOD2nslZVllBBc7HDuOICfiZah2Z0is8M8g+ddAEawbmd3VjedfDHBzxCaXLs07QEmb7y54g==", "dev": true }, - "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" - } - }, - "aria-query": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-3.0.0.tgz", - "integrity": "sha1-ZbP8wcoRVajJrmTW7uKX8V1RM8w=", + "@types/webpack-sources": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-0.1.12.tgz", + "integrity": "sha512-+vRVqE3LzMLLVPgZHUeI8k1YmvgEky+MOir5fQhKvFxpB8uZ0CFnGqxkRAmf8jvNhUBQzhuGZpIMNWZDeEyDIA==", "dev": true, "requires": { - "ast-types-flow": "0.0.7", - "commander": "^2.11.0" + "@types/node": "*", + "@types/source-list-map": "*", + "source-map": "^0.6.1" + }, + "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 + } } }, - "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 - }, - "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 - }, - "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 - }, - "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 - }, - "array-from": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", - "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=" - }, - "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "@typescript-eslint/eslint-plugin": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.33.0.tgz", + "integrity": "sha512-aINiAxGVdOl1eJyVjaWn/YcVAq4Gi/Yo35qHGCnqbWVz61g39D0h23veY/MA0rFFGfxK7TySg2uwDeNv+JgVpg==", "dev": true, "requires": { - "array-uniq": "^1.0.1" + "@typescript-eslint/experimental-utils": "4.33.0", + "@typescript-eslint/scope-manager": "4.33.0", + "debug": "^4.3.1", + "functional-red-black-tree": "^1.0.1", + "ignore": "^5.1.8", + "regexpp": "^3.1.0", + "semver": "^7.3.5", + "tsutils": "^3.21.0" + }, + "dependencies": { + "@typescript-eslint/experimental-utils": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.33.0.tgz", + "integrity": "sha512-zeQjOoES5JFjTnAhI5QY7ZviczMzDptls15GFsI6jyUOq0kOf9+WonkhtlIhh0RgHRnqj5gdNxW5j1EvAyYg6Q==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.7", + "@typescript-eslint/scope-manager": "4.33.0", + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/typescript-estree": "4.33.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0" + } + }, + "@typescript-eslint/types": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.33.0.tgz", + "integrity": "sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.33.0.tgz", + "integrity": "sha512-rkWRY1MPFzjwnEVHsxGemDzqqddw2QbTJlICPD9p9I9LfsO8fdmfQPOX3uKfUaGRDFJbfrtm/sXhVXN4E+bzCA==", + "dev": true, + "requires": { + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/visitor-keys": "4.33.0", + "debug": "^4.3.1", + "globby": "^11.0.3", + "is-glob": "^4.0.1", + "semver": "^7.3.5", + "tsutils": "^3.21.0" + } + }, + "eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^2.0.0" + } + } } }, - "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 - }, - "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 - }, - "arraybuffer.slice": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz", - "integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog==", - "dev": true - }, - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", - "dev": true - }, - "asap": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=", - "dev": true - }, - "asn1": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", - "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "@typescript-eslint/eslint-plugin-tslint": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin-tslint/-/eslint-plugin-tslint-4.33.0.tgz", + "integrity": "sha512-o3ujMErtZJPgiNRETRJefo1bFNrloocOa5dMU49OW/G+Rq92IbXTY6FSF5MOwrdQK1X+VBEcA8y6PhUPWGlYqA==", "dev": true, "requires": { - "safer-buffer": "~2.1.0" + "@typescript-eslint/experimental-utils": "4.33.0", + "lodash": "^4.17.21" + }, + "dependencies": { + "@typescript-eslint/experimental-utils": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.33.0.tgz", + "integrity": "sha512-zeQjOoES5JFjTnAhI5QY7ZviczMzDptls15GFsI6jyUOq0kOf9+WonkhtlIhh0RgHRnqj5gdNxW5j1EvAyYg6Q==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.7", + "@typescript-eslint/scope-manager": "4.33.0", + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/typescript-estree": "4.33.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0" + } + }, + "@typescript-eslint/types": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.33.0.tgz", + "integrity": "sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.33.0.tgz", + "integrity": "sha512-rkWRY1MPFzjwnEVHsxGemDzqqddw2QbTJlICPD9p9I9LfsO8fdmfQPOX3uKfUaGRDFJbfrtm/sXhVXN4E+bzCA==", + "dev": true, + "requires": { + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/visitor-keys": "4.33.0", + "debug": "^4.3.1", + "globby": "^11.0.3", + "is-glob": "^4.0.1", + "semver": "^7.3.5", + "tsutils": "^3.21.0" + } + }, + "eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^2.0.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==", + "@typescript-eslint/experimental-utils": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.23.0.tgz", + "integrity": "sha512-WAFNiTDnQfrF3Z2fQ05nmCgPsO5o790vOhmWKXbbYQTO9erE1/YsFot5/LnOUizLzU2eeuz6+U/81KV5/hFTGA==", "dev": true, "requires": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" + "@types/json-schema": "^7.0.3", + "@typescript-eslint/scope-manager": "4.23.0", + "@typescript-eslint/types": "4.23.0", + "@typescript-eslint/typescript-estree": "4.23.0", + "eslint-scope": "^5.0.0", + "eslint-utils": "^2.0.0" + }, + "dependencies": { + "@typescript-eslint/scope-manager": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.23.0.tgz", + "integrity": "sha512-ZZ21PCFxPhI3n0wuqEJK9omkw51wi2bmeKJvlRZPH5YFkcawKOuRMQMnI8mH6Vo0/DoHSeZJnHiIx84LmVQY+w==", + "dev": true, + "requires": { + "@typescript-eslint/types": "4.23.0", + "@typescript-eslint/visitor-keys": "4.23.0" + } + }, + "@typescript-eslint/visitor-keys": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.23.0.tgz", + "integrity": "sha512-5PNe5cmX9pSifit0H+nPoQBXdbNzi5tOEec+3riK+ku4e3er37pKxMKDH5Ct5Y4fhWxcD4spnlYjxi9vXbSpwg==", + "dev": true, + "requires": { + "@typescript-eslint/types": "4.23.0", + "eslint-visitor-keys": "^2.0.0" + } + } } }, - "assert": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", - "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", + "@typescript-eslint/parser": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.33.0.tgz", + "integrity": "sha512-ZohdsbXadjGBSK0/r+d87X0SBmKzOq4/S5nzK6SBgJspFo9/CUDJ7hjayuze+JK7CZQLDMroqytp7pOcFKTxZA==", "dev": true, "requires": { - "object-assign": "^4.1.1", - "util": "0.10.3" + "@typescript-eslint/scope-manager": "4.33.0", + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/typescript-estree": "4.33.0", + "debug": "^4.3.1" }, "dependencies": { - "inherits": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", + "@typescript-eslint/types": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.33.0.tgz", + "integrity": "sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ==", "dev": true }, - "util": { - "version": "0.10.3", - "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "@typescript-eslint/typescript-estree": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.33.0.tgz", + "integrity": "sha512-rkWRY1MPFzjwnEVHsxGemDzqqddw2QbTJlICPD9p9I9LfsO8fdmfQPOX3uKfUaGRDFJbfrtm/sXhVXN4E+bzCA==", "dev": true, "requires": { - "inherits": "2.0.1" + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/visitor-keys": "4.33.0", + "debug": "^4.3.1", + "globby": "^11.0.3", + "is-glob": "^4.0.1", + "semver": "^7.3.5", + "tsutils": "^3.21.0" } } } }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true + "@typescript-eslint/scope-manager": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.33.0.tgz", + "integrity": "sha512-5IfJHpgTsTZuONKbODctL4kKuQje/bzBRkwHE8UOZ4f89Zeddg+EGZs8PD8NcN4LdM3ygHWYB3ukPAYjvl/qbQ==", + "dev": true, + "requires": { + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/visitor-keys": "4.33.0" + }, + "dependencies": { + "@typescript-eslint/types": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.33.0.tgz", + "integrity": "sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ==", + "dev": true + } + } }, - "assign-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "@typescript-eslint/types": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.23.0.tgz", + "integrity": "sha512-oqkNWyG2SLS7uTWLZf6Sr7Dm02gA5yxiz1RP87tvsmDsguVATdpVguHr4HoGOcFOpCvx9vtCSCyQUGfzq28YCw==", "dev": true }, - "ast-transform": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/ast-transform/-/ast-transform-0.0.0.tgz", - "integrity": "sha1-dJRAWIh9goPhidlUYAlHvJj+AGI=", + "@typescript-eslint/typescript-estree": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.23.0.tgz", + "integrity": "sha512-5Sty6zPEVZF5fbvrZczfmLCOcby3sfrSPu30qKoY1U3mca5/jvU5cwsPb/CO6Q3ByRjixTMIVsDkqwIxCf/dMw==", + "dev": true, "requires": { - "escodegen": "~1.2.0", - "esprima": "~1.0.4", - "through": "~2.3.4" + "@typescript-eslint/types": "4.23.0", + "@typescript-eslint/visitor-keys": "4.23.0", + "debug": "^4.1.1", + "globby": "^11.0.1", + "is-glob": "^4.0.1", + "semver": "^7.3.2", + "tsutils": "^3.17.1" }, "dependencies": { - "escodegen": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.2.0.tgz", - "integrity": "sha1-Cd55Z3kcyVi3+Jot220jRRrzJ+E=", - "requires": { - "esprima": "~1.0.4", - "estraverse": "~1.5.0", - "esutils": "~1.0.0", - "source-map": "~0.1.30" - } - }, - "esprima": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz", - "integrity": "sha1-n1V+CPw7TSbs6d00+Pv0drYlha0=" - }, - "estraverse": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.5.1.tgz", - "integrity": "sha1-hno+jlip+EYYr7bC3bzZFrfLr3E=" - }, - "esutils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-1.0.0.tgz", - "integrity": "sha1-gVHTWOIMisx/t0XnRywAJf5JZXA=" - }, - "source-map": { - "version": "0.1.43", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", - "optional": true, + "@typescript-eslint/visitor-keys": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.23.0.tgz", + "integrity": "sha512-5PNe5cmX9pSifit0H+nPoQBXdbNzi5tOEec+3riK+ku4e3er37pKxMKDH5Ct5Y4fhWxcD4spnlYjxi9vXbSpwg==", + "dev": true, "requires": { - "amdefine": ">=0.0.4" + "@typescript-eslint/types": "4.23.0", + "eslint-visitor-keys": "^2.0.0" } } } }, - "ast-types": { - "version": "0.7.8", - "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.7.8.tgz", - "integrity": "sha1-kC0uDWDQcb3NRtwRXhgJ7RHBOKk=" - }, - "ast-types-flow": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", - "integrity": "sha1-9wtzXGvKGlycItmCw+Oef+ujva0=", - "dev": true - }, - "async": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", - "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "@typescript-eslint/visitor-keys": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.33.0.tgz", + "integrity": "sha512-uqi/2aSz9g2ftcHWf8uLPJA70rUv6yuMW5Bohw+bwcuzaxQIHaKFZCKGoGXIrc9vkTJ3+0txM73K0Hq3d5wgIg==", "dev": true, "requires": { - "lodash": "^4.17.14" + "@typescript-eslint/types": "4.33.0", + "eslint-visitor-keys": "^2.0.0" + }, + "dependencies": { + "@typescript-eslint/types": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.33.0.tgz", + "integrity": "sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ==", + "dev": true + } } }, - "async-each": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", - "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", - "dev": true + "@webassemblyjs/ast": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", + "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", + "dev": true, + "requires": { + "@webassemblyjs/helper-numbers": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1" + } }, - "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==", + "@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", + "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", "dev": true }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "@webassemblyjs/helper-api-error": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", + "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", "dev": true }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "@webassemblyjs/helper-buffer": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", + "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", "dev": true }, - "autoprefixer": { - "version": "9.7.1", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.7.1.tgz", - "integrity": "sha512-w3b5y1PXWlhYulevrTJ0lizkQ5CyqfeU6BIRDbuhsMupstHQOeb1Ur80tcB1zxSu7AwyY/qCQ7Vvqklh31ZBFw==", + "@webassemblyjs/helper-numbers": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", + "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", "dev": true, "requires": { - "browserslist": "^4.7.2", - "caniuse-lite": "^1.0.30001006", - "chalk": "^2.4.2", - "normalize-range": "^0.1.2", - "num2fraction": "^1.2.2", - "postcss": "^7.0.21", - "postcss-value-parser": "^4.0.2" + "@webassemblyjs/floating-point-hex-parser": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@xtuc/long": "4.2.2" } }, - "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 - }, - "aws4": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.9.1.tgz", - "integrity": "sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug==", + "@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", + "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", "dev": true }, - "axobject-query": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.0.2.tgz", - "integrity": "sha512-MCeek8ZH7hKyO1rWUbKNQBbl4l2eY0ntk7OGi+q0RlafrCnfPxC06WZA+uebCfmYp4mNU9jRBP1AhGyf8+W3ww==", + "@webassemblyjs/helper-wasm-section": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", + "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", "dev": true, "requires": { - "ast-types-flow": "0.0.7" + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1" } }, - "babel-loader": { - "version": "8.0.6", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.0.6.tgz", - "integrity": "sha512-4BmWKtBOBm13uoUwd08UwjZlaw3O9GWf456R9j+5YykFZ6LUIjIKLc0zEZf+hauxPOJs96C8k6FvYD09vWzhYw==", + "@webassemblyjs/ieee754": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", + "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", "dev": true, "requires": { - "find-cache-dir": "^2.0.0", - "loader-utils": "^1.0.2", - "mkdirp": "^0.5.1", - "pify": "^4.0.1" - }, - "dependencies": { - "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" - } - } + "@xtuc/ieee754": "^1.2.0" } }, - "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==", + "@webassemblyjs/leb128": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", + "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", "dev": true, "requires": { - "object.assign": "^4.1.0" + "@xtuc/long": "4.2.2" } }, - "babel-runtime": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", - "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "@webassemblyjs/utf8": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", + "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", + "dev": true + }, + "@webassemblyjs/wasm-edit": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", + "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", + "dev": true, "requires": { - "core-js": "^2.4.0", - "regenerator-runtime": "^0.11.0" - }, - "dependencies": { - "core-js": { - "version": "2.6.11", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", - "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==" - }, - "regenerator-runtime": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" - } + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/helper-wasm-section": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-opt": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "@webassemblyjs/wast-printer": "1.11.1" } }, - "backo2": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz", - "integrity": "sha1-MasayLEpNjRj41s+u2n038+6eUc=", - "dev": true + "@webassemblyjs/wasm-gen": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", + "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" + } }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true - }, - "base": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", - "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "@webassemblyjs/wasm-opt": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", + "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", "dev": true, "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "dependencies": { - "define-property": { - "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" - } - }, - "is-accessor-descriptor": { - "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" - } - }, - "is-data-descriptor": { - "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" - } - }, - "is-descriptor": { - "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", - "kind-of": "^6.0.2" - } - } + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1" } }, - "base64-arraybuffer": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz", - "integrity": "sha1-c5JncZI7Whl0etZmqlzUv5xunOg=", - "dev": true - }, - "base64-js": { - "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": "2.0.0", - "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", - "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", - "dev": true - }, - "batch": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", - "dev": true - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "@webassemblyjs/wasm-parser": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", + "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", "dev": true, "requires": { - "tweetnacl": "^0.14.3" + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" } }, - "better-assert": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz", - "integrity": "sha1-QIZrnhueC1W0gYlDEeaPr/rrxSI=", + "@webassemblyjs/wast-printer": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", + "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", "dev": true, "requires": { - "callsite": "1.0.0" + "@webassemblyjs/ast": "1.11.1", + "@xtuc/long": "4.2.2" } }, - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "@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 }, - "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==", + "@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 }, - "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" - } + "@yarnpkg/lockfile": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", + "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", + "dev": true }, - "blob": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz", - "integrity": "sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig==", + "abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", "dev": true }, - "blocking-proxy": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/blocking-proxy/-/blocking-proxy-1.0.1.tgz", - "integrity": "sha512-KE8NFMZr3mN2E0HcvCgRtX7DjhiIQrwle+nSVJVC/yqFb9+xznHl2ZcoBp2L9qzkI4t4cBFJ1efXF8Dwi132RA==", - "dev": true, + "abbrev": { + "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.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", "requires": { - "minimist": "^1.2.0" + "mime-types": "~2.1.34", + "negotiator": "0.6.3" } }, - "bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", "dev": true }, - "bn.js": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", - "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", + "acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", "dev": true }, - "body-parser": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", - "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", + "adjust-sourcemap-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", + "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", + "dev": true, "requires": { - "bytes": "3.1.0", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.7.2", - "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.7.0", - "raw-body": "2.4.0", - "type-is": "~1.6.17" - }, - "dependencies": { - "bytes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" - }, - "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==" - } + "loader-utils": "^2.0.0", + "regex-parser": "^2.2.11" } }, - "bonjour": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz", - "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", + "adm-zip": { + "version": "0.5.16", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.16.tgz", + "integrity": "sha512-TGw5yVi4saajsSEgz25grObGHEUaDrniwvA2qwSC060KfqGPdglhvPMA2lPIoxs3PQIItj2iag35fONcQqgUaQ==", + "dev": true + }, + "agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", "dev": true, "requires": { - "array-flatten": "^2.1.0", - "deep-equal": "^1.0.1", - "dns-equal": "^1.0.0", - "dns-txt": "^2.0.2", - "multicast-dns": "^6.0.1", - "multicast-dns-service-types": "^1.1.0" + "debug": "4" } }, - "boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", - "dev": true - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "agentkeepalive": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.6.0.tgz", + "integrity": "sha512-kja8j7PjmncONqaTsB8fQ+wE2mSU2DJ9D4XKoJ5PFWIdRMa6SLSN1ff4mOr4jCbfRSsxR4keIiySJU0N9T5hIQ==", "dev": true, "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "humanize-ms": "^1.2.1" } }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", "dev": true, "requires": { - "fill-range": "^7.0.1" + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" } }, - "brfs": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/brfs/-/brfs-2.0.2.tgz", - "integrity": "sha512-IrFjVtwu4eTJZyu8w/V2gxU7iLTtcHih67sgEdzrhjLBMHp2uYefUBfdM4k2UvcuWMgV7PQDZHSLeNWnLFKWVQ==", + "ajv": { + "version": "8.6.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.2.tgz", + "integrity": "sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w==", + "dev": true, "requires": { - "quote-stream": "^1.0.1", - "resolve": "^1.1.5", - "static-module": "^3.0.2", - "through2": "^2.0.0" + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" } }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", + "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 }, - "brotli": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/brotli/-/brotli-1.3.2.tgz", - "integrity": "sha1-UlqcrU/LqWR119OI9q7LE+7VL0Y=", + "ajv-formats": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.0.tgz", + "integrity": "sha512-USH2jBb+C/hIpwD2iRjp0pe0k+MvzG0mlSn/FIdCgQhUb9ALPRjt2KIQdfZDS9r0ZIeUAg7gOu9KL0PFqGqr5Q==", + "dev": true, "requires": { - "base64-js": "^1.1.2" + "ajv": "^8.0.0" } }, - "browser-resolve": { - "version": "1.11.3", - "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.3.tgz", - "integrity": "sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ==", + "angular-animations": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/angular-animations/-/angular-animations-0.0.10.tgz", + "integrity": "sha512-UKKWRZDDXl3m+bcS1PfW5xZ2WoyM9ixfdLS7OG9lDrWm5KkIYEIrZvC+r5nfU3C5ovltHId5e2BlwYqL18kxOA==", "requires": { - "resolve": "1.1.7" + "tslib": "^1.9.0" }, "dependencies": { - "resolve": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", - "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=" + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" } } }, - "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", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } + "ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "dev": true }, - "browserify-cipher": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", - "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", "dev": true, "requires": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" + "type-fest": "^0.21.3" + }, + "dependencies": { + "type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true + } } }, - "browserify-des": { - "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", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } + "ansi-html-community": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", + "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", + "dev": true }, - "browserify-optional": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browserify-optional/-/browserify-optional-1.0.1.tgz", - "integrity": "sha1-HhNyLP3g2F8SFnbCpyztUzoBiGk=", + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "requires": { - "ast-transform": "0.0.0", - "ast-types": "^0.7.0", - "browser-resolve": "^1.8.1" + "color-convert": "^2.0.1" } }, - "browserify-rsa": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", - "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", "dev": true, "requires": { - "bn.js": "^4.1.0", - "randombytes": "^2.0.1" + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" } }, - "browserify-sign": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", - "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", + "app-root-path": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/app-root-path/-/app-root-path-3.1.0.tgz", + "integrity": "sha512-biN3PwB2gUtjaYy/isrU3aNWI5w+fAfvHkSvCKeQGxhmYpwKFUxudR3Yya+KqVRHBmEDYh+/lTozYCFbmzX4nA==", + "dev": true + }, + "aproba": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.1.0.tgz", + "integrity": "sha512-tLIEcj5GuR2RSTnxNKdkK0dJ/GrC7P38sUkiDmDuHfsHmbagTFAxDVIBltoklXEVIQ/f14IL8IMJ5pn9Hez1Ew==", + "dev": true + }, + "are-we-there-yet": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", + "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", "dev": true, "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" + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" } }, - "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==", + "arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "dev": true + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, "requires": { - "pako": "~1.0.5" + "sprintf-js": "~1.0.2" + }, + "dependencies": { + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + } } }, - "browserslist": { - "version": "4.11.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.11.1.tgz", - "integrity": "sha512-DCTr3kDrKEYNw6Jb9HFxVLQNaue8z+0ZfRBRjmCunKDEXEBajKDj2Y+Uelg+Pi29OnvaSGwjOsnRyNEkXzHg5g==", + "aria-query": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-3.0.0.tgz", + "integrity": "sha512-majUxHgLehQTeSA+hClx+DY09OVUqG3GtezWkF1krgLGNdlDu9l9V8DaqNMWbq4Eddc8wsyDA0hpDUtnYxQEXw==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001038", - "electron-to-chromium": "^1.3.390", - "node-releases": "^1.1.53", - "pkg-up": "^2.0.0" + "ast-types-flow": "0.0.7", + "commander": "^2.11.0" } }, - "browserstack": { - "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" - } - }, - "buffer": { - "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", - "isarray": "^1.0.0" - } - }, - "buffer-equal": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-0.0.1.tgz", - "integrity": "sha1-kbx0sR6kBbyRa8aqkI+q+ltKrEs=" - }, - "buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==", + "dev": true }, - "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==", + "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 }, - "buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==", "dev": true }, - "builtin-modules": { + "array-buffer-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", + "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", + "requires": { + "call-bound": "^1.0.3", + "is-array-buffer": "^3.0.5" + } + }, + "array-flatten": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", - "dev": true + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" }, - "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=", + "array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", "dev": true }, - "builtins": { + "array-uniq": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", - "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==", "dev": true }, - "bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==", "dev": true }, - "cacache": { - "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", - "fs-minipass": "^2.0.0", - "glob": "^7.1.4", - "graceful-fs": "^4.2.2", - "infer-owner": "^1.0.4", - "lru-cache": "^5.1.1", - "minipass": "^3.0.0", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.2", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "p-map": "^3.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^2.7.1", - "ssri": "^7.0.0", - "unique-filename": "^1.1.1" - }, - "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" - } - } - } - }, - "cache-base": { + "arrify": { "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", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - } + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", + "dev": true }, - "caller-callsite": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", - "integrity": "sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ=", + "asn1": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", + "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", "dev": true, "requires": { - "callsites": "^2.0.0" + "safer-buffer": "~2.1.0" } }, - "caller-path": { - "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" - } + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", + "dev": true }, - "callsite": { + "assign-symbols": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz", - "integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA=", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==", "dev": true }, - "callsites": { + "ast-types-flow": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", + "integrity": "sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==", + "dev": true + }, + "astral-regex": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", - "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", "dev": true }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "async": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", "dev": true }, - "caniuse-api": { - "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", - "lodash.memoize": "^4.1.2", - "lodash.uniq": "^4.5.0" - } + "async-each": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.6.tgz", + "integrity": "sha512-c646jH1avxr+aVpndVMeAfYw7wAa6idufrlN3LPA4PmKS0QEGp6PIC9nwz0WQkkvBGAMEki3pFdtxaF39J9vvg==", + "dev": true }, - "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==", + "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 }, - "canonical-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/canonical-path/-/canonical-path-1.0.0.tgz", - "integrity": "sha512-feylzsbDxi1gPZ1IjystzIQZagYYLvfKrSuygUCgf7z6x790VEzze5QEkdSV1U58RA7Hi0+v6fv4K54atOzATg==", + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", "dev": true }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "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 }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "autoprefixer": { + "version": "9.8.8", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.8.tgz", + "integrity": "sha512-eM9d/swFopRt5gdJ7jrpCwgvEMIayITpojhkkSMRsFHYuH5bkSQ4p/9qTEHtmNudUZh22Tehu7I6CxAW0IXTKA==", "dev": true, "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "browserslist": "^4.12.0", + "caniuse-lite": "^1.0.30001109", + "normalize-range": "^0.1.2", + "num2fraction": "^1.2.2", + "picocolors": "^0.2.1", + "postcss": "^7.0.32", + "postcss-value-parser": "^4.1.0" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "requires": { + "possible-typed-array-names": "^1.0.0" } }, - "chardet": { + "aws-sign2": { "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", "dev": true }, - "chokidar": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.1.tgz", - "integrity": "sha512-4QYCEWOcK3OJrxwvyyAOxFuhpvOVCYkr33LPfFNBjAD/w3sEzWsp2BUOkI4l9bHvWioAd0rc6NlHUOEaWkTeqg==", + "aws4": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.13.2.tgz", + "integrity": "sha512-lHe62zvbTB5eEABUVi/AwVh0ZKY9rMMDhmm+eeyuuUQbQ3+J+fONVQOZyj+DdrvD4BY33uYniyRJ4UJIaSKAfw==", + "dev": true + }, + "axobject-query": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.0.2.tgz", + "integrity": "sha512-MCeek8ZH7hKyO1rWUbKNQBbl4l2eY0ntk7OGi+q0RlafrCnfPxC06WZA+uebCfmYp4mNU9jRBP1AhGyf8+W3ww==", "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" + "ast-types-flow": "0.0.7" + } + }, + "babel-loader": { + "version": "8.2.2", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.2.tgz", + "integrity": "sha512-JvTd0/D889PQBtUXJ2PXaKU/pjZDMtHA9V2ecm+eNRmmBCMR09a+fmpGTNwnJtFmFl5Ei7Vy47LjBb+L0wQ99g==", + "dev": true, + "requires": { + "find-cache-dir": "^3.3.1", + "loader-utils": "^1.4.0", + "make-dir": "^3.1.0", + "schema-utils": "^2.6.5" }, "dependencies": { - "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==", + "json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", "dev": true, "requires": { - "is-glob": "^4.0.1" + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" } } } }, - "chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "dev": true + "babel-plugin-polyfill-corejs2": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.2.3.tgz", + "integrity": "sha512-NDZ0auNRzmAfE1oDDPW2JhzIMXUk+FFe2ICejmt5T4ocKgiQx3e0VCRx9NCAidcMtL2RUZaWtXnmjTCkx0tcbA==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.13.11", + "@babel/helper-define-polyfill-provider": "^0.2.4", + "semver": "^6.1.1" + }, + "dependencies": { + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } + } }, - "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==", + "babel-plugin-polyfill-corejs3": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.2.5.tgz", + "integrity": "sha512-ninF5MQNwAX9Z7c9ED+H2pGt1mXdP4TqzlHKyPIYmJIYz0N+++uwdM7RnJukklhzJ54Q84vA4ZJkgs7lu5vqcw==", "dev": true, "requires": { - "tslib": "^1.9.0" + "@babel/helper-define-polyfill-provider": "^0.2.2", + "core-js-compat": "^3.16.2" } }, - "cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "babel-plugin-polyfill-regenerator": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.2.3.tgz", + "integrity": "sha512-JVE78oRZPKFIeUqFGrSORNzQnrDwZR16oiWeGM8ZyjBn2XAT5OjP+wXx5ESuo33nUsFUEJYjtklnsKbxW5L+7g==", "dev": true, "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "@babel/helper-define-polyfill-provider": "^0.2.4" } }, - "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==", + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "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==", + "base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", "dev": true, "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" }, "dependencies": { "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", "dev": true, "requires": { - "is-descriptor": "^0.1.0" + "is-descriptor": "^1.0.0" } } } }, - "clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" + }, + "base64id": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", + "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", "dev": true }, - "cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", + "dev": true + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", "dev": true, "requires": { - "restore-cursor": "^3.1.0" + "tweetnacl": "^0.14.3" } }, - "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==", + "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 }, - "cli-width": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", - "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", + "binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", "dev": true }, - "cliui": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", - "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "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": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" - }, - "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 - }, - "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" - } - } + "file-uri-to-path": "1.0.0" } }, - "clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", - "dev": true - }, - "clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", "dev": true, "requires": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" } }, - "coa": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz", - "integrity": "sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==", + "blocking-proxy": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/blocking-proxy/-/blocking-proxy-1.0.1.tgz", + "integrity": "sha512-KE8NFMZr3mN2E0HcvCgRtX7DjhiIQrwle+nSVJVC/yqFb9+xznHl2ZcoBp2L9qzkI4t4cBFJ1efXF8Dwi132RA==", "dev": true, "requires": { - "@types/q": "^1.5.1", - "chalk": "^2.4.1", - "q": "^1.1.2" + "minimist": "^1.2.0" } }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true + "body-parser": { + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", + "requires": { + "bytes": "3.1.2", + "content-type": "~1.0.5", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.13.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "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": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + } + } }, - "codelyzer": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/codelyzer/-/codelyzer-5.2.2.tgz", - "integrity": "sha512-jB4FZ1Sx7kZhvZVdf+N2BaKTdrrNZOL0Bj10RRfrhHrb3zEvXjJvvq298JPMJAiyiCS/v4zs1QlGU0ip7xGqeA==", + "bonjour": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz", + "integrity": "sha512-RaVTblr+OnEli0r/ud8InrU7D+G0y6aJhlxaLa6Pwty4+xoxboF1BsUI45tujvRpbj9dQVoglChqonGAsjEBYg==", "dev": true, "requires": { - "app-root-path": "^2.2.1", - "aria-query": "^3.0.0", - "axobject-query": "2.0.2", - "css-selector-tokenizer": "^0.7.1", - "cssauron": "^1.4.0", - "damerau-levenshtein": "^1.0.4", - "semver-dsl": "^1.0.1", - "source-map": "^0.5.7", - "sprintf-js": "^1.1.2" + "array-flatten": "^2.1.0", + "deep-equal": "^1.0.1", + "dns-equal": "^1.0.0", + "dns-txt": "^2.0.2", + "multicast-dns": "^6.0.1", + "multicast-dns-service-types": "^1.1.0" }, "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "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 }, - "sprintf-js": { + "deep-equal": { "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", - "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", - "dev": true + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.2.tgz", + "integrity": "sha512-5tdhKF6DbU7iIzrIOa1AOUt39ZRm13cmL1cGEh//aqR8x9+tNfbywRf0n5FD/18OKMdo7DNEtrX2t22ZAkI+eg==", + "dev": true, + "requires": { + "is-arguments": "^1.1.1", + "is-date-object": "^1.0.5", + "is-regex": "^1.1.4", + "object-is": "^1.1.5", + "object-keys": "^1.1.1", + "regexp.prototype.flags": "^1.5.1" + } } } }, - "collection-visit": { + "boolbase": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "dev": true + }, + "brace-expansion": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", "dev": true, "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "color": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/color/-/color-3.1.2.tgz", - "integrity": "sha512-vXTJhHebByxZn3lDvDJYw4lR5+uB3vuoHsuYA5AKuxRVn5wzzIfQKGLBmgdVRHKTJYeK5rvJcHnrd0Li49CFpg==", + "braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "dev": true, "requires": { - "color-convert": "^1.9.1", - "color-string": "^1.5.2" + "fill-range": "^7.1.1" } }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, + "brotli": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/brotli/-/brotli-1.3.3.tgz", + "integrity": "sha512-oTKjJdShmDuGW94SyyaoQvAjf30dZaHnjJ8uAF+u2/vGJkJbJPJAT1gDiOJP5v1Zb6f9KEyW/1HpuaWIXtGHPg==", "requires": { - "color-name": "1.1.3" + "base64-js": "^1.1.2" } }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "color-string": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.5.3.tgz", - "integrity": "sha512-dC2C5qeWoYkxki5UAXapdjqO672AM4vZuPGRQfO8b5HKuKGBbKWpITyDYN7TOFKvRW7kOgAn3746clDBMDJyQw==", + "browserslist": { + "version": "4.25.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.25.1.tgz", + "integrity": "sha512-KGj0KoOMXLpSNkkEI6Z6mShmQy0bc1I+T7K9N81k4WWMrfz+6fQ6es80B/YLAeRoKvjYE1YSHHOW1qe9xIVzHw==", "dev": true, "requires": { - "color-name": "^1.0.0", - "simple-swizzle": "^0.2.2" + "caniuse-lite": "^1.0.30001726", + "electron-to-chromium": "^1.5.173", + "node-releases": "^2.0.19", + "update-browserslist-db": "^1.1.3" } }, - "colors": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", - "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", - "dev": true - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "browserstack": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/browserstack/-/browserstack-1.6.1.tgz", + "integrity": "sha512-GxtFjpIaKdbAyzHfFDKixKO8IBT7wR3NjbzrGc78nNs/Ciys9wU3/nBtsqsWv5nDSrdI5tz0peKuzCPuNXNUiw==", "dev": true, "requires": { - "delayed-stream": "~1.0.0" + "https-proxy-agent": "^2.2.1" + }, + "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.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "https-proxy-agent": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz", + "integrity": "sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg==", + "dev": true, + "requires": { + "agent-base": "^4.3.0", + "debug": "^3.1.0" + } + } } }, - "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 - }, - "commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": true + "buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } }, - "compare-versions": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.6.0.tgz", - "integrity": "sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==", + "buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", "dev": true }, - "component-bind": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz", - "integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E=", + "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 }, - "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "builtin-modules": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", + "integrity": "sha512-wxXCdllwGhI2kCC0MnvTGYTMvnVZTvqgypkiTI8Pa5tcz2i6VqsqwYGgqwXji+4RgCzms6EajE4IxiUH6HH8nQ==", "dev": true }, - "component-inherit": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz", - "integrity": "sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM=", + "builtins": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", + "integrity": "sha512-uYBjakWipfaO/bXI7E8rq6kpwHRZK5cNYrUv2OzZSI/FvmdMyXJ2tG9dKcjEC5YHmHpUAwsargWIZNWdxb/bnQ==", "dev": true }, - "compressible": { - "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" - } + "bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" }, - "compression": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "cacache": { + "version": "15.2.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.2.0.tgz", + "integrity": "sha512-uKoJSHmnrqXgthDFx/IU6ED/5xd+NNGe+Bb+kLZy7Ku4P+BaiWEUflAKPZ7eAzsYGcsAGASJZsybXp+quEcHTw==", "dev": true, "requires": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", - "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" + "@npmcli/move-file": "^1.0.1", + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "glob": "^7.1.4", + "infer-owner": "^1.0.4", + "lru-cache": "^6.0.0", + "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": "^3.0.2", + "ssri": "^8.0.1", + "tar": "^6.0.2", + "unique-filename": "^1.1.1" }, "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, "requires": { - "ms": "2.0.0" + "yallist": "^4.0.0" } }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true } } }, - "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 - }, - "concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "cache-base": { + "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": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, - "connect": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", - "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", - "dev": true, - "requires": { - "debug": "2.6.9", - "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 - } + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" } }, - "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 - }, - "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 - }, - "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 + "call-bind": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", + "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", + "requires": { + "call-bind-apply-helpers": "^1.0.0", + "es-define-property": "^1.0.0", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.2" + } }, - "content-disposition": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", - "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", + "call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", "requires": { - "safe-buffer": "5.1.2" + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" } }, - "content-type": { + "call-bound": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" - }, - "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==", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", "requires": { - "safe-buffer": "~5.1.1" + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" } }, - "cookie": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", - "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==" + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" }, - "copy-concurrently": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", - "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", + "caniuse-api": { + "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": { - "aproba": "^1.1.1", - "fs-write-stream-atomic": "^1.0.8", - "iferr": "^0.1.5", - "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==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } + "browserslist": "^4.0.0", + "caniuse-lite": "^1.0.0", + "lodash.memoize": "^4.1.2", + "lodash.uniq": "^4.5.0" } }, - "copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "caniuse-lite": { + "version": "1.0.30001727", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001727.tgz", + "integrity": "sha512-pB68nIHmbN6L/4C6MH1DokyR3bYqFwjaSs/sWDHGj4CTcFtQUQMuJftVwWkXq7mNWOybD3KhUv3oWHoGxgP14Q==", "dev": true }, - "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", - "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" - }, - "dependencies": { - "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", - "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" - } - }, - "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" - } - }, - "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, - "requires": { - "p-try": "^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 - }, - "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" - } - }, - "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" - } - } - } + "canonical-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/canonical-path/-/canonical-path-1.0.0.tgz", + "integrity": "sha512-feylzsbDxi1gPZ1IjystzIQZagYYLvfKrSuygUCgf7z6x790VEzze5QEkdSV1U58RA7Hi0+v6fv4K54atOzATg==", + "dev": true }, - "core-js": { - "version": "3.6.4", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.6.4.tgz", - "integrity": "sha512-4paDGScNgZP2IXXilaffL9X7968RuvwlkK3xWtZRVqgd8SYNiVKRJvkFd1aqqEuPfN7E68ZHEp9hDj6lHj4Hyw==", + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", "dev": true }, - "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==", + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "requires": { - "browserslist": "^4.8.3", - "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 - } + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" } }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + "chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true }, - "cosmiconfig": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", - "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", + "chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", "dev": true, "requires": { - "import-fresh": "^2.0.0", - "is-directory": "^0.3.1", - "js-yaml": "^3.13.1", - "parse-json": "^4.0.0" + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" } }, - "coverage-istanbul-loader": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/coverage-istanbul-loader/-/coverage-istanbul-loader-2.0.3.tgz", - "integrity": "sha512-LiGRvyIuzVYs3M1ZYK1tF0HekjH0DJ8zFdUwAZq378EJzqOgToyb1690dp3TAUlP6Y+82uu42LRjuROVeJ54CA==", + "chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "dev": true + }, + "chrome-trace-event": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz", + "integrity": "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==", + "dev": true + }, + "circular-dependency-plugin": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/circular-dependency-plugin/-/circular-dependency-plugin-5.2.2.tgz", + "integrity": "sha512-g38K9Cm5WRwlaH6g03B9OEz/0qRizI+2I7n+Gz+L5DxXJAPAiWQvwlYNm1V1jkdpUv95bOe/ASm2vfi/G560jQ==", + "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": { - "convert-source-map": "^1.7.0", - "istanbul-lib-instrument": "^4.0.0", - "loader-utils": "^1.2.3", - "merge-source-map": "^1.1.0", - "schema-utils": "^2.6.1" + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" }, "dependencies": { - "ajv": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz", - "integrity": "sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==", + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", "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" + "is-descriptor": "^0.1.0" } }, - "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 - }, - "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==", + "is-descriptor": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.7.tgz", + "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==", "dev": true, "requires": { - "ajv": "^6.12.0", - "ajv-keywords": "^3.4.1" + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" } } } }, - "create-ecdh": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", - "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", + "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 + }, + "cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", "dev": true, "requires": { - "bn.js": "^4.1.0", - "elliptic": "^6.0.0" + "restore-cursor": "^3.1.0" } }, - "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==", + "cli-spinners": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", + "dev": true + }, + "cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "dev": true + }, + "cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", "dev": true, "requires": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" } }, - "create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==" + }, + "clone-deep": { + "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": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" } }, - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "codelyzer": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/codelyzer/-/codelyzer-6.0.2.tgz", + "integrity": "sha512-v3+E0Ucu2xWJMOJ2fA/q9pDT/hlxHftHGPUay1/1cTgyPV5JTHFdO9hqo837Sx2s9vKBMTt5gO+lhF95PO6J+g==", "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" + "@angular/compiler": "9.0.0", + "@angular/core": "9.0.0", + "app-root-path": "^3.0.0", + "aria-query": "^3.0.0", + "axobject-query": "2.0.2", + "css-selector-tokenizer": "^0.7.1", + "cssauron": "^1.4.0", + "damerau-levenshtein": "^1.0.4", + "rxjs": "^6.5.3", + "semver-dsl": "^1.0.1", + "source-map": "^0.5.7", + "sprintf-js": "^1.1.2", + "tslib": "^1.10.0", + "zone.js": "~0.10.3" }, "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "@angular/compiler": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-9.0.0.tgz", + "integrity": "sha512-ctjwuntPfZZT2mNj2NDIVu51t9cvbhl/16epc5xEwyzyDt76pX9UgwvY+MbXrf/C/FWwdtmNtfP698BKI+9leQ==", "dev": true - } - } - }, - "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", - "create-ecdh": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.0", - "diffie-hellman": "^5.0.0", - "inherits": "^2.0.1", - "pbkdf2": "^3.0.3", - "public-encrypt": "^4.0.0", - "randombytes": "^2.0.0", - "randomfill": "^1.0.3" - } - }, - "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==" - }, - "css": { - "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", - "source-map-resolve": "^0.5.2", - "urix": "^0.1.0" - }, - "dependencies": { + }, + "@angular/core": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-9.0.0.tgz", + "integrity": "sha512-6Pxgsrf0qF9iFFqmIcWmjJGkkCaCm6V5QNnxMy2KloO3SDq6QuMVRbN9RtC8Urmo25LP+eZ6ZgYqFYpdD8Hd9w==", + "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==", + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "dev": true + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "zone.js": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.10.3.tgz", + "integrity": "sha512-LXVLVEq0NNOqK/fLJo3d0kfzd4sxwn2/h67/02pjCjfKDxgx1i9QqpvtHD8CrBnSSwMw5+dy11O7FRX5mkO7Cg==", "dev": true } } }, - "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 - }, - "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==", + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==", "dev": true, "requires": { - "postcss": "^7.0.1", - "timsort": "^0.3.0" + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" } }, - "css-parse": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-2.0.0.tgz", - "integrity": "sha1-pGjuZnwW2BzPBcWMONKpfHgNv9Q=", - "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==", "requires": { - "css": "^2.0.0" + "color-name": "~1.1.4" } }, - "css-select": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz", - "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==", + "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==" + }, + "color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "dev": true + }, + "colord": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", + "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==", + "dev": true + }, + "colorette": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", + "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==", + "dev": true + }, + "colors": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", + "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", + "dev": true + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", "dev": true, "requires": { - "boolbase": "^1.0.0", - "css-what": "^3.2.1", - "domutils": "^1.7.0", - "nth-check": "^1.0.2" + "delayed-stream": "~1.0.0" } }, - "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==", + "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 }, - "css-selector-tokenizer": { - "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==", + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", + "dev": true + }, + "component-emitter": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.1.tgz", + "integrity": "sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ==", + "dev": true + }, + "compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", "dev": true, "requires": { - "cssesc": "^3.0.0", - "fastparse": "^1.1.2", - "regexpu-core": "^4.6.0" + "mime-db": ">= 1.43.0 < 2" } }, - "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==", + "compression": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.8.1.tgz", + "integrity": "sha512-9mAqGPHLakhCLeNyxPkK4xVo746zQ/czLH1Ky+vkitMnWfWZps8r0qXuwhwizagCRttsL4lfG4pIOvaWLpAP0w==", "dev": true, "requires": { - "mdn-data": "2.0.4", - "source-map": "^0.6.1" + "bytes": "3.1.2", + "compressible": "~2.0.18", + "debug": "2.6.9", + "negotiator": "~0.6.4", + "on-headers": "~1.1.0", + "safe-buffer": "5.2.1", + "vary": "~1.1.2" }, "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "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": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "negotiator": { + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz", + "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==", "dev": true } } }, - "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==", + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", "dev": true }, - "cssauron": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/cssauron/-/cssauron-1.4.0.tgz", - "integrity": "sha1-pmAt/34EqDBtwNuaVR6S6LVmKtg=", + "connect": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", + "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", "dev": true, "requires": { - "through": "X.X.X" + "debug": "2.6.9", + "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" + } + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true + }, + "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", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "statuses": "~1.5.0", + "unpipe": "~1.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", + "dev": true, + "requires": { + "ee-first": "1.1.1" + } + }, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "dev": true + } } }, - "cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "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 }, - "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, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", + "dev": true + }, + "content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", "requires": { - "cosmiconfig": "^5.0.0", - "cssnano-preset-default": "^4.0.7", - "is-resolvable": "^1.0.0", - "postcss": "^7.0.0" + "safe-buffer": "5.2.1" } }, - "cssnano-preset-default": { - "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", - "postcss": "^7.0.0", - "postcss-calc": "^7.0.1", - "postcss-colormin": "^4.0.3", - "postcss-convert-values": "^4.0.1", - "postcss-discard-comments": "^4.0.2", - "postcss-discard-duplicates": "^4.0.2", - "postcss-discard-empty": "^4.0.1", - "postcss-discard-overridden": "^4.0.1", - "postcss-merge-longhand": "^4.0.11", - "postcss-merge-rules": "^4.0.3", - "postcss-minify-font-values": "^4.0.2", - "postcss-minify-gradients": "^4.0.2", - "postcss-minify-params": "^4.0.2", - "postcss-minify-selectors": "^4.0.2", - "postcss-normalize-charset": "^4.0.1", - "postcss-normalize-display-values": "^4.0.2", - "postcss-normalize-positions": "^4.0.2", - "postcss-normalize-repeat-style": "^4.0.2", - "postcss-normalize-string": "^4.0.2", - "postcss-normalize-timing-functions": "^4.0.2", - "postcss-normalize-unicode": "^4.0.1", - "postcss-normalize-url": "^4.0.1", - "postcss-normalize-whitespace": "^4.0.2", - "postcss-ordered-values": "^4.1.2", - "postcss-reduce-initial": "^4.0.3", - "postcss-reduce-transforms": "^4.0.2", - "postcss-svgo": "^4.0.2", - "postcss-unique-selectors": "^4.0.1" - } - }, - "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 + "content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==" }, - "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=", + "convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", "dev": true }, - "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==", + "cookie": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==" + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" + }, + "copy-anything": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz", + "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", "dev": true, "requires": { - "postcss": "^7.0.0" + "is-what": "^3.14.1" } }, - "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==", + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==", "dev": true }, - "csso": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/csso/-/csso-4.0.3.tgz", - "integrity": "sha512-NL3spysxUkcrOgnpsT4Xdl2aiEiBG6bXswAABQVHcMrfjjBisFOKwLDOmf4wf32aPdcJws1zds2B0Rg+jqMyHQ==", + "copy-webpack-plugin": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-9.0.1.tgz", + "integrity": "sha512-14gHKKdYIxF84jCEgPgYXCPpldbwpxxLbCmA7LReY7gvbaT555DgeBWBgBZM116tv/fO6RRJrsivBqRyRlukhw==", "dev": true, "requires": { - "css-tree": "1.0.0-alpha.39" + "fast-glob": "^3.2.5", + "glob-parent": "^6.0.0", + "globby": "^11.0.3", + "normalize-path": "^3.0.0", + "p-limit": "^3.1.0", + "schema-utils": "^3.0.0", + "serialize-javascript": "^6.0.0" }, "dependencies": { - "css-tree": { - "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==", + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, "requires": { - "mdn-data": "2.0.6", - "source-map": "^0.6.1" + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" } }, - "mdn-data": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.6.tgz", - "integrity": "sha512-rQvjv71olwNHgiTbfPZFkJtjNMciWgswYeciZhtvWLO8bmX3TnhyA62I6sTWOyZssWHJJjY6/KiWwqQsWWsqOA==", + "ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", "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==", + "glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "requires": { + "is-glob": "^4.0.3" + } + }, + "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 + }, + "schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } } } }, - "custom-event": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", - "integrity": "sha1-XQKkaFCt8bSjF5RqOSj8y1v9BCU=", - "dev": true - }, - "cyclist": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", - "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", + "core-js": { + "version": "3.16.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.16.0.tgz", + "integrity": "sha512-5+5VxRFmSf97nM8Jr2wzOwLqRo6zphH2aX+7KsAUONObyzakDNq2G/bgbhinxB4PoV9L3aXQYhiDKyIKWd2c8g==", "dev": true }, - "d": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", - "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", + "core-js-compat": { + "version": "3.44.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.44.0.tgz", + "integrity": "sha512-JepmAj2zfl6ogy34qfWtcE7nHKAJnKsQFRn++scjVS2bZFllwptzw61BZcZFYBPpUznLfAvh0LGhxKppk04ClA==", + "dev": true, "requires": { - "es5-ext": "^0.10.50", - "type": "^1.0.1" + "browserslist": "^4.25.1" } }, - "damerau-levenshtein": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.6.tgz", - "integrity": "sha512-JVrozIeElnj3QzfUIt8tB8YMluBJom4Vw9qTPpjGYQ9fYlB3D/rb6OordUxf3xeFB35LKWs0xqcO5U6ySvBtug==", + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", "dev": true }, - "dash-ast": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dash-ast/-/dash-ast-1.0.0.tgz", - "integrity": "sha512-Vy4dx7gquTeMcQR/hDkYLGUnwVil6vk4FOOct+djUnHOUWt+zJPJAaRIXaAFkPXtJjvlY7o3rfRu0/3hpnwoUA==" - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", "dev": true, "requires": { - "assert-plus": "^1.0.0" + "object-assign": "^4", + "vary": "^1" } }, - "date-format": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/date-format/-/date-format-3.0.0.tgz", - "integrity": "sha512-eyTcpKOcamdhWJXj56DpQMo1ylSQpcGtGKXcU0Tb97+K56/CF5amAqqqNj0+KvA0iw2ynxtHWFsPDSClCxe48w==", - "dev": true - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", "dev": true, "requires": { - "ms": "^2.1.1" + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" } }, - "debuglog": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/debuglog/-/debuglog-1.0.1.tgz", - "integrity": "sha1-qiT/uaw9+aI1GDfPstJ5NgzXhJI=", - "dev": true - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "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 - }, - "deep-equal": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", - "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", + "critters": { + "version": "0.0.12", + "resolved": "https://registry.npmjs.org/critters/-/critters-0.0.12.tgz", + "integrity": "sha512-ujxKtKc/mWpjrOKeaACTaQ1aP0O31M0ZPWhfl85jZF1smPU4Ivb9va5Ox2poif4zVJQQo0LCFlzGtEZAsCAPcw==", + "dev": true, "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" + "chalk": "^4.1.0", + "css-select": "^4.1.3", + "parse5": "^6.0.1", + "parse5-htmlparser2-tree-adapter": "^6.0.1", + "postcss": "^8.3.7", + "pretty-bytes": "^5.3.0" + }, + "dependencies": { + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + }, + "postcss": { + "version": "8.5.6", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz", + "integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==", + "dev": true, + "requires": { + "nanoid": "^3.3.11", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + } + }, + "source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "dev": true + } } }, - "deep-is": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" - }, - "default-gateway": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-4.2.0.tgz", - "integrity": "sha512-h6sMrVB1VMWVrW13mSc6ia/DwYYw5MN6+exNu1OaJeFac5aSAvwM7lZ0NVfTABuSkQelr4h5oebg3KB1XPdjgA==", + "cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "requires": { - "execa": "^1.0.0", - "ip-regex": "^2.1.0" + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" } }, - "default-require-extensions": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-2.0.0.tgz", - "integrity": "sha1-9fj7sYp9bVCyH2QfZJ67Uiz+JPc=", + "crypto-js": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.2.0.tgz", + "integrity": "sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==" + }, + "css": { + "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": { - "strip-bom": "^3.0.0" + "inherits": "^2.0.3", + "source-map": "^0.6.1", + "source-map-resolve": "^0.5.2", + "urix": "^0.1.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 + } } }, - "defaults": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", - "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", + "css-blank-pseudo": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-0.1.4.tgz", + "integrity": "sha512-LHz35Hr83dnFeipc7oqFDmsjHdljj3TQtxGGiNWSOsTLIAubSm4TEz8qCaKFpk7idaQ1GfWscF4E6mgpBysA1w==", "dev": true, "requires": { - "clone": "^1.0.2" + "postcss": "^7.0.5" }, "dependencies": { - "clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 } } }, - "define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", - "requires": { - "object-keys": "^1.0.12" - } + "css-declaration-sorter": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.4.1.tgz", + "integrity": "sha512-rtdthzxKuyq6IzqX6jEcIzQF/YqccluefyCYheovBOLhFT/drQA9zj/UbRAa9J7C0o6EG6u3E6g+vKkay7/k3g==", + "dev": true }, - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "css-has-pseudo": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-0.10.0.tgz", + "integrity": "sha512-Z8hnfsZu4o/kt+AuFzeGpLVhFOGO9mluyHBaA2bA8aCGTwah5sT3WV/fTHH8UNZUytOIImuGPrl/prlb4oX4qQ==", "dev": true, "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" + "postcss": "^7.0.6", + "postcss-selector-parser": "^5.0.0-rc.4" }, "dependencies": { - "is-accessor-descriptor": { - "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" - } + "cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", + "dev": true }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", "dev": true, "requires": { - "kind-of": "^6.0.0" + "picocolors": "^0.2.1", + "source-map": "^0.6.1" } }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", "dev": true, "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" } + }, + "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 } } }, - "del": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz", - "integrity": "sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==", + "css-loader": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.2.0.tgz", + "integrity": "sha512-/rvHfYRjIpymZblf49w8jYcRo2y9gj6rV8UroHGmBxKrIyGLokpycyKzp9OkitvqT29ZSpzJ0Ic7SpnJX3sC8g==", + "dev": true, + "requires": { + "icss-utils": "^5.1.0", + "postcss": "^8.2.15", + "postcss-modules-extract-imports": "^3.0.0", + "postcss-modules-local-by-default": "^4.0.0", + "postcss-modules-scope": "^3.0.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.1.0", + "semver": "^7.3.5" + } + }, + "css-minimizer-webpack-plugin": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-3.0.2.tgz", + "integrity": "sha512-B3I5e17RwvKPJwsxjjWcdgpU/zqylzK1bPVghcmpFHRL48DXiBgrtqz1BJsn68+t/zzaLp9kYAaEDvQ7GyanFQ==", "dev": true, "requires": { - "@types/glob": "^7.1.1", - "globby": "^6.1.0", - "is-path-cwd": "^2.0.0", - "is-path-in-cwd": "^2.0.0", - "p-map": "^2.0.0", - "pify": "^4.0.1", - "rimraf": "^2.6.3" + "cssnano": "^5.0.6", + "jest-worker": "^27.0.2", + "p-limit": "^3.0.2", + "postcss": "^8.3.5", + "schema-utils": "^3.0.0", + "serialize-javascript": "^6.0.0", + "source-map": "^0.6.1" }, "dependencies": { - "globby": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", - "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, "requires": { - "array-union": "^1.0.1", - "glob": "^7.0.3", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, - "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - } + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" } }, - "p-map": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", - "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", + "ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", "dev": true }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "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 + }, + "schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", "dev": true, "requires": { - "glob": "^7.1.3" + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" } + }, + "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 } } }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" - }, - "dependency-graph": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.7.2.tgz", - "integrity": "sha512-KqtH4/EZdtdfWX0p6MGP9jljvxSY6msy/pRUD4jgNwVpv3v1QmNLlsB3LDSSUg79BRVSn7jI1QPRtArGABovAQ==", - "dev": true - }, - "des.js": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", - "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", + "css-parse": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-2.0.0.tgz", + "integrity": "sha512-UNIFik2RgSbiTwIW1IsFwXWn6vs+bYdq83LKTSOsx7NJR7WII9dxewkHLltfTLVppoUApHV0118a4RZRI9FLwA==", "dev": true, "requires": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" + "css": "^2.0.0" } }, - "destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" - }, - "detect-node": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz", - "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==", - "dev": true - }, - "dezalgo": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.3.tgz", - "integrity": "sha1-f3Qt4Gb8dIvI24IFad3c5Jvw1FY=", + "css-prefers-color-scheme": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-3.1.1.tgz", + "integrity": "sha512-MTu6+tMs9S3EUqzmqLXEcgNRbNkkD/TGFvowpeoWJn5Vfq7FMgsmRQs9X5NXAURiOBmOxm/lLjsDNXDE6k9bhg==", "dev": true, "requires": { - "asap": "^2.0.0", - "wrappy": "1" + "postcss": "^7.0.5" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } } }, - "dfa": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/dfa/-/dfa-1.2.0.tgz", - "integrity": "sha512-ED3jP8saaweFTjeGX8HQPjeC1YYyZs98jGNZx6IiBvxW7JG5v492kamAQB3m2wop07CvU/RQmzcKr6bgcC5D/Q==" - }, - "di": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", - "integrity": "sha1-gGZJMmzqp8qjMG112YXqJ0i6kTw=", - "dev": true - }, - "diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", - "dev": true + "css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dev": true, + "requires": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + } }, - "diffie-hellman": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", - "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "css-selector-tokenizer": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.3.tgz", + "integrity": "sha512-jWQv3oCEL5kMErj4wRnK/OPoBi0D+P1FR2cDCKYPaMeD2eW3/mttav8HT4hT1CKopiJI/psEULjkClhvJo4Lvg==", "dev": true, "requires": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" + "cssesc": "^3.0.0", + "fastparse": "^1.1.2" } }, - "dir-glob": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.2.2.tgz", - "integrity": "sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==", + "css-tree": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", + "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", "dev": true, "requires": { - "path-type": "^3.0.0" + "mdn-data": "2.0.14", + "source-map": "^0.6.1" + }, + "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 + } } }, - "dns-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=", + "css-what": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.2.2.tgz", + "integrity": "sha512-u/O3vwbptzhMs3L1fQE82ZSLHQQfto5gyZzwteVIEyeaY5Fc7R4dapF/BvRoSYFeqfBk4m0V1Vafq5Pjv25wvA==", "dev": true }, - "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==", + "cssauron": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/cssauron/-/cssauron-1.4.0.tgz", + "integrity": "sha512-Ht70DcFBh+/ekjVrYS2PlDMdSQEl3OFNmjK6lcn49HptBgilXf/Zwg4uFh9Xn0pX3Q8YOkSjIFOfK2osvdqpBw==", "dev": true, "requires": { - "ip": "^1.1.0", - "safe-buffer": "^5.0.1" + "through": "X.X.X" } }, - "dns-txt": { - "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" - } + "cssdb": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-4.4.0.tgz", + "integrity": "sha512-LsTAR1JPEM9TpGhl/0p3nQecC2LJ0kD8X5YARu1hk/9I1gril5vDtMZyNxcEpxxDj34YNck/ucjuoUd66K03oQ==", + "dev": true }, - "dom-serialize": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", - "integrity": "sha1-ViromZ9Evl6jB29UGdzVnrQ6yVs=", + "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 + }, + "cssnano": { + "version": "5.1.15", + "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-5.1.15.tgz", + "integrity": "sha512-j+BKgDcLDQA+eDifLx0EO4XSA56b7uut3BQFH+wbSaSTuGLuiyTa/wbRYthUXX8LC9mLg+WWKe8h+qJuwTAbHw==", "dev": true, "requires": { - "custom-event": "~1.0.0", - "ent": "~2.2.0", - "extend": "^3.0.0", - "void-elements": "^2.0.0" + "cssnano-preset-default": "^5.2.14", + "lilconfig": "^2.0.3", + "yaml": "^1.10.2" } }, - "dom-serializer": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", - "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", + "cssnano-preset-default": { + "version": "5.2.14", + "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.14.tgz", + "integrity": "sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A==", + "dev": true, + "requires": { + "css-declaration-sorter": "^6.3.1", + "cssnano-utils": "^3.1.0", + "postcss-calc": "^8.2.3", + "postcss-colormin": "^5.3.1", + "postcss-convert-values": "^5.1.3", + "postcss-discard-comments": "^5.1.2", + "postcss-discard-duplicates": "^5.1.0", + "postcss-discard-empty": "^5.1.1", + "postcss-discard-overridden": "^5.1.0", + "postcss-merge-longhand": "^5.1.7", + "postcss-merge-rules": "^5.1.4", + "postcss-minify-font-values": "^5.1.0", + "postcss-minify-gradients": "^5.1.1", + "postcss-minify-params": "^5.1.4", + "postcss-minify-selectors": "^5.2.1", + "postcss-normalize-charset": "^5.1.0", + "postcss-normalize-display-values": "^5.1.0", + "postcss-normalize-positions": "^5.1.1", + "postcss-normalize-repeat-style": "^5.1.1", + "postcss-normalize-string": "^5.1.0", + "postcss-normalize-timing-functions": "^5.1.0", + "postcss-normalize-unicode": "^5.1.1", + "postcss-normalize-url": "^5.1.0", + "postcss-normalize-whitespace": "^5.1.1", + "postcss-ordered-values": "^5.1.3", + "postcss-reduce-initial": "^5.1.2", + "postcss-reduce-transforms": "^5.1.0", + "postcss-svgo": "^5.1.0", + "postcss-unique-selectors": "^5.1.1" + } + }, + "cssnano-utils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-3.1.0.tgz", + "integrity": "sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==", + "dev": true + }, + "csso": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", + "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", "dev": true, "requires": { - "domelementtype": "^2.0.1", - "entities": "^2.0.0" - }, - "dependencies": { - "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 - } + "css-tree": "^1.1.2" } }, - "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==", + "custom-event": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", + "integrity": "sha512-GAj5FOq0Hd+RsCGVJxZuKaIDXDf3h6GQoNEjFgbLLI/trgtavwUbSnZ5pVfg27DVCaWjIohryS0JFwIJyT2cMg==", "dev": true }, - "domelementtype": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", - "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", + "damerau-levenshtein": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", + "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", "dev": true }, - "domutils": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", - "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", "dev": true, "requires": { - "dom-serializer": "0", - "domelementtype": "1" + "assert-plus": "^1.0.0" } }, - "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==", + "date-format": { + "version": "4.0.14", + "resolved": "https://registry.npmjs.org/date-format/-/date-format-4.0.14.tgz", + "integrity": "sha512-39BOQLs9ZjKh0/patS9nrT8wc3ioX3/eA/zgbKNopnF2wCqJEoxywwwElATYvRsXdnOxA/OQeQoFZ3rFjVajhg==", + "dev": true + }, + "debug": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", "dev": true, "requires": { - "is-obj": "^2.0.0" + "ms": "2.1.2" } }, - "duplexer2": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", - "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", - "requires": { - "readable-stream": "^2.0.2" + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==" + }, + "decode-uri-component": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", + "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", + "dev": true + }, + "deep-equal": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.3.tgz", + "integrity": "sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==", + "requires": { + "array-buffer-byte-length": "^1.0.0", + "call-bind": "^1.0.5", + "es-get-iterator": "^1.1.3", + "get-intrinsic": "^1.2.2", + "is-arguments": "^1.1.1", + "is-array-buffer": "^3.0.2", + "is-date-object": "^1.0.5", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "isarray": "^2.0.5", + "object-is": "^1.1.5", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.5.1", + "side-channel": "^1.0.4", + "which-boxed-primitive": "^1.0.2", + "which-collection": "^1.0.1", + "which-typed-array": "^1.1.13" } }, - "duplexify": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", - "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "default-gateway": { + "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": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", - "stream-shift": "^1.0.0" + "execa": "^1.0.0", + "ip-regex": "^2.1.0" } }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "defaults": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", "dev": true, "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" + "clone": "^1.0.2" + }, + "dependencies": { + "clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "dev": true + } } }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" - }, - "electron-to-chromium": { - "version": "1.3.392", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.392.tgz", - "integrity": "sha512-/hsgeVdReDsyTBE0aU9FRdh1wnNPrX3xlz3t61F+CJPOT+Umfi9DXHsCX85TEgWZQqlow0Rw44/4/jbU2Sqgkg==", - "dev": true - }, - "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, + "define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", "requires": { - "bn.js": "^4.4.0", - "brorand": "^1.0.1", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.0" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.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 - }, - "emojis-list": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", - "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", + "define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", "dev": true }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "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, + "define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", "requires": { - "iconv-lite": "~0.4.13" + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" } }, - "end-of-stream": { - "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==", + "define-property": { + "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": { - "once": "^1.4.0" + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" } }, - "engine.io": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.4.1.tgz", - "integrity": "sha512-8MfIfF1/IIfxuc2gv5K+XlFZczw/BpTvqBdl0E2fBLkYQp4miv4LuDTVtYt4yMyaIFLEr4vtaSgV4mjvll8Crw==", + "del": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", + "integrity": "sha512-Z4fzpbIRjOu7lO5jCETSWoqUDVe0IPOlfugBsF6suen2LKDlVb4QZpKEM9P+buNJ4KI1eN7I083w/pbKUpsrWQ==", "dev": true, "requires": { - "accepts": "~1.3.4", - "base64id": "2.0.0", - "cookie": "0.3.1", - "debug": "~4.1.0", - "engine.io-parser": "~2.2.0", - "ws": "^7.1.2" + "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" }, "dependencies": { - "cookie": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", - "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=", - "dev": true + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==", + "dev": true, + "requires": { + "array-uniq": "^1.0.1" + } }, - "ws": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.3.0.tgz", - "integrity": "sha512-iFtXzngZVXPGgpTlP1rBqsUK82p9tKqsWRPg5L56egiljujJT3vGAYnHANvFxBieXrTFavhzhxW52jnaWV+w2w==", - "dev": true - } - } - }, - "engine.io-client": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.4.2.tgz", - "integrity": "sha512-AWjc1Xg06a6UPFOBAzJf48W1UR/qKYmv/ubgSCumo9GXgvL/xGIvo05dXoBL+2NTLMipDI7in8xK61C17L25xg==", - "dev": true, - "requires": { - "component-emitter": "~1.3.0", - "component-inherit": "0.0.3", - "debug": "~4.1.0", - "engine.io-parser": "~2.2.0", - "has-cors": "1.1.0", - "indexof": "0.0.1", - "parseqs": "0.0.5", - "parseuri": "0.0.5", - "ws": "~6.1.0", - "xmlhttprequest-ssl": "~1.5.4", - "yeast": "0.1.2" - }, - "dependencies": { - "ws": { - "version": "6.1.4", - "resolved": "https://registry.npmjs.org/ws/-/ws-6.1.4.tgz", - "integrity": "sha512-eqZfL+NE/YQc1/ZynhojeV8q+H050oR8AZ2uIev7RU10svA9ZnJUddHcOUZTJLinZ9yEfdA2kSATS2qZK5fhJA==", + "globby": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", + "integrity": "sha512-HJRTIH2EeH44ka+LWig+EqT2ONSYpVlNfx6pyd592/VF1TbfljJ7elwie7oSwcViLGqOdWocSdu2txwBF9bjmQ==", "dev": true, "requires": { - "async-limiter": "~1.0.0" + "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" + } + }, + "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" } } } }, - "engine.io-parser": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.2.0.tgz", - "integrity": "sha512-6I3qD9iUxotsC5HEMuuGsKA0cXerGz+4uGcXQEkfBidgKf0amsjrrtwcbwK/nzpZBxclXlV7gGl9dgWvu4LF6w==", - "dev": true, - "requires": { - "after": "0.8.2", - "arraybuffer.slice": "~0.0.7", - "base64-arraybuffer": "0.1.5", - "blob": "0.0.5", - "has-binary2": "~1.0.2" - } - }, - "enhanced-resolve": { - "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", - "tapable": "^1.0.0" - } + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "dev": true }, - "ent": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", - "integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0=", + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", "dev": true }, - "entities": { + "depd": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.0.tgz", - "integrity": "sha512-D9f7V0JSRwIxlRI2mjMqufDrRDnx8p+eEOz7aUM9SuvF8gsBzra0/6tbjl1m8eQHrZlYj6PxqE00hZ1SAIKPLw==", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==" + }, + "dependency-graph": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz", + "integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==", "dev": true }, - "err-code": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/err-code/-/err-code-1.1.2.tgz", - "integrity": "sha1-BuARbTAo9q70gGhJ6w6mp0iuaWA=", + "destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==" + }, + "detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", "dev": true }, - "errno": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", - "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", + "dfa": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/dfa/-/dfa-1.2.0.tgz", + "integrity": "sha512-ED3jP8saaweFTjeGX8HQPjeC1YYyZs98jGNZx6IiBvxW7JG5v492kamAQB3m2wop07CvU/RQmzcKr6bgcC5D/Q==" + }, + "di": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", + "integrity": "sha512-uJaamHkagcZtHPqCIHZxnFrXlunQXgBOsZSUOWwFw31QJCAbyTBoHMW75YOTur5ZNx8pIeAKgf6GWIgaqqiLhA==", + "dev": true + }, + "diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "dev": true + }, + "dijkstrajs": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/dijkstrajs/-/dijkstrajs-1.0.3.tgz", + "integrity": "sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA==" + }, + "dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", "dev": true, "requires": { - "prr": "~1.0.1" + "path-type": "^4.0.0" } }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dns-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", + "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==", + "dev": true + }, + "dns-packet": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.4.tgz", + "integrity": "sha512-BQ6F4vycLXBvdrJZ6S3gZewt6rcrks9KBgM9vrhW+knGRqc8uEdT7fuCwloc7nny5xNoMJ17HGH0R/6fpo8ECA==", "dev": true, "requires": { - "is-arrayish": "^0.2.1" + "ip": "^1.1.0", + "safe-buffer": "^5.0.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==", + "dns-txt": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz", + "integrity": "sha512-Ix5PrWjphuSoUXV/Zv5gaFHjnaJtb02F2+Si3Ht9dyJ87+Z/lMmy+dpNHtTGraNK958ndXq2i+GLkWsWHcKaBQ==", + "dev": true, "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", - "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" + "buffer-indexof": "^1.0.0" } }, - "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==", + "doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" + "esutils": "^2.0.2" } }, - "es5-ext": { - "version": "0.10.53", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", - "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", + "dom-serialize": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", + "integrity": "sha512-Yra4DbvoW7/Z6LBN560ZwXMjoNOSAN2wRsKFGc4iBeso+mpIA6qj1vfdf9HpMaKAqG6wXTy+1SYEzmNpKXOSsQ==", + "dev": true, "requires": { - "es6-iterator": "~2.0.3", - "es6-symbol": "~3.1.3", - "next-tick": "~1.0.0" + "custom-event": "~1.0.0", + "ent": "~2.2.0", + "extend": "^3.0.0", + "void-elements": "^2.0.0" } }, - "es6-iterator": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", - "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", - "requires": { - "d": "1", - "es5-ext": "^0.10.35", - "es6-symbol": "^3.1.1" - } - }, - "es6-map": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", - "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", + "dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dev": true, "requires": { - "d": "1", - "es5-ext": "~0.10.14", - "es6-iterator": "~2.0.1", - "es6-set": "~0.1.5", - "es6-symbol": "~3.1.1", - "event-emitter": "~0.3.5" + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" } }, - "es6-promise": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", - "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", + "domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", "dev": true }, - "es6-promisify": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", - "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", + "domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", "dev": true, "requires": { - "es6-promise": "^4.0.3" + "domelementtype": "^2.2.0" + } + }, + "domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dev": true, + "requires": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + } + }, + "dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "requires": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" } }, - "es6-set": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", - "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", + "dev": true, "requires": { - "d": "1", - "es5-ext": "~0.10.14", - "es6-iterator": "~2.0.1", - "es6-symbol": "3.1.1", - "event-emitter": "~0.3.5" + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" }, "dependencies": { - "es6-symbol": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", - "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", - "requires": { - "d": "1", - "es5-ext": "~0.10.14" - } + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", + "dev": true } } }, - "es6-symbol": { - "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==", - "requires": { - "d": "^1.0.1", - "ext": "^1.1.2" - } + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + "electron-to-chromium": { + "version": "1.5.190", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.190.tgz", + "integrity": "sha512-k4McmnB2091YIsdCgkS0fMVMPOJgxl93ltFzaryXqwip1AaxeDqKCGLxkXODDA5Ab/D+tV5EL5+aTx76RvLRxw==", + "dev": true }, - "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=", + "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==" + }, + "emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", "dev": true }, - "escodegen": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.9.1.tgz", - "integrity": "sha512-6hTjO1NAWkHnDk3OqQ4YrCuwwmGHL9S3nPlzBOUG/R44rda3wLNrfvQ5fkSGjyhHFKM7ALPKcKGrwvCLe0lC7Q==", + "encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==" + }, + "encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dev": true, + "optional": true, "requires": { - "esprima": "^3.1.3", - "estraverse": "^4.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.6.1" + "iconv-lite": "^0.6.2" }, "dependencies": { - "esprima": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=" - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "optional": true + "iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "optional": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } } } }, - "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==", + "end-of-stream": { + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.5.tgz", + "integrity": "sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==", "dev": true, "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" + "once": "^1.4.0" } }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "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==", + "engine.io": { + "version": "6.6.4", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.6.4.tgz", + "integrity": "sha512-ZCkIjSYNDyGn0R6ewHDtXgns/Zre/NT6Agvq1/WobF7JXgFff4SeDroKiCO3fNJreU9YG429Sc81o4w5ok/W5g==", "dev": true, "requires": { - "estraverse": "^4.1.0" + "@types/cors": "^2.8.12", + "@types/node": ">=10.0.0", + "accepts": "~1.3.4", + "base64id": "2.0.0", + "cookie": "~0.7.2", + "cors": "~2.8.5", + "debug": "~4.3.1", + "engine.io-parser": "~5.2.1", + "ws": "~8.17.1" + }, + "dependencies": { + "cookie": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", + "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==", + "dev": true + } } }, - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" - }, - "estree-is-function": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/estree-is-function/-/estree-is-function-1.0.0.tgz", - "integrity": "sha512-nSCWn1jkSq2QAtkaVLJZY2ezwcFO161HVc174zL1KPW3RJ+O6C3eJb8Nx7OXzvhoEv+nLgSR1g71oWUHUDTrJA==" + "engine.io-parser": { + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.3.tgz", + "integrity": "sha512-HqD3yTBfnBxIrbnM1DoD6Pcq8NECnh8d4As1Qgh0z5Gg3jRRIqijury0CL3ghu/edArpUYiYqQiDUQBIs4np3Q==", + "dev": true }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" + "enhanced-resolve": { + "version": "5.18.2", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.2.tgz", + "integrity": "sha512-6Jw4sE1maoRJo3q8MsSIn2onJFbLTOjY9hlx4DZXmOKvLRd1Ok2kXmAGXaafL2+ijsJZ1ClYbl/pmqr9+k4iUQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + } }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" + "enquirer": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz", + "integrity": "sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==", + "dev": true, + "requires": { + "ansi-colors": "^4.1.1", + "strip-ansi": "^6.0.1" + } }, - "event-emitter": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", - "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", + "ent": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.2.tgz", + "integrity": "sha512-kKvD1tO6BM+oK9HzCPpUdRb4vKFQY/FPTFmurMvh6LlN68VMrdj77w8yp51/kDbpkFOS9J8w5W6zIzgM2H8/hw==", + "dev": true, "requires": { - "d": "1", - "es5-ext": "~0.10.14" + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "punycode": "^1.4.1", + "safe-regex-test": "^1.1.0" } }, - "eventemitter3": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", - "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==", + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", "dev": true }, - "events": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.1.0.tgz", - "integrity": "sha512-Rv+u8MLHNOdMjTAFeT3nCjHn2aGlx435FP/sDHNaRhDEMwyI/aB22Kj2qIN8R0cw3z28psEQLYwxVKLsKrMgWg==", + "env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", "dev": true }, - "eventsource": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.0.7.tgz", - "integrity": "sha512-4Ln17+vVT0k8aWq+t/bF5arcS3EpT9gYtW66EPacdj/mAFevznsnyoHLPy2BA8gbIQeIHoPsvwmfBftfcG//BQ==", + "err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "dev": true + }, + "errno": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", "dev": true, "requires": { - "original": "^1.0.0" + "prr": "~1.0.1" } }, - "evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, "requires": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" + "is-arrayish": "^0.2.1" } }, - "execa": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", - "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", - "dev": true, + "es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==" + }, + "es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==" + }, + "es-get-iterator": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", + "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", "requires": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "is-arguments": "^1.1.1", + "is-map": "^2.0.2", + "is-set": "^2.0.2", + "is-string": "^1.0.7", + "isarray": "^2.0.5", + "stop-iteration-iterator": "^1.0.0" } }, - "exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", + "es-module-lexer": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.7.1.tgz", + "integrity": "sha512-MgtWFl5No+4S3TmhDmCz2ObFGm6lEpTnzbQi+Dd+pw4mlTIZTmM2iAs5gRlmx5zS9luzobCSBSI90JM/1/JgOw==", "dev": true }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "dev": true, + "es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "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==", - "dev": true, - "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" - } - }, - "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" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } + "es-errors": "^1.3.0" } }, - "express": { - "version": "4.17.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", - "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", - "requires": { - "accepts": "~1.3.7", - "array-flatten": "1.1.1", - "body-parser": "1.19.0", - "content-disposition": "0.5.3", - "content-type": "~1.0.4", - "cookie": "0.4.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "~1.1.2", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "~1.1.2", - "fresh": "0.5.2", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.5", - "qs": "6.7.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.1.2", - "send": "0.17.1", - "serve-static": "1.14.1", - "setprototypeof": "1.1.1", - "statuses": "~1.5.0", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "dependencies": { - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "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==" - } - } + "es6-promise": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", + "dev": true }, - "ext": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", - "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", + "es6-promisify": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", + "integrity": "sha512-C+d6UdsYDk0lMebHNR4S2NybQMMngAOnOwYBQjTOiv0MkoJMP0Myw2mgpDLBcpfCmRLxyFqYhS/CfOENq4SJhQ==", + "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==" - } + "es6-promise": "^4.0.3" } }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "esbuild": { + "version": "0.13.8", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.13.8.tgz", + "integrity": "sha512-A4af7G7YZLfG5OnARJRMtlpEsCkq/zHZQXewgPA864l9D6VjjbH1SuFYK/OSV6BtHwDGkdwyRrX0qQFLnMfUcw==", "dev": true, + "optional": true, "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "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" - } - } - } + "esbuild-android-arm64": "0.13.8", + "esbuild-darwin-64": "0.13.8", + "esbuild-darwin-arm64": "0.13.8", + "esbuild-freebsd-64": "0.13.8", + "esbuild-freebsd-arm64": "0.13.8", + "esbuild-linux-32": "0.13.8", + "esbuild-linux-64": "0.13.8", + "esbuild-linux-arm": "0.13.8", + "esbuild-linux-arm64": "0.13.8", + "esbuild-linux-mips64le": "0.13.8", + "esbuild-linux-ppc64le": "0.13.8", + "esbuild-netbsd-64": "0.13.8", + "esbuild-openbsd-64": "0.13.8", + "esbuild-sunos-64": "0.13.8", + "esbuild-windows-32": "0.13.8", + "esbuild-windows-64": "0.13.8", + "esbuild-windows-arm64": "0.13.8" + } + }, + "esbuild-android-arm64": { + "version": "0.13.8", + "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.13.8.tgz", + "integrity": "sha512-AilbChndywpk7CdKkNSZ9klxl+9MboLctXd9LwLo3b0dawmOF/i/t2U5d8LM6SbT1Xw36F8yngSUPrd8yPs2RA==", + "dev": true, + "optional": true }, - "external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "esbuild-darwin-64": { + "version": "0.13.8", + "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.13.8.tgz", + "integrity": "sha512-b6sdiT84zV5LVaoF+UoMVGJzR/iE2vNUfUDfFQGrm4LBwM/PWXweKpuu6RD9mcyCq18cLxkP6w/LD/w9DtX3ng==", "dev": true, - "requires": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - } + "optional": true }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "esbuild-darwin-arm64": { + "version": "0.13.8", + "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.13.8.tgz", + "integrity": "sha512-R8YuPiiJayuJJRUBG4H0VwkEKo6AvhJs2m7Tl0JaIer3u1FHHXwGhMxjJDmK+kXwTFPriSysPvcobXC/UrrZCQ==", "dev": true, - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "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" - } - }, - "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-accessor-descriptor": { - "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" - } - }, - "is-data-descriptor": { - "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" - } - }, - "is-descriptor": { - "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", - "kind-of": "^6.0.2" - } - } - } + "optional": true }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true + "esbuild-freebsd-64": { + "version": "0.13.8", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.13.8.tgz", + "integrity": "sha512-zBn6urrn8FnKC+YSgDxdof9jhPCeU8kR/qaamlV4gI8R3KUaUK162WYM7UyFVAlj9N0MyD3AtB+hltzu4cysTw==", + "dev": true, + "optional": true }, - "falafel": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/falafel/-/falafel-2.2.4.tgz", - "integrity": "sha512-0HXjo8XASWRmsS0X1EkhwEMZaD3Qvp7FfURwjLKjG1ghfRm/MGZl2r4cWUTv41KdNghTw4OUMmVtdGQp3+H+uQ==", - "requires": { - "acorn": "^7.1.1", - "foreach": "^2.0.5", - "isarray": "^2.0.1", - "object-keys": "^1.0.6" - }, - "dependencies": { - "isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" - } - } + "esbuild-freebsd-arm64": { + "version": "0.13.8", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.13.8.tgz", + "integrity": "sha512-pWW2slN7lGlkx0MOEBoUGwRX5UgSCLq3dy2c8RIOpiHtA87xAUpDBvZK10MykbT+aMfXc0NI2lu1X+6kI34xng==", + "dev": true, + "optional": true }, - "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true + "esbuild-linux-32": { + "version": "0.13.8", + "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.13.8.tgz", + "integrity": "sha512-T0I0ueeKVO/Is0CAeSEOG9s2jeNNb8jrrMwG9QBIm3UU18MRB60ERgkS2uV3fZ1vP2F8i3Z2e3Zju4lg9dhVmw==", + "dev": true, + "optional": true }, - "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 + "esbuild-linux-64": { + "version": "0.13.8", + "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.13.8.tgz", + "integrity": "sha512-Bm8SYmFtvfDCIu9sjKppFXzRXn2BVpuCinU1ChTuMtdKI/7aPpXIrkqBNOgPTOQO9AylJJc1Zw6EvtKORhn64w==", + "dev": true, + "optional": true }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" + "esbuild-linux-arm": { + "version": "0.13.8", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.13.8.tgz", + "integrity": "sha512-4/HfcC40LJ4GPyboHA+db0jpFarTB628D1ifU+/5bunIgY+t6mHkJWyxWxAAE8wl/ZIuRYB9RJFdYpu1AXGPdg==", + "dev": true, + "optional": true }, - "fastparse": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.2.tgz", - "integrity": "sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==", - "dev": true + "esbuild-linux-arm64": { + "version": "0.13.8", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.13.8.tgz", + "integrity": "sha512-X4pWZ+SL+FJ09chWFgRNO3F+YtvAQRcWh0uxKqZSWKiWodAB20flsW/OWFYLXBKiVCTeoGMvENZS/GeVac7+tQ==", + "dev": true, + "optional": true }, - "faye-websocket": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", - "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", + "esbuild-linux-mips64le": { + "version": "0.13.8", + "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.13.8.tgz", + "integrity": "sha512-o7e0D+sqHKT31v+mwFircJFjwSKVd2nbkHEn4l9xQ1hLR+Bv8rnt3HqlblY3+sBdlrOTGSwz0ReROlKUMJyldA==", "dev": true, - "requires": { - "websocket-driver": ">=0.5.1" - } + "optional": true + }, + "esbuild-linux-ppc64le": { + "version": "0.13.8", + "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.13.8.tgz", + "integrity": "sha512-eZSQ0ERsWkukJp2px/UWJHVNuy0lMoz/HZcRWAbB6reoaBw7S9vMzYNUnflfL3XA6WDs+dZn3ekHE4Y2uWLGig==", + "dev": true, + "optional": true + }, + "esbuild-netbsd-64": { + "version": "0.13.8", + "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.13.8.tgz", + "integrity": "sha512-gZX4kP7gVvOrvX0ZwgHmbuHczQUwqYppxqtoyC7VNd80t5nBHOFXVhWo2Ad/Lms0E8b+wwgI/WjZFTCpUHOg9Q==", + "dev": true, + "optional": true + }, + "esbuild-openbsd-64": { + "version": "0.13.8", + "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.13.8.tgz", + "integrity": "sha512-afzza308X4WmcebexbTzAgfEWt9MUkdTvwIa8xOu4CM2qGbl2LanqEl8/LUs8jh6Gqw6WsicEK52GPrS9wvkcw==", + "dev": true, + "optional": true + }, + "esbuild-sunos-64": { + "version": "0.13.8", + "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.13.8.tgz", + "integrity": "sha512-mWPZibmBbuMKD+LDN23LGcOZ2EawMYBONMXXHmbuxeT0XxCNwadbCVwUQ/2p5Dp5Kvf6mhrlIffcnWOiCBpiVw==", + "dev": true, + "optional": true }, - "figgy-pudding": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", - "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==", + "esbuild-wasm": { + "version": "0.13.8", + "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.13.8.tgz", + "integrity": "sha512-UbD+3nloiSpJWXTCInZQrqPe8Y+RLfDkY/5kEHiXsw/lmaEvibe69qTzQu16m5R9je/0bF7VYQ5jaEOq0z9lLA==", "dev": true }, - "figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "esbuild-windows-32": { + "version": "0.13.8", + "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.13.8.tgz", + "integrity": "sha512-QsZ1HnWIcnIEApETZWw8HlOhDSWqdZX2SylU7IzGxOYyVcX7QI06ety/aDcn437mwyO7Ph4RrbhB+2ntM8kX8A==", "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" - } + "optional": true }, - "file-loader": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-4.2.0.tgz", - "integrity": "sha512-+xZnaK5R8kBJrHK0/6HRlrKNamvVS5rjyuju+rnyxRGuwUJwpAMsVzUl5dz6rK8brkzjV6JpcFNjp6NqV0g1OQ==", + "esbuild-windows-64": { + "version": "0.13.8", + "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.13.8.tgz", + "integrity": "sha512-76Fb57B9eE/JmJi1QmUW0tRLQZfGo0it+JeYoCDTSlbTn7LV44ecOHIMJSSgZADUtRMWT9z0Kz186bnaB3amSg==", "dev": true, - "requires": { - "loader-utils": "^1.2.3", - "schema-utils": "^2.0.0" + "optional": true + }, + "esbuild-windows-arm64": { + "version": "0.13.8", + "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.13.8.tgz", + "integrity": "sha512-HW6Mtq5eTudllxY2YgT62MrVcn7oq2o8TAoAvDUhyiEmRmDY8tPwAhb1vxw5/cdkbukM3KdMYtksnUhF/ekWeg==", + "dev": true, + "optional": true + }, + "escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true + }, + "eslint": { + "version": "7.32.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz", + "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==", + "dev": true, + "requires": { + "@babel/code-frame": "7.12.11", + "@eslint/eslintrc": "^0.4.3", + "@humanwhocodes/config-array": "^0.5.0", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "enquirer": "^2.3.5", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^2.1.0", + "eslint-visitor-keys": "^2.0.0", + "espree": "^7.3.1", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.1.2", + "globals": "^13.6.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.0.4", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "progress": "^2.0.0", + "regexpp": "^3.1.0", + "semver": "^7.2.1", + "strip-ansi": "^6.0.0", + "strip-json-comments": "^3.1.0", + "table": "^6.0.9", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" }, "dependencies": { + "@babel/code-frame": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", + "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "dev": true, + "requires": { + "@babel/highlight": "^7.10.4" + } + }, "ajv": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz", - "integrity": "sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==", + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -4937,365 +5253,672 @@ "uri-js": "^4.2.2" } }, - "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==", + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "dev": true }, - "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, - "requires": { - "ajv": "^6.12.0", - "ajv-keywords": "^3.4.1" - } + "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 } } }, - "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==", + "eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, - "optional": true + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + } }, - "fileset": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/fileset/-/fileset-2.0.3.tgz", - "integrity": "sha1-jnVIqW08wjJ+5eZ0FocjozO7oqA=", + "eslint-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", "dev": true, "requires": { - "glob": "^7.0.3", - "minimatch": "^3.0.3" + "eslint-visitor-keys": "^1.1.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "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==", + "eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true + }, + "espree": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", + "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", "dev": true, "requires": { - "to-regex-range": "^5.0.1" + "acorn": "^7.4.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^1.3.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true + } } }, - "finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "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 + }, + "esquery": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", + "dev": true, "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "statuses": "~1.5.0", - "unpipe": "~1.0.0" + "estraverse": "^5.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" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true } } }, - "find-cache-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.0.0.tgz", - "integrity": "sha512-t7ulV1fmbxh5G9l/492O1p5+EBbr3uwpt6odhFTMc+nWyhmbloe+ja9BZ8pIBtqFWhOmCWVjx+pTW4zDkFoclw==", + "esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, "requires": { - "commondir": "^1.0.1", - "make-dir": "^3.0.0", - "pkg-dir": "^4.1.0" + "estraverse": "^5.2.0" }, "dependencies": { - "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" - } - }, - "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" - } - }, - "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, - "requires": { - "semver": "^6.0.0" - } - }, - "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==", + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + } + } + }, + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==" + }, + "eventemitter-asyncresource": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/eventemitter-asyncresource/-/eventemitter-asyncresource-1.0.0.tgz", + "integrity": "sha512-39F7TBIV0G7gTelxwbEqnwhp90eqCPON1k0NwNfwhgKn4Co4ybUbj2pECcXT0B3ztRKZ7Pw1JujUUgmQJHcVAQ==", + "dev": true + }, + "eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", + "dev": true + }, + "events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true + }, + "eventsource": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-2.0.2.tgz", + "integrity": "sha512-IzUmBGPR3+oUG9dUeXynyNmf91/3zUSJg1lCktzKw47OXuhco54U3r9B7O4XX+Rb1Itm9OZ2b0RkTs10bICOxA==", + "dev": true + }, + "execa": { + "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", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.6.tgz", + "integrity": "sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw==", "dev": true, "requires": { - "p-try": "^2.0.0" + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" } }, - "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==", + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "dev": true + }, + "semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", "dev": true, "requires": { - "p-limit": "^2.2.0" + "shebang-regex": "^1.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 - }, - "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==", + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", "dev": true }, - "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==", + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, "requires": { - "find-up": "^4.0.0" + "isexe": "^2.0.0" } } } }, - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "flatted": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", - "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", + "exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", "dev": true }, - "flush-write-stream": { - "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==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "readable-stream": "^2.3.6" - } - }, - "follow-redirects": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.11.0.tgz", - "integrity": "sha512-KZm0V+ll8PfBrKwMzdo5D13b1bur9Iq9Zd/RMmAoQQcl2PxxFml8cxXPaaPYVbV0RjNjq1CU7zIzAOqtUPudmA==", + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==", "dev": true, "requires": { - "debug": "^3.0.0" + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "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.1.1" - } - } - } - }, - "fontkit": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/fontkit/-/fontkit-1.8.0.tgz", - "integrity": "sha512-EFDRCca7khfQWYu1iFhsqeABpi87f03MBdkT93ZE6YhqCdMzb5Eojb6c4dlJikGv5liuhByyzA7ikpIPTSBWbQ==", - "requires": { - "babel-runtime": "^6.11.6", - "brfs": "^1.4.0", - "brotli": "^1.2.0", - "browserify-optional": "^1.0.0", - "clone": "^1.0.1", - "deep-equal": "^1.0.0", - "dfa": "^1.0.0", - "restructure": "^0.5.3", - "tiny-inflate": "^1.0.2", - "unicode-properties": "^1.0.0", - "unicode-trie": "^0.3.0" - }, - "dependencies": { - "brfs": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/brfs/-/brfs-1.6.1.tgz", - "integrity": "sha512-OfZpABRQQf+Xsmju8XE9bDjs+uU4vLREGolP7bDgcpsI17QREyZ4Bl+2KLxxx1kCgA0fAIhKQBaBYh+PEcCqYQ==", - "requires": { - "quote-stream": "^1.0.1", - "resolve": "^1.1.5", - "static-module": "^2.2.0", - "through2": "^2.0.0" + "ms": "2.0.0" } }, - "clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=" - }, - "magic-string": { - "version": "0.22.5", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.22.5.tgz", - "integrity": "sha512-oreip9rJZkzvA8Qzk9HFs8fZGF/u7H/gtrE8EN6RjKJ9kh2HlC+yQ2QezifqTZfGyiuAV0dRv5a+y/8gBb1m9w==", + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, "requires": { - "vlq": "^0.2.2" + "is-descriptor": "^0.1.0" } }, - "merge-source-map": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.0.4.tgz", - "integrity": "sha1-pd5GU42uhNQRTMXqArR3KmNGcB8=", + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dev": true, "requires": { - "source-map": "^0.5.6" + "is-extendable": "^0.1.0" } }, - "object-inspect": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.4.1.tgz", - "integrity": "sha512-wqdhLpfCUbEsoEwl3FXwGyv8ief1k/1aUdIPCqVnupM6e8l63BEJdiF/0swtn04/8p05tG/T0FrpTlfwvljOdw==" + "is-descriptor": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.7.tgz", + "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + } }, - "pako": { - "version": "0.2.9", - "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", - "integrity": "sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU=" + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "dev": true }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" - }, - "static-module": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/static-module/-/static-module-2.2.5.tgz", - "integrity": "sha512-D8vv82E/Kpmz3TXHKG8PPsCPg+RAX6cbCOyvjM6x04qZtQ47EtJFVwRsdov3n5d6/6ynrOY9XB4JkaZwB2xoRQ==", - "requires": { - "concat-stream": "~1.6.0", - "convert-source-map": "^1.5.1", - "duplexer2": "~0.1.4", - "escodegen": "~1.9.0", - "falafel": "^2.1.0", - "has": "^1.0.1", - "magic-string": "^0.22.4", - "merge-source-map": "1.0.4", - "object-inspect": "~1.4.0", - "quote-stream": "~1.0.2", - "readable-stream": "~2.3.3", - "shallow-copy": "~0.0.1", - "static-eval": "^2.0.0", - "through2": "~2.0.3" - } - }, - "unicode-trie": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/unicode-trie/-/unicode-trie-0.3.1.tgz", - "integrity": "sha1-1nHd3YkQGgi6w3tqUWEBBgIFIIU=", + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + } + } + }, + "express": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", + "requires": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.3", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.7.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.3.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.3", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.12", + "proxy-addr": "~2.0.7", + "qs": "6.13.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.19.0", + "serve-static": "1.16.2", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "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": { - "pako": "^0.2.5", - "tiny-inflate": "^1.0.0" + "ms": "2.0.0" } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" } } }, - "for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", - "dev": true - }, - "foreach": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", - "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=" - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", "dev": true }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", "dev": true, "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" } }, - "forwarded": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", - "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" - }, - "fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", "dev": true, "requires": { - "map-cache": "^0.2.2" + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" } }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "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=", + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", "dev": true, "requires": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.0" + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "dev": true + } } }, - "fs-extra": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.2.tgz", - "integrity": "sha1-+RcExT0bRh+JNFKwwwfZmXZHq2s=", + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", + "dev": true + }, + "fast-deep-equal": { + "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==", + "dev": true + }, + "fast-glob": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", "dev": true, "requires": { - "graceful-fs": "^4.1.2", + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.8" + } + }, + "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 + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "fastparse": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.2.tgz", + "integrity": "sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==", + "dev": true + }, + "fastq": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", + "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", + "dev": true, + "requires": { + "reusify": "^1.0.4" + } + }, + "faye-websocket": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", + "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", + "dev": true, + "requires": { + "websocket-driver": ">=0.5.1" + } + }, + "figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.5" + }, + "dependencies": { + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true + } + } + }, + "file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "requires": { + "flat-cache": "^3.0.4" + } + }, + "file-saver": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/file-saver/-/file-saver-2.0.5.tgz", + "integrity": "sha512-P9bmyZ3h/PRG+Nzga+rbdI4OEpNDzAVyy74uVO9ATgzLK6VtAsYybF/+TOCvrc0MO793d6+42lLyZTw7/ArVzA==" + }, + "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 + }, + "fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "finalhandler": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", + "requires": { + "debug": "2.6.9", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "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": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + } + } + }, + "find-cache-dir": { + "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", + "pkg-dir": "^4.1.0" + } + }, + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "flat-cache": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", + "dev": true, + "requires": { + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" + } + }, + "flatted": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", + "dev": true + }, + "flatten": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/flatten/-/flatten-1.0.3.tgz", + "integrity": "sha512-dVsPA/UwQ8+2uoFe5GHtiBMu48dWLTdsuEd7CKGlZlD78r1TTWBvDuFaFGKCo/ZfEr95Uk56vZoX86OsHkUeIg==", + "dev": true + }, + "follow-redirects": { + "version": "1.15.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", + "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", + "dev": true + }, + "fontkit": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/fontkit/-/fontkit-1.9.0.tgz", + "integrity": "sha512-HkW/8Lrk8jl18kzQHvAw9aTHe1cqsyx5sDnxncx652+CIfhawokEPkeM3BoIC+z/Xv7a0yMr0f3pRRwhGH455g==", + "requires": { + "@swc/helpers": "^0.3.13", + "brotli": "^1.3.2", + "clone": "^2.1.2", + "deep-equal": "^2.0.5", + "dfa": "^1.2.0", + "restructure": "^2.0.1", + "tiny-inflate": "^1.0.3", + "unicode-properties": "^1.3.1", + "unicode-trie": "^2.0.0" + } + }, + "for-each": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", + "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", + "requires": { + "is-callable": "^1.2.7" + } + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==", + "dev": true + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", + "dev": true + }, + "form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==" + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==", + "dev": true, + "requires": { + "map-cache": "^0.2.2" + } + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==" + }, + "fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.0", "jsonfile": "^4.0.0", "universalify": "^0.1.0" } @@ -5309,53 +5932,94 @@ "minipass": "^3.0.0" } }, - "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-monkey": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.1.0.tgz", + "integrity": "sha512-QMUezzXWII9EV5aTFXW1UBVUO77wYPpjqIF8/AviUCThNeSYZykpoTixUeaNNBwmCev0AMDWMAni+f8Hxb1IFw==", + "dev": true }, "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", "dev": true }, "fsevents": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", - "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "dev": true, "optional": true }, "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==" }, - "genfun": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/genfun/-/genfun-5.0.0.tgz", - "integrity": "sha512-KGDOARWVga7+rnB3z9Sd2Letx515owfk0hSxHGuqjANb1M+x2bGZGqHLiozPsYMdM2OubeMni/Hpwmjq6qIUhA==", + "functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", "dev": true }, - "get-assigned-identifiers": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/get-assigned-identifiers/-/get-assigned-identifiers-1.2.0.tgz", - "integrity": "sha512-mBBwmeGTrxEMO4pMaaf/uUEFHnYtwr8FTe8Y/mer4rcV/bye0qGm6pw1bGZFGStxC5O76c5ZAVBGnqHmOaJpdQ==" + "functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==" }, - "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==", + "gauge": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", + "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", + "dev": true, + "requires": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" + } + }, + "gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", "dev": 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==" + }, + "get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "requires": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + } + }, + "get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "requires": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + } + }, "get-stream": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", @@ -5368,22 +6032,22 @@ "get-value": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "integrity": "sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==", "dev": true }, "getpass": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", "dev": true, "requires": { "assert-plus": "^1.0.0" } }, "glob": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.5.tgz", - "integrity": "sha512-J9dlskqUXK1OeTOYBEn5s8aMukWMwWfs+rPTn/jn50Ux4MNXVhubL1wu/j2t+H4NVI+cXEcCaYellqaPVGXNqQ==", + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", "dev": true, "requires": { "fs.realpath": "^1.0.0", @@ -5395,58 +6059,52 @@ } }, "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "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-glob": "^4.0.1" } }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", "dev": true }, + "globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dev": true, + "requires": { + "type-fest": "^0.20.2" + } + }, "globby": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/globby/-/globby-7.1.1.tgz", - "integrity": "sha1-+yzP+UAfhgCUXfral0QMypcrhoA=", + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", "dev": true, "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.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" } }, + "gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==" + }, "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==", + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", "dev": true }, "handle-thing": { @@ -5458,74 +6116,98 @@ "har-schema": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==", "dev": true }, "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==", + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", "dev": true, "requires": { - "ajv": "^6.5.5", + "ajv": "^6.12.3", "har-schema": "^2.0.0" - } - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "requires": { - "function-bind": "^1.1.1" + }, + "dependencies": { + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "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" + } + }, + "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 + } } }, "has-ansi": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", "dev": true, "requires": { "ansi-regex": "^2.0.0" - } - }, - "has-binary2": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz", - "integrity": "sha512-G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw==", - "dev": true, - "requires": { - "isarray": "2.0.1" }, "dependencies": { - "isarray": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", - "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=", + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", "dev": true } } }, - "has-cors": { + "has-bigints": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz", - "integrity": "sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk=", - "dev": true + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", + "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==" }, "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true }, + "has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "requires": { + "es-define-property": "^1.0.0" + } + }, "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==" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==" + }, + "has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "requires": { + "has-symbols": "^1.0.3" + } + }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", + "dev": true }, "has-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "integrity": "sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==", "dev": true, "requires": { "get-value": "^2.0.6", @@ -5536,7 +6218,7 @@ "has-values": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", - "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "integrity": "sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==", "dev": true, "requires": { "is-number": "^3.0.0", @@ -5546,7 +6228,7 @@ "is-number": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", "dev": true, "requires": { "kind-of": "^3.0.2" @@ -5555,7 +6237,7 @@ "kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dev": true, "requires": { "is-buffer": "^1.1.5" @@ -5566,7 +6248,7 @@ "kind-of": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "integrity": "sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==", "dev": true, "requires": { "is-buffer": "^1.1.5" @@ -5574,86 +6256,111 @@ } } }, - "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, + "hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "function-bind": "^1.1.2" } }, - "hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "hdr-histogram-js": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/hdr-histogram-js/-/hdr-histogram-js-2.0.3.tgz", + "integrity": "sha512-Hkn78wwzWHNCp2uarhzQ2SGFLU3JY8SBDDd3TAABK4fc30wm+MuPOrg5QVFVfkKOQd6Bfz3ukJEI+q9sXEkK1g==", "dev": true, "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" + "@assemblyscript/loader": "^0.10.1", + "base64-js": "^1.2.0", + "pako": "^1.0.3" } }, - "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==", + "hdr-histogram-percentiles-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hdr-histogram-percentiles-obj/-/hdr-histogram-percentiles-obj-3.0.0.tgz", + "integrity": "sha512-7kIufnBqdsBGcSZLPJwqHT3yhk1QTsSlFsVD3kx5ixH/AlgBs9yM1q6DPhXZ8f8gtdqgh7N7/5btRLpQsS2gHw==", "dev": true }, - "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", - "minimalistic-crypto-utils": "^1.0.1" - } - }, "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==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", "dev": true, "requires": { - "lru-cache": "^5.1.1" + "lru-cache": "^6.0.0" + }, + "dependencies": { + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } } }, "hpack.js": { "version": "2.1.6", "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", + "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", "dev": true, "requires": { "inherits": "^2.0.1", "obuf": "^1.0.0", "readable-stream": "^2.0.1", "wbuf": "^1.1.0" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, + "readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": 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" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, - "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 - }, - "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 - }, - "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 - }, "html-entities": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.2.1.tgz", - "integrity": "sha1-DfKTUfByEWNRXfueVUPl9u7VFi8=", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.4.0.tgz", + "integrity": "sha512-8nxjcBcd8wovbeKx7h3wTji4e6+rhaVuPNpMqwWgnHh+N9ToqsCs6XztWRBPQ+UtzsoMAdKZtUENoVzU/EMtZA==", "dev": true }, "html-escaper": { @@ -5663,40 +6370,33 @@ "dev": true }, "http-cache-semantics": { - "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==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz", + "integrity": "sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==", "dev": true }, "http-deceiver": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=", + "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", "dev": true }, "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==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", "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=" - } + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" } }, "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=", + "version": "0.5.10", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.10.tgz", + "integrity": "sha512-Pysuw9XpUq5dVc/2SMHpuTY01RFl8fttgcyunjL7eEMhGM3cI4eOmiCycJDVCo/7O7ClfQD3SaI6ftDzqOXYMA==", "dev": true }, "http-proxy": { @@ -5711,30 +6411,14 @@ } }, "http-proxy-agent": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz", - "integrity": "sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", "dev": true, "requires": { - "agent-base": "4", - "debug": "3.1.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, - "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 - } + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" } }, "http-proxy-middleware": { @@ -5747,12 +6431,123 @@ "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==", + "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": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "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": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", + "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": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "dev": true + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "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": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "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": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", + "dev": true, + "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=", + "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==", "dev": true, "requires": { "assert-plus": "^1.0.0", @@ -5760,37 +6555,20 @@ "sshpk": "^1.7.0" } }, - "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 - }, "https-proxy-agent": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz", - "integrity": "sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", + "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", "dev": true, "requires": { - "agent-base": "^4.3.0", - "debug": "^3.1.0" - }, - "dependencies": { - "debug": { - "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" - } - } + "agent-base": "6", + "debug": "4" } }, "humanize-ms": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0=", + "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", "dev": true, "requires": { "ms": "^2.0.0" @@ -5804,28 +6582,28 @@ "safer-buffer": ">= 2.1.2 < 3" } }, - "ieee754": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", - "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", + "icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", "dev": true }, - "iferr": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", - "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", + "ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", "dev": true }, "ignore": { - "version": "3.3.10", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", - "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==", + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", "dev": true }, "ignore-walk": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.3.tgz", - "integrity": "sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-4.0.1.tgz", + "integrity": "sha512-rzDQLaW4jQbh2YrOFlJdCtX8qgJTehFRYiUB2r1osqTeDzV/3+Jh8fz1oAPzUThf3iku8Ds4IDqawI5d8mUiQw==", "dev": true, "requires": { "minimatch": "^3.0.4" @@ -5834,42 +6612,24 @@ "image-size": { "version": "0.5.5", "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", - "integrity": "sha1-Cd/Uq50g4p6xw+gLiZA3jfnjy5w=", + "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", "dev": true, "optional": true }, "immediate": { "version": "3.0.6", "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", - "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=", + "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", "dev": true }, - "import-cwd": { - "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" - } - }, "import-fresh": { - "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" - } - }, - "import-from": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-from/-/import-from-2.1.0.tgz", - "integrity": "sha1-M1238qev/VOqpHHUuAId7ja387E=", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", "dev": true, "requires": { - "resolve-from": "^3.0.0" + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" } }, "import-local": { @@ -5880,129 +6640,136 @@ "requires": { "pkg-dir": "^3.0.0", "resolve-cwd": "^2.0.0" - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true - }, - "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 - }, - "indexes-of": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", - "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", - "dev": true - }, - "indexof": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", - "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=", - "dev": true - }, - "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 - }, - "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.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", - "dev": true - }, - "inquirer": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.0.0.tgz", - "integrity": "sha512-rSdC7zelHdRQFkWnhsMu2+2SO41mpv2oF2zy4tMhmiLWkcKbOAs87fWAJhVXttKVwhdZvymvnuM95EyEXg2/tQ==", + }, + "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==", + "dev": true, + "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==", + "dev": true, + "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==", + "dev": true, + "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==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "dev": true + }, + "pkg-dir": { + "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" + } + } + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true + }, + "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 + }, + "indexes-of": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", + "integrity": "sha512-bup+4tap3Hympa+JBJUG7XuOsdNQ6fxt0MHyXMKuLBKn0OqsTfvUxkUrroEX1+B2VsSHvCjiIcZVxRtYa4nllA==", + "dev": true + }, + "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 + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "ini": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", + "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", + "dev": true + }, + "inquirer": { + "version": "8.1.2", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.1.2.tgz", + "integrity": "sha512-DHLKJwLPNgkfwNmsuEUKSejJFbkv0FMO9SMiQbjI3n5NQuCrSIBqP66ggqyz2a6t2qEolKrMjhQ3+W/xXgUQ+Q==", "dev": true, "requires": { "ansi-escapes": "^4.2.1", - "chalk": "^2.4.2", + "chalk": "^4.1.1", "cli-cursor": "^3.1.0", - "cli-width": "^2.0.0", + "cli-width": "^3.0.0", "external-editor": "^3.0.3", "figures": "^3.0.0", - "lodash": "^4.17.15", + "lodash": "^4.17.21", "mute-stream": "0.0.8", - "run-async": "^2.2.0", - "rxjs": "^6.4.0", + "ora": "^5.3.0", + "run-async": "^2.4.0", + "rxjs": "^7.2.0", "string-width": "^4.1.0", - "strip-ansi": "^5.1.0", + "strip-ansi": "^6.0.0", "through": "^2.3.6" }, "dependencies": { - "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 - }, - "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 - }, - "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" - }, - "dependencies": { - "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" - } - } - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "rxjs": { + "version": "7.8.2", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz", + "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", "dev": true, "requires": { - "ansi-regex": "^4.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==", - "dev": true - } + "tslib": "^2.1.0" } } } @@ -6017,31 +6784,36 @@ "ipaddr.js": "^1.9.0" } }, - "invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dev": true, + "internal-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", + "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", "requires": { - "loose-envify": "^1.0.0" + "es-errors": "^1.3.0", + "hasown": "^2.0.2", + "side-channel": "^1.1.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 - }, "ip": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", - "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.9.tgz", + "integrity": "sha512-cyRxvOEpNHNtchU3Ln9KC/auJgup87llfQpQ+t5ghoC/UhL16SWzbueiCsdTnWmqAWl7LadfuwhlqmtOaqMHdQ==", "dev": true }, + "ip-address": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", + "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", + "dev": true, + "requires": { + "jsbn": "1.1.0", + "sprintf-js": "^1.1.3" + } + }, "ip-regex": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", - "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=", + "integrity": "sha512-58yWmlHpp7VYfcdTwMTvwMmqx/Elfxjd9RXTDyMsbL7lLWmhMylLEqiYVLKuLzOZqVgiWXD9MfR62Vv89VRxkw==", "dev": true }, "ipaddr.js": { @@ -6050,42 +6822,53 @@ "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" }, "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=", + "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-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=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.1.tgz", + "integrity": "sha512-YBUanLI8Yoihw923YeFUS5fs0fF2f5TSFTNiYAAzhhDscDa3lEqYuz1pDOEP5KvX94I9ey3vsqjJcLVFVU+3QA==", "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" - } - } + "hasown": "^2.0.0" } }, "is-arguments": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz", - "integrity": "sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.2.0.tgz", + "integrity": "sha512-7bVbi0huj/wrIAOzb8U1aszg9kdi3KN/CyU19CTI7tAoZYEZoL9yCDXpbXN+uPsuWnP02cyug1gleqq+TU+YCA==", + "requires": { + "call-bound": "^1.0.2", + "has-tostringtag": "^1.0.2" + } + }, + "is-array-buffer": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", + "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", + "requires": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + } }, "is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", "dev": true }, + "is-bigint": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", + "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", + "requires": { + "has-bigints": "^1.0.2" + } + }, "is-binary-path": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", @@ -6095,6 +6878,15 @@ "binary-extensions": "^2.0.0" } }, + "is-boolean-object": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", + "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", + "requires": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + } + }, "is-buffer": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", @@ -6102,96 +6894,77 @@ "dev": true }, "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==" + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==" }, - "is-color-stop": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-color-stop/-/is-color-stop-1.1.0.tgz", - "integrity": "sha1-z/9HGu5N1cnhWFmPvhKWe1za00U=", + "is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", "dev": true, "requires": { - "css-color-names": "^0.0.4", - "hex-color-regex": "^1.1.0", - "hsl-regex": "^1.0.0", - "hsla-regex": "^1.0.0", - "rgb-regex": "^1.0.1", - "rgba-regex": "^1.0.0" + "hasown": "^2.0.2" } }, "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.1.tgz", + "integrity": "sha512-bc4NlCDiCr28U4aEsQ3Qs2491gVq4V8G7MQyws968ImqjKuYtTJXrl7Vq7jsN7Ly/C3xj5KWFrY7sHNeDkAzXw==", "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" - } - } + "hasown": "^2.0.0" } }, "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==" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", + "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", + "requires": { + "call-bound": "^1.0.2", + "has-tostringtag": "^1.0.2" + } }, "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.3.tgz", + "integrity": "sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw==", "dev": true, "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "dependencies": { - "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 - } + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" } }, - "is-directory": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", - "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=", + "is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", "dev": true }, "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 + "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" + } }, "is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "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 + "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==" }, "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==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, "requires": { "is-extglob": "^2.1.1" @@ -6203,48 +6976,56 @@ "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": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", + "dev": true + }, + "is-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==" + }, "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 }, - "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-number-object": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", + "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", + "requires": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + } }, "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==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", + "integrity": "sha512-cnS56eR9SPAscL77ik76ATVqoPARTqPIVkMDVxRaWH06zT+6+CzIroYRJ0VVvm0Z1zfAvxvz9i/D3Ppjaqt5Nw==", "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==", + "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": "^2.1.0" + "is-path-inside": "^1.0.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==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", + "integrity": "sha512-qhsCR/Esx4U4hg/9I19OVUAJkGWtjRYHMRgUMZE2TDdj+Ag+kttZanLupfddNyglzz50cUlmWzUaI37GDfNx/g==", "dev": true, "requires": { - "path-is-inside": "^1.0.2" + "path-is-inside": "^1.0.1" } }, - "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 - }, "is-plain-object": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", @@ -6254,53 +7035,85 @@ "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-regex": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz", - "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", + "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", "requires": { - "has": "^1.0.3" + "call-bound": "^1.0.2", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" } }, - "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 + "is-set": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==" + }, + "is-shared-array-buffer": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", + "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", + "requires": { + "call-bound": "^1.0.3" + } }, "is-stream": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", "dev": true }, - "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, + "is-string": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", + "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", "requires": { - "html-comment-regex": "^1.1.0" + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" } }, "is-symbol": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", - "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", + "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", "requires": { - "has-symbols": "^1.0.1" + "call-bound": "^1.0.2", + "has-symbols": "^1.1.0", + "safe-regex-test": "^1.1.0" } }, "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", + "dev": true + }, + "is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "dev": true + }, + "is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==" + }, + "is-weakset": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", + "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", + "requires": { + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + } + }, + "is-what": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", + "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==", "dev": true }, "is-windows": { @@ -6310,139 +7123,94 @@ "dev": true }, "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==", + "dev": true, + "requires": { + "is-docker": "^2.0.0" + } }, "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" }, "isbinaryfile": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.6.tgz", - "integrity": "sha512-ORrEy+SNVqUhrCaal4hA4fBzhggQQ+BaLntyPOdoEiwlKZW9BZiJXjg3RMiruE4tPEI3pyVPpySHQF/dKWperg==", + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz", + "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==", "dev": true }, "isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", "dev": true }, "isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", "dev": true }, "isstream": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", "dev": true }, - "istanbul-api": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/istanbul-api/-/istanbul-api-2.1.6.tgz", - "integrity": "sha512-x0Eicp6KsShG1k1rMgBAi/1GgY7kFGEBwQpw3PXGEmu+rBcBNhqU8g2DgY9mlepAsLPzrzrbqSgCGANnki4POA==", - "dev": true, - "requires": { - "async": "^2.6.2", - "compare-versions": "^3.4.0", - "fileset": "^2.0.3", - "istanbul-lib-coverage": "^2.0.5", - "istanbul-lib-hook": "^2.0.7", - "istanbul-lib-instrument": "^3.3.0", - "istanbul-lib-report": "^2.0.8", - "istanbul-lib-source-maps": "^3.0.6", - "istanbul-reports": "^2.2.4", - "js-yaml": "^3.13.1", - "make-dir": "^2.1.0", - "minimatch": "^3.0.4", - "once": "^1.4.0" - }, - "dependencies": { - "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 - }, - "istanbul-lib-instrument": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz", - "integrity": "sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA==", - "dev": true, - "requires": { - "@babel/generator": "^7.4.0", - "@babel/parser": "^7.4.3", - "@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" - } - } - } - }, "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==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", "dev": true }, - "istanbul-lib-hook": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-2.0.7.tgz", - "integrity": "sha512-vrRztU9VRRFDyC+aklfLoeXyNdTfga2EI3udDGn4cZ6fpSXpHLV9X6CHvfoMCPtggg8zvDDmC4b9xfu0z6/llA==", - "dev": true, - "requires": { - "append-transform": "^1.0.0" - } - }, "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==", + "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==", "dev": true, "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": { + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } } }, "istanbul-lib-report": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz", - "integrity": "sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", "dev": true, "requires": { - "istanbul-lib-coverage": "^2.0.5", - "make-dir": "^2.1.0", - "supports-color": "^6.1.0" + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" }, "dependencies": { - "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 - }, - "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==", + "make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", "dev": true, "requires": { - "has-flag": "^3.0.0" + "semver": "^7.5.3" } + }, + "semver": { + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "dev": true } } }, @@ -6465,6 +7233,22 @@ "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 + }, "rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", @@ -6474,6 +7258,12 @@ "glob": "^7.1.3" } }, + "semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -6483,18 +7273,19 @@ } }, "istanbul-reports": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.7.tgz", - "integrity": "sha512-uu1F/L1o5Y6LzPVSVZXNOoD/KXpJue9aeLRd0sM9uMXfZvzomB0WxVamWb5ue8kA2vVWEmW7EG+A5n3f1kqHKg==", + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", + "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", "dev": true, "requires": { - "html-escaper": "^2.0.0" + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" } }, "jasmine": { "version": "2.8.0", "resolved": "https://registry.npmjs.org/jasmine/-/jasmine-2.8.0.tgz", - "integrity": "sha1-awicChFXax8W3xG4AUbZHU6Lij4=", + "integrity": "sha512-KbdGQTf5jbZgltoHs31XGiChAPumMSY64OZMWLNYnEnMfG5uwGBhffePwuskexjT+/Jea/gU3qAU8344hNohSw==", "dev": true, "requires": { "exit": "^0.1.2", @@ -6505,59 +7296,54 @@ "jasmine-core": { "version": "2.8.0", "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-2.8.0.tgz", - "integrity": "sha1-vMl5rh+f0FcB5F5S5l06XWPxok4=", + "integrity": "sha512-SNkOkS+/jMZvLhuSx1fjhcNWUC/KG6oVyFUGkSBEr9n1axSNduWU8GlI7suaHXr4yxjet6KjrUZxUTE5WzzWwQ==", "dev": true } } }, "jasmine-core": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-3.5.0.tgz", - "integrity": "sha512-nCeAiw37MIMA9w9IXso7bRaLl+c/ef3wnxsoSAlYrzS+Ot0zTG6nU8G/cIfGkqpkjX2wNaIW9RFG0TwIFnG6bA==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-3.6.0.tgz", + "integrity": "sha512-8uQYa7zJN8hq9z+g8z1bqCfdC8eoDAeVnM5sfqs7KHv9/ifoJ500m018fpFc7RDaO6SWCLCXwo/wPSNcdYTgcw==", "dev": true }, "jasmine-spec-reporter": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/jasmine-spec-reporter/-/jasmine-spec-reporter-4.2.1.tgz", - "integrity": "sha512-FZBoZu7VE5nR7Nilzy+Np8KuVIOxF4oXDPDknehCYBDE080EnlPu0afdZNmpGDBRCUBv3mj5qgqCRmk6W/K8vg==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/jasmine-spec-reporter/-/jasmine-spec-reporter-5.0.2.tgz", + "integrity": "sha512-6gP1LbVgJ+d7PKksQBc2H0oDGNRQI3gKUsWlswKaQ2fif9X5gzhQcgM5+kiJGCQVurOG09jqNhk7payggyp5+g==", "dev": true, "requires": { - "colors": "1.1.2" + "colors": "1.4.0" } }, "jasminewd2": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/jasminewd2/-/jasminewd2-2.2.0.tgz", - "integrity": "sha1-43zwsX8ZnM4jvqcbIDk5Uka07E4=", + "integrity": "sha512-Rn0nZe4rfDhzA63Al3ZGh0E+JTmM6ESZYXJGKuqKGZObsAB9fwXPD03GjtIEvJBDOhN94T5MzbwZSqzFHSQPzg==", "dev": true }, "jest-worker": { - "version": "24.9.0", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-24.9.0.tgz", - "integrity": "sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw==", + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", "dev": true, "requires": { + "@types/node": "*", "merge-stream": "^2.0.0", - "supports-color": "^6.1.0" + "supports-color": "^8.0.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==", + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, "requires": { - "has-flag": "^3.0.0" + "has-flag": "^4.0.0" } } } }, - "js-levenshtein": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz", - "integrity": "sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==", - "dev": true - }, "js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -6565,19 +7351,24 @@ "dev": true }, "js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, "requires": { "argparse": "^1.0.7", "esprima": "^4.0.0" } }, + "jsbarcode": { + "version": "3.12.1", + "resolved": "https://registry.npmjs.org/jsbarcode/-/jsbarcode-3.12.1.tgz", + "integrity": "sha512-QZQSqIknC2Rr/YOUyOkCBqsoiBAOTYK+7yNN3JsqfoUtJtkazxNw1dmPpxuv7VVvqW13kA3/mKiLq+s/e3o9hQ==" + }, "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", + "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", "dev": true }, "jsesc": { @@ -6586,49 +7377,64 @@ "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", "dev": true }, + "json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true + }, "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.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, "json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", "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==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", "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=", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", "dev": true }, - "json3": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.3.tgz", - "integrity": "sha512-c7/8mbUsKigAbLkD5B010BK4D9LZm7A1pNItkEwiUZRpIN66exu/e7YQWysGun+TRKaJp8MhemM+VkfWv42aCA==", + "json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", "dev": true }, - "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" - } + "jsonc-parser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.0.0.tgz", + "integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==", + "dev": true }, "jsonfile": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", "dev": true, "requires": { "graceful-fs": "^4.1.6" @@ -6637,218 +7443,126 @@ "jsonparse": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", - "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", "dev": true }, "jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", + "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", "dev": true, "requires": { "assert-plus": "1.0.0", "extsprintf": "1.3.0", - "json-schema": "0.2.3", + "json-schema": "0.4.0", "verror": "1.10.0" } }, "jszip": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.4.0.tgz", - "integrity": "sha512-gZAOYuPl4EhPTXT0GjhI3o+ZAz3su6EhLrKUoAivcKqyqC7laS5JEv4XWZND9BgcDcF83vI85yGbDmDR6UhrIg==", + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz", + "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==", "dev": true, "requires": { "lie": "~3.3.0", "pako": "~1.0.2", "readable-stream": "~2.3.6", - "set-immediate-shim": "~1.0.1" + "setimmediate": "^1.0.5" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, + "readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": 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" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "jwt-decode": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/jwt-decode/-/jwt-decode-2.2.0.tgz", - "integrity": "sha1-fYa9VmefWM5qhHBKZX3TkruoGnk=" + "integrity": "sha512-86GgN2vzfUu7m9Wcj63iUkuDzFNYFVmjeDm2GzWpUk+opB0pEpMsw6ePCMrhYkumz2C1ihqtZzOMAg7FiXcNoQ==" }, "karma": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/karma/-/karma-5.0.8.tgz", - "integrity": "sha512-n0iQ66to2YivGTw202ReC5I33F7/BaiQRBEP6MNRex//3ckblNcEDV5T5CL+2W/wdjPc479IxDkMtBoOZ/4PnA==", + "version": "6.4.4", + "resolved": "https://registry.npmjs.org/karma/-/karma-6.4.4.tgz", + "integrity": "sha512-LrtUxbdvt1gOpo3gxG+VAJlJAEMhbWlM4YrFQgql98FwF7+K8K12LYO4hnDdUkNjeztYrOXEMqgTajSWgmtI/w==", "dev": true, "requires": { + "@colors/colors": "1.5.0", "body-parser": "^1.19.0", "braces": "^3.0.2", - "chokidar": "^3.0.0", - "colors": "^1.4.0", + "chokidar": "^3.5.1", "connect": "^3.7.0", "di": "^0.0.1", "dom-serialize": "^2.2.1", - "flatted": "^2.0.2", - "glob": "^7.1.6", - "graceful-fs": "^4.2.4", - "http-proxy": "^1.18.0", - "isbinaryfile": "^4.0.6", - "lodash": "^4.17.15", - "log4js": "^6.2.1", - "mime": "^2.4.5", + "glob": "^7.1.7", + "graceful-fs": "^4.2.6", + "http-proxy": "^1.18.1", + "isbinaryfile": "^4.0.8", + "lodash": "^4.17.21", + "log4js": "^6.4.1", + "mime": "^2.5.2", "minimatch": "^3.0.4", + "mkdirp": "^0.5.5", "qjobs": "^1.2.0", "range-parser": "^1.2.1", "rimraf": "^3.0.2", - "socket.io": "^2.3.0", + "socket.io": "^4.7.2", "source-map": "^0.6.1", - "tmp": "0.2.1", - "ua-parser-js": "0.7.21", - "yargs": "^15.3.1" + "tmp": "^0.2.1", + "ua-parser-js": "^0.7.30", + "yargs": "^16.1.1" }, "dependencies": { - "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==", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", "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 - }, - "colors": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", - "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", - "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" - } - }, - "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": { - "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.4", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", - "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", - "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", - "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" - } - }, - "mime": { - "version": "2.4.5", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.5.tgz", - "integrity": "sha512-3hQhEUF027BuxZjQA3s7rIv/7VCQPa27hN9u9g87sEkWaKwQPuXOkVKtOeiyUrnWqTDiOs8Ed2rwg733mB0R5w==", - "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==", - "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" + "wrap-ansi": "^7.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 - }, - "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 - }, - "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 - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "dev": true, "requires": { - "glob": "^7.1.3" + "minimist": "^1.2.6" } }, "source-map": { @@ -6857,109 +7571,81 @@ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "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" - } - }, "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "requires": { - "rimraf": "^3.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" - } + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.3.tgz", + "integrity": "sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w==", + "dev": true }, "yargs": { - "version": "15.3.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.3.1.tgz", - "integrity": "sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA==", + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", "dev": true, "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", "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" + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" } }, "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" - } + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true } } }, "karma-chrome-launcher": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-3.1.0.tgz", - "integrity": "sha512-3dPs/n7vgz1rxxtynpzZTvb9y/GIaW8xjAwcIGttLbycqoFtI7yo1NGnQi6oFTherRE+GIhCAHZC4vEqWGhNvg==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-3.1.1.tgz", + "integrity": "sha512-hsIglcq1vtboGPAN+DGCISCFOxW+ZVnIqhDQcCMqqCp+4dmJ0Qpq5QAjkbA0X2L9Mi6OBkHi2Srrbmm7pUKkzQ==", "dev": true, "requires": { "which": "^1.2.1" + }, + "dependencies": { + "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" + } + } } }, "karma-coverage-istanbul-reporter": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-2.1.1.tgz", - "integrity": "sha512-CH8lTi8+kKXGvrhy94+EkEMldLCiUA0xMOiL31vvli9qK0T+qcXJAwWBRVJWnVWxYkTmyWar8lPz63dxX6/z1A==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-3.0.3.tgz", + "integrity": "sha512-wE4VFhG/QZv2Y4CdAYWDbMmcAHeS926ZIji4z+FkB2aF/EposRb6DP6G5ncT/wXhqUfAb/d7kZrNKPonbvsATw==", "dev": true, "requires": { - "istanbul-api": "^2.1.6", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^3.0.6", + "istanbul-reports": "^3.0.2", "minimatch": "^3.0.4" } }, "karma-jasmine": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-2.0.1.tgz", - "integrity": "sha512-iuC0hmr9b+SNn1DaUD2QEYtUxkS1J+bSJSn7ejdEexs7P8EYvA1CWkEdrDQ+8jVH3AgWlCNwjYsT1chjcNW9lA==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-4.0.2.tgz", + "integrity": "sha512-ggi84RMNQffSDmWSyyt4zxzh2CQGwsxvYYsprgyR1j8ikzIduEdOlcLvXjZGwXG/0j41KUXOWsUCBfbEHPWP9g==", "dev": true, "requires": { - "jasmine-core": "^3.3" + "jasmine-core": "^3.6.0" } }, "karma-jasmine-html-reporter": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-1.5.3.tgz", - "integrity": "sha512-ci0VrjuCaFj+9d1tYlTE3KIPUCp0rz874zWWU3JgCMqGIyw5ke+BXWFPOAGAqUdCJcrMwneyvp1zFXA74MiPUA==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-1.7.0.tgz", + "integrity": "sha512-pzum1TL7j90DTE86eFt48/s12hqwQuiD+e5aXx2Dc9wDEn2LfGq6RoAxEZZjFiN0RDSCOnosEKRZWxbQ+iMpQQ==", "dev": true }, "karma-source-map-support": { @@ -6971,6 +7657,15 @@ "source-map-support": "^0.5.5" } }, + "keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "requires": { + "json-buffer": "3.0.1" + } + }, "killable": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz", @@ -6983,65 +7678,100 @@ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", "dev": true }, - "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" - } + "klona": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", + "dev": true }, "less": { - "version": "3.10.3", - "resolved": "https://registry.npmjs.org/less/-/less-3.10.3.tgz", - "integrity": "sha512-vz32vqfgmoxF1h3K4J+yKCtajH0PWmjkIFgbs5d78E/c/e+UQTnI+lWK+1eQRE95PXM2mC3rJlLSSP9VQHnaow==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/less/-/less-4.1.1.tgz", + "integrity": "sha512-w09o8tZFPThBscl5d0Ggp3RcrKIouBoQscnOMgFH3n5V3kN/CXGHNfCkRPtxJk6nKryDXaV9aHLK55RXuH4sAw==", "dev": true, "requires": { - "clone": "^2.1.2", + "copy-anything": "^2.0.1", "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" + "needle": "^2.5.2", + "parse-node-version": "^1.0.1", + "source-map": "~0.6.0", + "tslib": "^1.10.0" }, "dependencies": { + "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, + "optional": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "optional": true + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true, + "optional": true + }, + "semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "optional": 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, "optional": true + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true } } }, "less-loader": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-5.0.0.tgz", - "integrity": "sha512-bquCU89mO/yWLaUq0Clk7qCsKhsF/TZpJUzETRvJa9KSVEL9SO3ovCvdEHISBhrC81OwC8QSVX7E0bzElZj9cg==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-10.0.1.tgz", + "integrity": "sha512-Crln//HpW9M5CbtdfWm3IO66Cvx1WhZQvNybXgfB2dD/6Sav9ppw+IWqs/FQKPBFO4B6X0X28Z0WNznshgwUzA==", "dev": true, "requires": { - "clone": "^2.1.1", - "loader-utils": "^1.1.0", - "pify": "^4.0.1" + "klona": "^2.0.4" } }, "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" } }, "license-webpack-plugin": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-2.1.3.tgz", - "integrity": "sha512-vTSY5r9HOq4sxR2BIxdIXWKI+9n3b+DoQkhKHedB3TdSxTfXUDRxKXdAj5iejR+qNXprXsxvEu9W+zOhgGIkAw==", + "version": "2.3.20", + "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-2.3.20.tgz", + "integrity": "sha512-AHVueg9clOKACSHkhmEI+PCC9x8+qsQVuKECZD3ETxETK5h/PCv5/MUzyG1gm8OMcip/s1tcNxqo9Qb7WhjGsg==", "dev": true, "requires": { "@types/webpack-sources": "^0.1.5", @@ -7057,111 +7787,141 @@ "immediate": "~3.0.5" } }, + "lilconfig": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", + "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", + "dev": true + }, "linebreak": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/linebreak/-/linebreak-1.0.2.tgz", - "integrity": "sha512-bJwSRsJeAmaZYnkcwl5sCQNfSDAhBuXxb6L27tb+qkBRtUQSSTUa5bcgCPD6hFEkRNlpWHfK7nFMmcANU7ZP1w==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/linebreak/-/linebreak-1.1.0.tgz", + "integrity": "sha512-MHp03UImeVhB7XZtjd0E4n6+3xr5Dq/9xI/5FptGk5FrbDR3zagPa2DS6U8ks/3HjbKWG9Q1M2ufOzxV2qLYSQ==", "requires": { "base64-js": "0.0.8", - "brfs": "^2.0.2", - "unicode-trie": "^1.0.0" + "unicode-trie": "^2.0.0" }, "dependencies": { "base64-js": { "version": "0.0.8", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-0.0.8.tgz", - "integrity": "sha1-EQHpVE9KdrG8OybUUsqW16NeeXg=" + "integrity": "sha512-3XSA2cR/h/73EzlXXdU6YNycmYI7+kicTxks4eJg2g39biHR84slg2+des+p7iHYhbRg/udIS4TD53WabcOUkw==" } } }, + "lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, "loader-runner": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", - "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", "dev": true }, "loader-utils": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", - "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", + "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": "^2.0.0", - "json5": "^1.0.1" + "emojis-list": "^3.0.0", + "json5": "^2.1.2" } }, "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" + "p-locate": "^4.1.0" } }, "lodash": { - "version": "4.17.15", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", - "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", "dev": true }, - "lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", "dev": true }, "lodash.memoize": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", + "dev": true + }, + "lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "lodash.truncate": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", + "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==", "dev": true }, "lodash.uniq": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", - "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=", + "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==", "dev": true }, "log-symbols": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", - "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", "dev": true, "requires": { - "chalk": "^2.4.2" + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" } }, "log4js": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/log4js/-/log4js-6.2.1.tgz", - "integrity": "sha512-7n+Oqxxz7VcQJhIlqhcYZBTpbcQ7XsR0MUIfJkx/n3VUjkAS4iUr+4UJlhxf28RvP9PMGQXbgTUhLApnu0XXgA==", + "version": "6.9.1", + "resolved": "https://registry.npmjs.org/log4js/-/log4js-6.9.1.tgz", + "integrity": "sha512-1somDdy9sChrr9/f4UlzhdaGfDR2c/SaD2a4T7qEkG4jTS57/B3qmnjLYePwQ8cqWnUHZI0iAKxMBpCZICiZ2g==", "dev": true, "requires": { - "date-format": "^3.0.0", - "debug": "^4.1.1", - "flatted": "^2.0.1", - "rfdc": "^1.1.4", - "streamroller": "^2.2.4" + "date-format": "^4.0.14", + "debug": "^4.3.4", + "flatted": "^3.2.7", + "rfdc": "^1.3.0", + "streamroller": "^3.1.5" + }, + "dependencies": { + "debug": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", + "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", + "dev": true, + "requires": { + "ms": "^2.1.3" + } + }, + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + } } }, "loglevel": { - "version": "1.6.7", - "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.7.tgz", - "integrity": "sha512-cY2eLFrQSAfVPhCgH1s7JI73tMbg9YC3v3+ZHVW67sBS7UxWzNEk/ZBbSfLykBWHp33dqqtOv82gjhKEi81T/A==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.9.2.tgz", + "integrity": "sha512-HgMmCqIJSAKqo68l0rS2AanEWfkxaZ5wNiEFb5ggm08lDs9Xl2KxBlX3PTcaD2chBM1gXAYf491/M2Rv8Jwayg==", "dev": true }, - "loose-envify": { - "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" - } - }, "lru-cache": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", @@ -7169,39 +7929,30 @@ "dev": true, "requires": { "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==", - "dev": true - } } }, "magic-string": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.4.tgz", - "integrity": "sha512-oycWO9nEVAP2RVPbIoDoA4Y7LFIJ3xRYov93gAyJhZkET1tNuB0u7uWkZS2LpBWTJUWnmau/To8ECWRC+jKNfw==", + "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" } }, "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==", + "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": { - "pify": "^4.0.1", - "semver": "^5.6.0" + "semver": "^6.0.0" }, "dependencies": { "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true } } @@ -7213,73 +7964,46 @@ "dev": true }, "make-fetch-happen": { - "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": "^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", - "mississippi": "^3.0.0", - "node-fetch-npm": "^2.0.2", - "promise-retry": "^1.1.1", - "socks-proxy-agent": "^4.0.0", - "ssri": "^6.0.0" - }, - "dependencies": { - "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", - "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" - } - }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz", + "integrity": "sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg==", + "dev": true, + "requires": { + "agentkeepalive": "^4.1.3", + "cacache": "^15.2.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^6.0.0", + "minipass": "^3.1.3", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^1.3.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.2", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^6.0.0", + "ssri": "^8.0.0" + }, + "dependencies": { + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, "requires": { - "glob": "^7.1.3" + "yallist": "^4.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, - "requires": { - "figgy-pudding": "^3.5.1" - } + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true } } }, - "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 - }, "map-age-cleaner": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", @@ -7292,65 +8016,113 @@ "map-cache": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "integrity": "sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==", "dev": true }, "map-visit": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "integrity": "sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==", "dev": true, "requires": { "object-visit": "^1.0.0" } }, - "md5.js": { - "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", - "safe-buffer": "^5.1.2" - } + "math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==" }, "mdn-data": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz", - "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==", + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==", "dev": true }, "media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==" }, "mem": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", - "integrity": "sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w==", + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/mem/-/mem-8.1.1.tgz", + "integrity": "sha512-qFCFUDs7U3b8mBDPyz5EToEKoAkgCzqquIgi9nkkR9bixxOVOre+09lbuH7+9Kn2NFpm56M3GUWVbU2hQgdACA==", + "dev": true, + "requires": { + "map-age-cleaner": "^0.1.3", + "mimic-fn": "^3.1.0" + }, + "dependencies": { + "mimic-fn": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-3.1.0.tgz", + "integrity": "sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==", + "dev": true + } + } + }, + "memfs": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.5.3.tgz", + "integrity": "sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==", "dev": true, "requires": { - "map-age-cleaner": "^0.1.1", - "mimic-fn": "^2.0.0", - "p-is-promise": "^2.0.0" + "fs-monkey": "^1.0.4" } }, "memory-fs": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", - "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", + "integrity": "sha512-cda4JKCxReDXFXRqOHPQscuIYg1PvxbE2S2GP45rnwfEK+vZaXC8C1OFvdHIbgw0DLzowXGVoxLaAmlgRy14GQ==", "dev": true, "requires": { "errno": "^0.1.3", "readable-stream": "^2.0.1" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, + "readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": 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" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==" }, "merge-source-map": { "version": "1.1.0", @@ -7375,172 +8147,94 @@ "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", "dev": true }, + "merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true + }, "methods": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==" }, "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", "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" + "braces": "^3.0.3", + "picomatch": "^2.3.1" + } + }, + "mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", + "dev": true + }, + "mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" + }, + "mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "requires": { + "mime-db": "1.52.0" + } + }, + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true + }, + "mini-css-extract-plugin": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.4.2.tgz", + "integrity": "sha512-ZmqShkn79D36uerdED+9qdo1ZYG8C1YsWvXu0UMJxurZnSdgz7gQKO2EGv8T55MhDqG3DYmGtizZNpM/UbTlcA==", + "dev": true, + "requires": { + "schema-utils": "^3.1.0" }, "dependencies": { - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "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" - } - } + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" } }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "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 + }, + "schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", "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" - } - } - } - }, - "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" - } - } - } - }, - "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" - } - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" - }, - "mime-db": { - "version": "1.43.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.43.0.tgz", - "integrity": "sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ==" - }, - "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==", - "requires": { - "mime-db": "1.43.0" - } - }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true - }, - "mini-css-extract-plugin": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.8.0.tgz", - "integrity": "sha512-MNpRGbNA52q6U92i0qbVpQNsgk7LExy41MdAlG84FeytfDOtRIf/mCHdEgG8rpTKOaNKiqUnZdlptF469hxqOw==", - "dev": true, - "requires": { - "loader-utils": "^1.1.0", - "normalize-url": "1.9.1", - "schema-utils": "^1.0.0", - "webpack-sources": "^1.1.0" - }, - "dependencies": { - "normalize-url": { - "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", - "query-string": "^4.1.0", - "sort-keys": "^1.0.0" + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" } } } @@ -7551,12 +8245,6 @@ "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", "dev": true }, - "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 - }, "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", @@ -7567,17 +8255,26 @@ } }, "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true }, "minipass": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.1.tgz", - "integrity": "sha512-UFqVihv6PQgwj8/yTGvl9kPz7xIAY+R5z6XYjRInD3Gk3qx6QGSD6zEcpeG4Dy/lQnv1J6zv8ejV90hyYIKf3w==", + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dev": true, "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": { @@ -7589,6 +8286,18 @@ "minipass": "^3.0.0" } }, + "minipass-fetch": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-1.4.1.tgz", + "integrity": "sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw==", + "dev": true, + "requires": { + "encoding": "^0.1.12", + "minipass": "^3.1.0", + "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", @@ -7598,60 +8307,52 @@ "minipass": "^3.0.0" } }, + "minipass-json-stream": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.2.tgz", + "integrity": "sha512-myxeeTm57lYs8pH2nxPzmEEg8DGIgW+9mv6D4JZD2pa81I/OBjeU7PtICXV6c9eRGTA5JMDsuIPUZRCyBMYNhg==", + "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==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "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, "requires": { "minipass": "^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==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", "dev": true, "requires": { - "minipass": "^2.9.0" + "minipass": "^3.0.0", + "yallist": "^4.0.0" }, "dependencies": { - "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" - } - }, "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "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", - "end-of-stream": "^1.1.0", - "flush-write-stream": "^1.0.0", - "from2": "^2.1.0", - "parallel-transform": "^1.1.0", - "pump": "^3.0.0", - "pumpify": "^1.3.3", - "stream-each": "^1.1.0", - "through2": "^2.0.0" - } - }, "mixin-deep": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", @@ -7660,57 +8361,18 @@ "requires": { "for-in": "^1.0.2", "is-extendable": "^1.0.1" - }, - "dependencies": { - "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" - } - } } }, "mkdirp": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", - "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true }, "moment": { - "version": "2.25.3", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.25.3.tgz", - "integrity": "sha512-PuYv0PHxZvzc15Sp8ybUCoQ+xpyPWvjOuK72a5ovzp2LI32rJXOiIfyoFoYvG3s6EwwrdkMyWuRiEHSZRLJNdg==" - }, - "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", - "fs-write-stream-atomic": "^1.0.8", - "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==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } + "version": "2.30.1", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.30.1.tgz", + "integrity": "sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==" }, "ms": { "version": "2.1.2", @@ -7731,7 +8393,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=", + "integrity": "sha512-cnAsSVxIDsYt0v7HmC0hWZFwwXSh+E6PgCrREDuN/EsjgLwA5XRmlMHhSiDPrt6HxY1gTivEa/Zh7GtODoLevQ==", "dev": true }, "mute-stream": { @@ -7741,12 +8403,18 @@ "dev": true }, "nan": { - "version": "2.14.1", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.1.tgz", - "integrity": "sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==", + "version": "2.23.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.23.0.tgz", + "integrity": "sha512-1UxuyYGdoQHcGg87Lkqm3FzefucTa0NAiOcuRsDmysep3c1LVCRK2krrUDafMWtjSG04htvAmvg96+SDknOmgQ==", "dev": true, "optional": true }, + "nanoid": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "dev": true + }, "nanomatch": { "version": "1.2.13", "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", @@ -7766,21 +8434,57 @@ "to-regex": "^3.0.1" } }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "needle": { + "version": "2.9.1", + "resolved": "https://registry.npmjs.org/needle/-/needle-2.9.1.tgz", + "integrity": "sha512-6R9fqJ5Zcmf+uYaFgdIHmLwNldn5HbK8L5ybn7Uz+ylX/rnOsSp1AHcvQSrCaFN+qNM1wpymHqD7mVasEOlHGQ==", + "dev": true, + "optional": true, + "requires": { + "debug": "^3.2.6", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "optional": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, "negotiator": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", - "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" }, "neo-async": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", - "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==", + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", "dev": true }, - "next-tick": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", - "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" + "nice-napi": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nice-napi/-/nice-napi-1.0.2.tgz", + "integrity": "sha512-px/KnJAJZf5RuBGcfD+Sp2pAKq0ytz8j+1NehvgIGFkvtvFrDM3T8E4x/JJODXK9WZow8RRGrbA9QQ3hs+pDhA==", + "dev": true, + "optional": true, + "requires": { + "node-addon-api": "^3.0.0", + "node-gyp-build": "^4.2.2" + } }, "nice-try": { "version": "1.0.5", @@ -7788,92 +8492,57 @@ "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", "dev": true }, - "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==", + "node-addon-api": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", + "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==", "dev": true, - "requires": { - "encoding": "^0.1.11", - "json-parse-better-errors": "^1.0.0", - "safe-buffer": "^5.1.1" - } + "optional": true }, "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==", + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz", + "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==", "dev": true }, - "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", - "buffer": "^4.3.0", - "console-browserify": "^1.1.0", - "constants-browserify": "^1.0.0", - "crypto-browserify": "^3.11.0", - "domain-browser": "^1.1.1", - "events": "^3.0.0", - "https-browserify": "^1.0.0", - "os-browserify": "^0.3.0", - "path-browserify": "0.0.1", - "process": "^0.11.10", - "punycode": "^1.2.4", - "querystring-es3": "^0.2.0", - "readable-stream": "^2.3.3", - "stream-browserify": "^2.0.1", - "stream-http": "^2.7.2", - "string_decoder": "^1.0.0", - "timers-browserify": "^2.0.4", - "tty-browserify": "0.0.0", - "url": "^0.11.0", - "util": "^0.11.0", - "vm-browserify": "^1.0.1" - }, - "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true - } + "node-gyp": { + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-8.4.1.tgz", + "integrity": "sha512-olTJRgUtAb/hOXG0E93wZDs5YiJlgbXxTwQAFHyNlRsXQnYzUaF2aGgujZbw+hR8aF4ZG/rST57bWMWD16jr9w==", + "dev": true, + "requires": { + "env-paths": "^2.2.0", + "glob": "^7.1.4", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^9.1.0", + "nopt": "^5.0.0", + "npmlog": "^6.0.0", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^2.0.2" } }, + "node-gyp-build": { + "version": "4.8.4", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.4.tgz", + "integrity": "sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==", + "dev": true, + "optional": true + }, "node-releases": { - "version": "1.1.53", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.53.tgz", - "integrity": "sha512-wp8zyQVwef2hpZ/dJH7SfSrIPD6YoJz6BDQDpGEkcA0s3LpAQoxBIYmfIq6QAhC1DhwsyCgTaTTcONwX8qzCuQ==", + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", + "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==", "dev": true }, - "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==", + "nopt": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", + "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", "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" - }, - "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 - } + "abbrev": "1" } }, "normalize-path": { @@ -7885,24 +8554,33 @@ "normalize-range": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", "dev": true }, "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==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", + "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", "dev": true }, "npm-bundled": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.1.tgz", - "integrity": "sha512-gqkfgGePhTpAEgUsGEgcq1rqPXA+tv/aVBlgEzfXwA1yiUJF7xtEt3CtVwOjNYQOVknDk0F20w58Fnm3EtG0fA==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz", + "integrity": "sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==", "dev": true, "requires": { "npm-normalize-package-bin": "^1.0.1" } }, + "npm-install-checks": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-4.0.0.tgz", + "integrity": "sha512-09OmyDkNLYwqKPOnbI8exiOZU2GVVmQp7tgez2BPi5OZC8M82elDAps7sxC4l//uSUtotWqoEIDwjRvWH4qz8w==", + "dev": true, + "requires": { + "semver": "^7.1.1" + } + }, "npm-normalize-package-bin": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", @@ -7910,112 +8588,96 @@ "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==", + "version": "8.1.5", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.1.5.tgz", + "integrity": "sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q==", "dev": true, "requires": { - "hosted-git-info": "^2.7.1", - "osenv": "^0.1.5", - "semver": "^5.6.0", + "hosted-git-info": "^4.0.1", + "semver": "^7.3.4", "validate-npm-package-name": "^3.0.0" - }, - "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 - } } }, "npm-packlist": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.8.tgz", - "integrity": "sha512-5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-3.0.0.tgz", + "integrity": "sha512-L/cbzmutAwII5glUcf2DBRNY/d0TFd4e/FnaZigJV6JD85RHZXJFGwCndjMWiiViiWSsWt3tiOLpI3ByTnIdFQ==", "dev": true, "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1", + "glob": "^7.1.6", + "ignore-walk": "^4.0.1", + "npm-bundled": "^1.1.1", "npm-normalize-package-bin": "^1.0.1" } }, "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==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-6.1.1.tgz", + "integrity": "sha512-dBsdBtORT84S8V8UTad1WlUyKIY9iMsAmqxHbLdeEeBNMLQDlDWWra3wYUx9EBEIiG/YwAy0XyNHDd2goAsfuA==", "dev": true, "requires": { - "figgy-pudding": "^3.5.1", - "npm-package-arg": "^6.0.0", - "semver": "^5.4.1" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "npm-install-checks": "^4.0.0", + "npm-normalize-package-bin": "^1.0.1", + "npm-package-arg": "^8.1.2", + "semver": "^7.3.4" } }, "npm-registry-fetch": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-4.0.3.tgz", - "integrity": "sha512-WGvUx0lkKFhu9MbiGFuT9nG2NpfQ+4dCJwRwwtK2HK5izJEvwDxMeUyqbuMS7N/OkpVCqDorV6rO5E4V9F8lJw==", + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-11.0.0.tgz", + "integrity": "sha512-jmlgSxoDNuhAtxUIG6pVwwtz840i994dL14FoNVZisrmZW5kWd63IUTNv1m/hyRSGSqWjCUp/YZlS1BJyNp9XA==", "dev": true, "requires": { - "JSONStream": "^1.3.4", - "bluebird": "^3.5.1", - "figgy-pudding": "^3.4.1", - "lru-cache": "^5.1.1", - "make-fetch-happen": "^5.0.0", - "npm-package-arg": "^6.1.0", - "safe-buffer": "^5.2.0" - }, - "dependencies": { - "safe-buffer": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz", - "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==", - "dev": true - } + "make-fetch-happen": "^9.0.1", + "minipass": "^3.1.3", + "minipass-fetch": "^1.3.0", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.0.0", + "npm-package-arg": "^8.0.0" } }, "npm-run-path": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==", "dev": true, "requires": { "path-key": "^2.0.0" + }, + "dependencies": { + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "dev": true + } + } + }, + "npmlog": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", + "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", + "dev": true, + "requires": { + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.3", + "set-blocking": "^2.0.0" } }, "nth-check": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", - "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", "dev": true, "requires": { - "boolbase": "~1.0.0" + "boolbase": "^1.0.0" } }, "num2fraction": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", - "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", - "dev": true - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "integrity": "sha512-Y1wZESM7VUThYY+4W+X4ySH2maqcA+p7UR+w8VWNWVAd6lwuXXWz/w/Cz43J/dI2I+PS6wD5N+bJUF+gjWvIqg==", "dev": true }, "oauth-sign": { @@ -8027,19 +8689,13 @@ "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true - }, - "object-component": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/object-component/-/object-component-0.0.3.tgz", - "integrity": "sha1-8MaapQ78lbhmwYb0AKM3acsvEpE=", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", "dev": true }, "object-copy": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "integrity": "sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==", "dev": true, "requires": { "copy-descriptor": "^0.1.0", @@ -8050,16 +8706,26 @@ "define-property": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", "dev": true, "requires": { "is-descriptor": "^0.1.0" } }, + "is-descriptor": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.7.tgz", + "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + } + }, "kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dev": true, "requires": { "is-buffer": "^1.1.5" @@ -8068,14 +8734,18 @@ } }, "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==" + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==" }, "object-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.0.2.tgz", - "integrity": "sha512-Epah+btZd5wrrfjkJZq1AOB9O6OxUQto45hzFd7lXGrpHPGE0W1k+426yrZV+k6NJOzLNNW/nVsmZdIWsAqoOQ==" + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.6.tgz", + "integrity": "sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==", + "requires": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1" + } }, "object-keys": { "version": "1.1.1", @@ -8085,54 +8755,34 @@ "object-visit": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "integrity": "sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==", "dev": true, "requires": { "isobject": "^3.0.0" } }, "object.assign": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", - "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", + "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", "requires": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "object-keys": "^1.0.11" - } - }, - "object.getownpropertydescriptors": { - "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" + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0", + "has-symbols": "^1.1.0", + "object-keys": "^1.1.1" } }, "object.pick": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "integrity": "sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==", "dev": true, "requires": { "isobject": "^3.0.1" } }, - "object.values": { - "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", - "function-bind": "^1.1.1", - "has": "^1.0.3" - } - }, "obuf": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", @@ -8140,44 +8790,46 @@ "dev": true }, "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", "requires": { "ee-first": "1.1.1" } }, "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==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.1.0.tgz", + "integrity": "sha512-737ZY3yNnXy37FHkQxPzt4UZ2UWPWiCZWLvFZ4fu5cueciegX0zGPnrlY6bwRg4FdQOe9YU8MkmJwGhoMybl8A==", "dev": true }, "once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "dev": true, "requires": { "wrappy": "1" } }, "onetime": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz", - "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", "dev": true, "requires": { "mimic-fn": "^2.1.0" } }, "open": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/open/-/open-7.0.0.tgz", - "integrity": "sha512-K6EKzYqnwQzk+/dzJAQSBORub3xlBTxMz+ntpZpH/LyCa1o6KjXhuN+2npAaI9jaSmU3R1Q8NWf4KUWcyytGsQ==", + "version": "8.2.1", + "resolved": "https://registry.npmjs.org/open/-/open-8.2.1.tgz", + "integrity": "sha512-rXILpcQlkF/QuFez2BJDf3GsqpjGKbkUUToAIGo9A0Q6ZkoSGogZJulrUdwRkrAsoQvoZsrjCYt8+zblOk7JQQ==", "dev": true, "requires": { - "is-wsl": "^2.1.0" + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" } }, "opn": { @@ -8192,144 +8844,91 @@ "is-wsl": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "integrity": "sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==", "dev": true } } }, "optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dev": true, "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" } }, "ora": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/ora/-/ora-4.0.2.tgz", - "integrity": "sha512-YUOZbamht5mfLxPmk4M35CD/5DuOkAacxlEUbStVXpBAt4fyhBf+vZHI/HRkI++QUp3sNoeA2Gw4C+hi4eGSig==", + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", "dev": true, "requires": { - "chalk": "^2.4.2", + "bl": "^4.1.0", + "chalk": "^4.1.0", "cli-cursor": "^3.1.0", - "cli-spinners": "^2.2.0", + "cli-spinners": "^2.5.0", "is-interactive": "^1.0.0", - "log-symbols": "^3.0.0", - "strip-ansi": "^5.2.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", "wcwidth": "^1.0.1" - }, - "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 - }, - "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" - } - } - } - }, - "original": { - "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" - } - }, - "os-browserify": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", - "dev": true - }, - "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": { - "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" } }, "os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", "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-defer": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", - "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", + "integrity": "sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw==", "dev": true }, "p-finally": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", - "dev": true - }, - "p-is-promise": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.1.0.tgz", - "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==", + "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==", "dev": true }, "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, "requires": { - "p-try": "^1.0.0" + "yocto-queue": "^0.1.0" } }, "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "requires": { - "p-limit": "^1.1.0" + "p-limit": "^2.2.0" + }, + "dependencies": { + "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-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==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", "dev": true, "requires": { "aggregate-error": "^3.0.0" @@ -8345,111 +8944,35 @@ } }, "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" }, "pacote": { - "version": "9.5.8", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-9.5.8.tgz", - "integrity": "sha512-0Tl8Oi/K0Lo4MZmH0/6IsT3gpGf9eEAznLXEQPKgPq7FscnbUOyopnVpwXlnQdIbCUaojWy1Wd7VMyqfVsRrIw==", - "dev": true, - "requires": { - "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", + "version": "12.0.2", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-12.0.2.tgz", + "integrity": "sha512-Ar3mhjcxhMzk+OVZ8pbnXdb0l8+pimvlsqBGRNkble2NVgyqOGE3yrCGi/lAYq7E7NRDMz89R1Wx5HIMCGgeYg==", + "dev": true, + "requires": { + "@npmcli/git": "^2.1.0", + "@npmcli/installed-package-contents": "^1.0.6", + "@npmcli/promise-spawn": "^1.2.0", + "@npmcli/run-script": "^2.0.0", + "cacache": "^15.0.5", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", "infer-owner": "^1.0.4", - "lru-cache": "^5.1.1", - "make-fetch-happen": "^5.0.0", - "minimatch": "^3.0.4", - "minipass": "^2.3.5", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "normalize-package-data": "^2.4.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", - "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": { - "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", - "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" - } - }, - "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" - } - }, - "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 - }, - "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" - } - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - } + "minipass": "^3.1.3", + "mkdirp": "^1.0.3", + "npm-package-arg": "^8.0.1", + "npm-packlist": "^3.0.0", + "npm-pick-manifest": "^6.0.0", + "npm-registry-fetch": "^11.0.0", + "promise-retry": "^2.0.1", + "read-package-json-fast": "^2.0.1", + "rimraf": "^3.0.2", + "ssri": "^8.0.1", + "tar": "^6.1.0" } }, "pako": { @@ -8458,63 +8981,89 @@ "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", "dev": true }, - "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", - "readable-stream": "^2.1.5" - } - }, - "parse-asn1": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz", - "integrity": "sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ==", + "parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", "dev": true, "requires": { - "asn1.js": "^4.0.0", - "browserify-aes": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" + "callsites": "^3.0.0" } }, "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", "dev": true, "requires": { + "@babel/code-frame": "^7.0.0", "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" } }, - "parse5": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz", - "integrity": "sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==", + "parse-node-version": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", + "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", "dev": true }, - "parseqs": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.5.tgz", - "integrity": "sha1-1SCKNzjkZ2bikbouoXNoSSGouJ0=", + "parse5": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz", + "integrity": "sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==", + "optional": true + }, + "parse5-html-rewriting-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-6.0.1.tgz", + "integrity": "sha512-vwLQzynJVEfUlURxgnf51yAJDQTtVpNyGD8tKi2Za7m+akukNHxCcUQMAa/mUGLhCeicFdpy7Tlvj8ZNKadprg==", + "dev": true, + "requires": { + "parse5": "^6.0.1", + "parse5-sax-parser": "^6.0.1" + }, + "dependencies": { + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + } + } + }, + "parse5-htmlparser2-tree-adapter": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", + "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==", "dev": true, "requires": { - "better-assert": "~1.0.0" + "parse5": "^6.0.1" + }, + "dependencies": { + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + } } }, - "parseuri": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.5.tgz", - "integrity": "sha1-gCBKUNTbt3m/3G6+J3jZDkvOMgo=", + "parse5-sax-parser": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-sax-parser/-/parse5-sax-parser-6.0.1.tgz", + "integrity": "sha512-kXX+5S81lgESA0LsDuGjAlBybImAChYRMT+/uKCEXFBFOeEhS52qUCydGhU3qLRD8D9DVjaUo821WK7DM4iCeg==", "dev": true, "requires": { - "better-assert": "~1.0.0" + "parse5": "^6.0.1" + }, + "dependencies": { + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + } } }, "parseurl": { @@ -8525,113 +9074,84 @@ "pascalcase": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", - "dev": true - }, - "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==", + "integrity": "sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==", "dev": true }, "path-dirname": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", + "integrity": "sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q==", "dev": true }, "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 + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" }, "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=", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "dev": true }, "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=", + "integrity": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==", "dev": true }, "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "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==" + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true }, "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=" + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==" }, "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 - } - } - }, - "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, - "requires": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true }, "pdfkit": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/pdfkit/-/pdfkit-0.11.0.tgz", - "integrity": "sha512-1s9gaumXkYxcVF1iRtSmLiISF2r4nHtsTgpwXiK8Swe+xwk/1pm8FJjYqN7L3x13NsWnGyUFntWcO8vfqq+wwA==", + "version": "0.12.3", + "resolved": "https://registry.npmjs.org/pdfkit/-/pdfkit-0.12.3.tgz", + "integrity": "sha512-+qDLgm2yq6WOKcxTb43lDeo3EtMIDQs0CK1RNqhHC9iT6u0KOmgwAClkYh9xFw2ATbmUZzt4f7KMwDCOfPDluA==", "requires": { - "crypto-js": "^3.1.9-1", - "fontkit": "^1.8.0", + "crypto-js": "^4.0.0", + "fontkit": "^1.8.1", "linebreak": "^1.0.2", "png-js": "^1.0.0" } }, "pdfmake": { - "version": "0.1.65", - "resolved": "https://registry.npmjs.org/pdfmake/-/pdfmake-0.1.65.tgz", - "integrity": "sha512-MgzRyiKSP3IEUH7vm4oj3lpikmk5oCD9kYxiJM6Z2Xf6CP9EcikeSDey2rGd4WVvn79Y0TGqz2+to8FtWP8MrA==", + "version": "0.1.72", + "resolved": "https://registry.npmjs.org/pdfmake/-/pdfmake-0.1.72.tgz", + "integrity": "sha512-xZrPS+Safjf1I8ZYtMoXX83E6C6Pd1zFwa168yNTeeJWHclqf1z9DoYajjlY2uviN7gGyxwVZeou39uSk1oh1g==", "requires": { - "iconv-lite": "^0.5.1", + "iconv-lite": "^0.6.2", "linebreak": "^1.0.2", - "pdfkit": "^0.11.0", - "svg-to-pdfkit": "^0.1.8" + "pdfkit": "^0.12.0", + "svg-to-pdfkit": "^0.1.8", + "xmldoc": "^1.1.2" }, "dependencies": { "iconv-lite": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.5.1.tgz", - "integrity": "sha512-ONHr16SQvKZNSqjQT9gy5z24Jw+uqfO02/ngBSBoqChZ+W8qXX7GPRa1RoUnzGADw8K63R1BXUMzarCVQBpY8Q==", + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", "requires": { - "safer-buffer": ">= 2.1.2 < 3" + "safer-buffer": ">= 2.1.2 < 3.0.0" } } } @@ -8639,110 +9159,74 @@ "pdfmake-unicode": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/pdfmake-unicode/-/pdfmake-unicode-0.0.1.tgz", - "integrity": "sha1-cqayfxnNNHjb2FvwJ6APou58HHQ=", + "integrity": "sha512-M4cdNU64+popJN8oELM5Qu3LrNH3Qa4xGRmiBLcWTb79ff1QJyhy5vtidmOHj3ArwFK3ARu3l1Tga6WhrjfbKg==", "requires": { "pdfmake": "^0.1.27" } }, "pdfmake-wrapper": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pdfmake-wrapper/-/pdfmake-wrapper-2.0.0.tgz", - "integrity": "sha512-AIID6yFlWsTQLXVWa/DhlNabnop0Fb725QkJTKkc+YJrbm0tRXz///tPRFWZl0HWuyFzMHuvJdXM3Kg35VfNSg==" + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/pdfmake-wrapper/-/pdfmake-wrapper-2.1.3.tgz", + "integrity": "sha512-O5gVsvy1Ka9IZMd/fX5fPtRcEVznat33iTz6my/aFf05lI3PLDCAFdIduc64PGBf9iBVFF8L5nlIRVwLhAgFJw==" }, "performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", + "dev": true + }, + "picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", "dev": true }, "picomatch": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", - "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", "dev": true }, "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", "dev": true }, "pinkie": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "integrity": "sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==", "dev": true }, "pinkie-promise": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "integrity": "sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==", "dev": true, "requires": { "pinkie": "^2.0.0" } }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "piscina": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/piscina/-/piscina-3.1.0.tgz", + "integrity": "sha512-KTW4sjsCD34MHrUbx9eAAbuUSpVj407hQSgk/6Epkg0pbRBmv4a3UX7Sr8wxm9xYqQLnsN4mFOjqGDzHAdgKQg==", "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==", - "dev": true, - "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==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "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, - "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==", - "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 - } + "eventemitter-asyncresource": "^1.0.0", + "hdr-histogram-js": "^2.0.1", + "hdr-histogram-percentiles-obj": "^3.0.0", + "nice-napi": "^1.0.2" } }, - "pkg-up": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz", - "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=", + "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": "^2.1.0" + "find-up": "^4.0.0" } }, "png-js": { @@ -8750,82 +9234,128 @@ "resolved": "https://registry.npmjs.org/png-js/-/png-js-1.0.0.tgz", "integrity": "sha512-k+YsbhpA9e+EFfKjTCH3VW6aoKlyNYI6NYdTfDL4CIvFnvsuO84ttonmZE7rc+v23SLTH8XX+5w/Ak9v0xGY4g==" }, + "pngjs": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-5.0.0.tgz", + "integrity": "sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==" + }, "portfinder": { - "version": "1.0.25", - "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.25.tgz", - "integrity": "sha512-6ElJnHBbxVA1XSLgBp7G1FiCkQdlqGzuF7DswL5tcea+E8UpuvPU7beVAjjRwCioTS9ZluNbu+ZyRvgTsmqEBg==", + "version": "1.0.37", + "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.37.tgz", + "integrity": "sha512-yuGIEjDAYnnOex9ddMnKZEMFE0CcGo6zbfzDklkmT1m5z734ss6JMzN9rNB3+RR7iS+F10D4/BVIaXOyh8PQKw==", "dev": true, "requires": { - "async": "^2.6.2", - "debug": "^3.1.1", - "mkdirp": "^0.5.1" + "async": "^3.2.6", + "debug": "^4.3.6" }, "dependencies": { "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", + "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", "dev": true, "requires": { - "ms": "^2.1.1" + "ms": "^2.1.3" } + }, + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "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=", + "integrity": "sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==", "dev": true }, + "possible-typed-array-names": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", + "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==" + }, "postcss": { - "version": "7.0.21", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.21.tgz", - "integrity": "sha512-uIFtJElxJo29QC753JzhidoAhvp/e/Exezkdhfmt8AymWT6/5B7W1WmponYWkHk2eg6sONyTch0A3nkMPun3SQ==", + "version": "8.3.6", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.6.tgz", + "integrity": "sha512-wG1cc/JhRgdqB6WHEuyLTedf3KIRuD0hG6ldkFEZNCjRxiC+3i6kkWUUbiJQayP28iwG35cEmAbe98585BYV0A==", "dev": true, "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" + "colorette": "^1.2.2", + "nanoid": "^3.1.23", + "source-map-js": "^0.6.2" + } + }, + "postcss-attribute-case-insensitive": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-4.0.2.tgz", + "integrity": "sha512-clkFxk/9pcdb4Vkn0hAHq3YnxBQ2p0CGD1dy24jN+reBck+EWxMbxSUqN4Yj7t0w8csl87K6p0gxBe1utkJsYA==", + "dev": true, + "requires": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^6.0.2" }, "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", "dev": true }, - "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==", + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", "dev": true, "requires": { - "has-flag": "^3.0.0" + "picocolors": "^0.2.1", + "source-map": "^0.6.1" } + }, + "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 } } }, "postcss-calc": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-7.0.2.tgz", - "integrity": "sha512-rofZFHUg6ZIrvRwPeFktv06GdbDYLcGqh9EwiMutZg+a0oePCCw1zHOEiji6LCpyRcjTREtPASuUqeAvYlEVvQ==", + "version": "8.2.4", + "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-8.2.4.tgz", + "integrity": "sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.9", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-color-functional-notation": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-2.0.1.tgz", + "integrity": "sha512-ZBARCypjEDofW4P6IdPVTLhDNXPRn8T2s1zHbZidW6rPaaZvcnCS2soYFIQJrMZSxiePJ2XIYTlcb2ztr/eT2g==", "dev": true, "requires": { - "postcss": "^7.0.27", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.0.2" + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" }, "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", "dev": true, "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" + "picocolors": "^0.2.1", + "source-map": "^0.6.1" } }, "source-map": { @@ -8833,842 +9363,1508 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true - }, - "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" - } } } }, - "postcss-colormin": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-4.0.3.tgz", - "integrity": "sha512-WyQFAdDZpExQh32j0U0feWisZ0dmOtPl44qYmJKkq9xFWY3p+4qnRzCHeNrkeRhwPHz9bQ3mo0/yVkaply0MNw==", + "postcss-color-gray": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-color-gray/-/postcss-color-gray-5.0.0.tgz", + "integrity": "sha512-q6BuRnAGKM/ZRpfDascZlIZPjvwsRye7UDNalqVz3s7GDxMtqPY6+Q871liNxsonUw8oC61OG+PSaysYpl1bnw==", "dev": true, "requires": { - "browserslist": "^4.0.0", - "color": "^3.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.5", + "postcss-values-parser": "^2.0.0" }, "dependencies": { - "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==", + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 } } }, - "postcss-convert-values": { - "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==", + "postcss-color-hex-alpha": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-5.0.3.tgz", + "integrity": "sha512-PF4GDel8q3kkreVXKLAGNpHKilXsZ6xuu+mOQMHWHLPNyjiUBOr75sp5ZKJfmv1MCus5/DWUGcK9hm6qHEnXYw==", "dev": true, "requires": { - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" + "postcss": "^7.0.14", + "postcss-values-parser": "^2.0.1" }, "dependencies": { - "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==", + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 } } }, - "postcss-discard-comments": { - "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" - } - }, - "postcss-discard-duplicates": { - "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" - } - }, - "postcss-discard-empty": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz", - "integrity": "sha512-B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w==", + "postcss-color-mod-function": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/postcss-color-mod-function/-/postcss-color-mod-function-3.0.3.tgz", + "integrity": "sha512-YP4VG+xufxaVtzV6ZmhEtc+/aTXH3d0JLpnYfxqTvwZPbJhWqp8bSY3nfNzNRFLgB4XSaBA82OE4VjOOKpCdVQ==", "dev": true, "requires": { - "postcss": "^7.0.0" + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } } }, - "postcss-discard-overridden": { + "postcss-color-rebeccapurple": { "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" - } - }, - "postcss-import": { - "version": "12.0.1", - "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-12.0.1.tgz", - "integrity": "sha512-3Gti33dmCjyKBgimqGxL3vcV8w9+bsHwO5UrBawp796+jdardbcFl4RP5w/76BwNL7aGzpKstIfF9I+kdE8pTw==", + "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-4.0.1.tgz", + "integrity": "sha512-aAe3OhkS6qJXBbqzvZth2Au4V3KieR5sRQ4ptb2b2O8wgvB3SJBsdG+jsn2BZbbwekDG8nTfcCNKcSfe/lEy8g==", "dev": true, "requires": { - "postcss": "^7.0.1", - "postcss-value-parser": "^3.2.3", - "read-cache": "^1.0.0", - "resolve": "^1.1.7" + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" }, "dependencies": { - "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==", + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 } } }, - "postcss-load-config": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-2.1.0.tgz", - "integrity": "sha512-4pV3JJVPLd5+RueiVVB+gFOAa7GWc25XQcMp86Zexzke69mKf6Nx9LRcQywdz7yZI9n1udOxmLuAwTBypypF8Q==", + "postcss-colormin": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-5.3.1.tgz", + "integrity": "sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ==", "dev": true, "requires": { - "cosmiconfig": "^5.0.0", - "import-cwd": "^2.0.0" + "browserslist": "^4.21.4", + "caniuse-api": "^3.0.0", + "colord": "^2.9.1", + "postcss-value-parser": "^4.2.0" } }, - "postcss-loader": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-3.0.0.tgz", - "integrity": "sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA==", + "postcss-convert-values": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-5.1.3.tgz", + "integrity": "sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA==", "dev": true, "requires": { - "loader-utils": "^1.1.0", - "postcss": "^7.0.0", - "postcss-load-config": "^2.0.0", - "schema-utils": "^1.0.0" + "browserslist": "^4.21.4", + "postcss-value-parser": "^4.2.0" } }, - "postcss-merge-longhand": { - "version": "4.0.11", - "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz", - "integrity": "sha512-alx/zmoeXvJjp7L4mxEMjh8lxVlDFX1gqWHzaaQewwMZiVhLo42TEClKaeHbRf6J7j82ZOdTJ808RtN0ZOZwvw==", + "postcss-custom-media": { + "version": "7.0.8", + "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-7.0.8.tgz", + "integrity": "sha512-c9s5iX0Ge15o00HKbuRuTqNndsJUbaXdiNsksnVH8H4gdc+zbLzr/UasOwNG6CTDpLFekVY4672eWdiiWu2GUg==", "dev": true, "requires": { - "css-color-names": "0.0.4", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0", - "stylehacks": "^4.0.0" + "postcss": "^7.0.14" }, "dependencies": { - "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==", + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 } } }, - "postcss-merge-rules": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-4.0.3.tgz", - "integrity": "sha512-U7e3r1SbvYzO0Jr3UT/zKBVgYYyhAz0aitvGIYOYK5CPmkNih+WDSsS5tvPrJ8YMQYlEMvsZIiqmn7HdFUaeEQ==", + "postcss-custom-properties": { + "version": "8.0.11", + "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-8.0.11.tgz", + "integrity": "sha512-nm+o0eLdYqdnJ5abAJeXp4CEU1c1k+eB2yMCvhgzsds/e0umabFrN6HoTy/8Q4K5ilxERdl/JD1LO5ANoYBeMA==", "dev": true, "requires": { - "browserslist": "^4.0.0", - "caniuse-api": "^3.0.0", - "cssnano-util-same-parent": "^4.0.0", - "postcss": "^7.0.0", - "postcss-selector-parser": "^3.0.0", - "vendors": "^1.0.0" + "postcss": "^7.0.17", + "postcss-values-parser": "^2.0.1" }, "dependencies": { - "postcss-selector-parser": { - "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==", + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", "dev": true, "requires": { - "dot-prop": "^5.2.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" + "picocolors": "^0.2.1", + "source-map": "^0.6.1" } + }, + "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 } } }, - "postcss-minify-font-values": { - "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==", + "postcss-custom-selectors": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-5.1.2.tgz", + "integrity": "sha512-DSGDhqinCqXqlS4R7KGxL1OSycd1lydugJ1ky4iRXPHdBRiozyMHrdu0H3o7qNOCiZwySZTUI5MV0T8QhCLu+w==", "dev": true, "requires": { - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" }, "dependencies": { - "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==", + "cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", + "dev": true + }, + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "dev": true, + "requires": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + }, + "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 } } }, - "postcss-minify-gradients": { - "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==", + "postcss-dir-pseudo-class": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-5.0.0.tgz", + "integrity": "sha512-3pm4oq8HYWMZePJY+5ANriPs3P07q+LW6FAdTlkFH2XqDdP4HeeJYMOzn0HYLhRSjBO3fhiqSwwU9xEULSrPgw==", "dev": true, "requires": { - "cssnano-util-get-arguments": "^4.0.0", - "is-color-stop": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" }, "dependencies": { - "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==", + "cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", + "dev": true + }, + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "dev": true, + "requires": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + }, + "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 } } }, - "postcss-minify-params": { - "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==", + "postcss-discard-comments": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz", + "integrity": "sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==", + "dev": true + }, + "postcss-discard-duplicates": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz", + "integrity": "sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==", + "dev": true + }, + "postcss-discard-empty": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz", + "integrity": "sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==", + "dev": true + }, + "postcss-discard-overridden": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz", + "integrity": "sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==", + "dev": true + }, + "postcss-double-position-gradients": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-1.0.0.tgz", + "integrity": "sha512-G+nV8EnQq25fOI8CH/B6krEohGWnF5+3A6H/+JEpOncu5dCnkS1QQ6+ct3Jkaepw1NGVqqOZH6lqrm244mCftA==", "dev": true, "requires": { - "alphanum-sort": "^1.0.0", - "browserslist": "^4.0.0", - "cssnano-util-get-arguments": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0", - "uniqs": "^2.0.0" + "postcss": "^7.0.5", + "postcss-values-parser": "^2.0.0" }, "dependencies": { - "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==", + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 } } }, - "postcss-minify-selectors": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-4.0.2.tgz", - "integrity": "sha512-D5S1iViljXBj9kflQo4YutWnJmwm8VvIsU1GeXJGiG9j8CIg9zs4voPMdQDUmIxetUOh60VilsNzCiAFTOqu3g==", + "postcss-env-function": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-2.0.2.tgz", + "integrity": "sha512-rwac4BuZlITeUbiBq60h/xbLzXY43qOsIErngWa4l7Mt+RaSkT7QBjXVGTcBHupykkblHMDrBFh30zchYPaOUw==", "dev": true, "requires": { - "alphanum-sort": "^1.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-selector-parser": "^3.0.0" + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" }, "dependencies": { - "postcss-selector-parser": { - "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==", + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", "dev": true, "requires": { - "dot-prop": "^5.2.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" + "picocolors": "^0.2.1", + "source-map": "^0.6.1" } + }, + "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 } } }, - "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" - } - }, - "postcss-normalize-display-values": { - "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==", + "postcss-focus-visible": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-4.0.0.tgz", + "integrity": "sha512-Z5CkWBw0+idJHSV6+Bgf2peDOFf/x4o+vX/pwcNYrWpXFrSfTkQ3JQ1ojrq9yS+upnAlNRHeg8uEwFTgorjI8g==", "dev": true, "requires": { - "cssnano-util-get-match": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" + "postcss": "^7.0.2" }, "dependencies": { - "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==", + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 } } }, - "postcss-normalize-positions": { - "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==", + "postcss-focus-within": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-3.0.0.tgz", + "integrity": "sha512-W0APui8jQeBKbCGZudW37EeMCjDeVxKgiYfIIEo8Bdh5SpB9sxds/Iq8SEuzS0Q4YFOlG7EPFulbbxujpkrV2w==", "dev": true, "requires": { - "cssnano-util-get-arguments": "^4.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" + "postcss": "^7.0.2" }, "dependencies": { - "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==", + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 } } }, - "postcss-normalize-repeat-style": { - "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==", + "postcss-font-variant": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-4.0.1.tgz", + "integrity": "sha512-I3ADQSTNtLTTd8uxZhtSOrTCQ9G4qUVKPjHiDk0bV75QSxXjVWiJVJ2VLdspGUi9fbW9BcjKJoRvxAH1pckqmA==", "dev": true, "requires": { - "cssnano-util-get-arguments": "^4.0.0", - "cssnano-util-get-match": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" + "postcss": "^7.0.2" }, "dependencies": { - "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==", + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 } } }, - "postcss-normalize-string": { - "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==", + "postcss-gap-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-2.0.0.tgz", + "integrity": "sha512-QZSqDaMgXCHuHTEzMsS2KfVDOq7ZFiknSpkrPJY6jmxbugUPTuSzs/vuE5I3zv0WAS+3vhrlqhijiprnuQfzmg==", "dev": true, "requires": { - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" + "postcss": "^7.0.2" }, "dependencies": { - "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==", + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 } } }, - "postcss-normalize-timing-functions": { - "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==", + "postcss-image-set-function": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-3.0.1.tgz", + "integrity": "sha512-oPTcFFip5LZy8Y/whto91L9xdRHCWEMs3e1MdJxhgt4jy2WYXfhkng59fH5qLXSCPN8k4n94p1Czrfe5IOkKUw==", "dev": true, "requires": { - "cssnano-util-get-match": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" }, "dependencies": { - "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==", + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 } } }, - "postcss-normalize-unicode": { - "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==", + "postcss-import": { + "version": "14.0.2", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.0.2.tgz", + "integrity": "sha512-BJ2pVK4KhUyMcqjuKs9RijV5tatNzNa73e/32aBVE/ejYPe37iH+6vAu9WvqUkB5OAYgLHzbSvzHnorybJCm9g==", "dev": true, "requires": { - "browserslist": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + } + }, + "postcss-initial": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-3.0.4.tgz", + "integrity": "sha512-3RLn6DIpMsK1l5UUy9jxQvoDeUN4gP939tDcKUHD/kM8SGSKbFAnvkpFpj3Bhtz3HGk1jWY5ZNWX6mPta5M9fg==", + "dev": true, + "requires": { + "postcss": "^7.0.2" }, "dependencies": { - "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==", + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 } } }, - "postcss-normalize-url": { - "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==", + "postcss-lab-function": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-2.0.1.tgz", + "integrity": "sha512-whLy1IeZKY+3fYdqQFuDBf8Auw+qFuVnChWjmxm/UhHWqNHZx+B99EwxTvGYmUBqe3Fjxs4L1BoZTJmPu6usVg==", "dev": true, "requires": { - "is-absolute-url": "^2.0.0", - "normalize-url": "^3.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" }, "dependencies": { - "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==", + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 } } }, - "postcss-normalize-whitespace": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.2.tgz", - "integrity": "sha512-tO8QIgrsI3p95r8fyqKV+ufKlSHh9hMJqACqbv2XknufqEDhDvbguXGBBqxw9nsQoXWf0qOqppziKJKHMD4GtA==", + "postcss-loader": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-6.1.1.tgz", + "integrity": "sha512-lBmJMvRh1D40dqpWKr9Rpygwxn8M74U9uaCSeYGNKLGInbk9mXBt1ultHf2dH9Ghk6Ue4UXlXWwGMH9QdUJ5ug==", + "dev": true, + "requires": { + "cosmiconfig": "^7.0.0", + "klona": "^2.0.4", + "semver": "^7.3.5" + } + }, + "postcss-logical": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-3.0.0.tgz", + "integrity": "sha512-1SUKdJc2vuMOmeItqGuNaC+N8MzBWFWEkAnRnLpFYj1tGGa7NqyVBujfRtgNa2gXR+6RkGUiB2O5Vmh7E2RmiA==", "dev": true, "requires": { - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" + "postcss": "^7.0.2" }, "dependencies": { - "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==", + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 } } }, - "postcss-ordered-values": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-4.1.2.tgz", - "integrity": "sha512-2fCObh5UanxvSxeXrtLtlwVThBvHn6MQcu4ksNT2tsaV2Fg76R2CV98W7wNSlX+5/pFwEyaDwKLLoEV7uRybAw==", + "postcss-media-minmax": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-4.0.0.tgz", + "integrity": "sha512-fo9moya6qyxsjbFAYl97qKO9gyre3qvbMnkOZeZwlsW6XYFsvs2DMGDlchVLfAd8LHPZDxivu/+qW2SMQeTHBw==", "dev": true, "requires": { - "cssnano-util-get-arguments": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" + "postcss": "^7.0.2" }, "dependencies": { - "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==", + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 } } }, - "postcss-reduce-initial": { - "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==", + "postcss-merge-longhand": { + "version": "5.1.7", + "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz", + "integrity": "sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==", "dev": true, "requires": { - "browserslist": "^4.0.0", - "caniuse-api": "^3.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0" + "postcss-value-parser": "^4.2.0", + "stylehacks": "^5.1.1" } }, - "postcss-reduce-transforms": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.2.tgz", - "integrity": "sha512-EEVig1Q2QJ4ELpJXMZR8Vt5DQx8/mo+dGWSR7vWXqcob2gQLyQGsionYcGKATXvQzMPn6DSN1vTN7yFximdIAg==", + "postcss-merge-rules": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-5.1.4.tgz", + "integrity": "sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g==", "dev": true, "requires": { - "cssnano-util-get-match": "^4.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "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 - } + "browserslist": "^4.21.4", + "caniuse-api": "^3.0.0", + "cssnano-utils": "^3.1.0", + "postcss-selector-parser": "^6.0.5" } }, - "postcss-selector-parser": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz", - "integrity": "sha512-36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg==", + "postcss-minify-font-values": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz", + "integrity": "sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==", "dev": true, "requires": { - "cssesc": "^3.0.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" + "postcss-value-parser": "^4.2.0" } }, - "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==", + "postcss-minify-gradients": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz", + "integrity": "sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw==", "dev": true, "requires": { - "is-svg": "^3.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0", - "svgo": "^1.0.0" - }, - "dependencies": { - "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 - } + "colord": "^2.9.1", + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" } }, - "postcss-unique-selectors": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz", - "integrity": "sha512-+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg==", + "postcss-minify-params": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-5.1.4.tgz", + "integrity": "sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw==", "dev": true, "requires": { - "alphanum-sort": "^1.0.0", - "postcss": "^7.0.0", - "uniqs": "^2.0.0" + "browserslist": "^4.21.4", + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" } }, - "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 - }, - "prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" - }, - "prepend-http": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", - "dev": true - }, - "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 + "postcss-minify-selectors": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-5.2.1.tgz", + "integrity": "sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.5" + } }, - "process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "postcss-modules-extract-imports": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz", + "integrity": "sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==", "dev": true }, - "process-nextick-args": { - "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==" - }, - "promise": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", - "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "postcss-modules-local-by-default": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.2.0.tgz", + "integrity": "sha512-5kcJm/zk+GJDSfw+V/42fJ5fhjL5YbFDl8nVdXkJPLLW+Vf9mTD5Xe0wqIaDnLuL2U6cDNpTr+UQ+v2HWIBhzw==", "dev": true, - "optional": true, "requires": { - "asap": "~2.0.3" + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^7.0.0", + "postcss-value-parser": "^4.1.0" + }, + "dependencies": { + "postcss-selector-parser": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", + "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "dev": true, + "requires": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + } + } } }, - "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-retry": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-1.1.1.tgz", - "integrity": "sha1-ZznpaOMFHaIM5kl/srUPaRHfPW0=", + "postcss-modules-scope": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.2.1.tgz", + "integrity": "sha512-m9jZstCVaqGjTAuny8MdgE88scJnCiQSlSrOWcTQgM2t32UBe+MUmFSO5t7VMSfAf/FJKImAxBav8ooCHJXCJA==", "dev": true, "requires": { - "err-code": "^1.0.0", - "retry": "^0.10.0" + "postcss-selector-parser": "^7.0.0" }, "dependencies": { - "retry": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.10.1.tgz", - "integrity": "sha1-52OI0heZLCUnUCQdPTlW/tmNj/Q=", - "dev": true + "postcss-selector-parser": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", + "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "dev": true, + "requires": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + } } } }, - "protoduck": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/protoduck/-/protoduck-5.0.1.tgz", - "integrity": "sha512-WxoCeDCoCBY55BMvj4cAEjdVUFGRWed9ZxPlqTKYyw1nDDTQ4pqmnIMAGfJlg7Dx35uB/M+PHJPTmGOvaCaPTg==", + "postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", "dev": true, "requires": { - "genfun": "^5.0.0" + "icss-utils": "^5.0.0" } }, - "protractor": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/protractor/-/protractor-7.0.0.tgz", - "integrity": "sha512-UqkFjivi4GcvUQYzqGYNe0mLzfn5jiLmO8w9nMhQoJRLhy2grJonpga2IWhI6yJO30LibWXJJtA4MOIZD2GgZw==", + "postcss-nesting": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-7.0.1.tgz", + "integrity": "sha512-FrorPb0H3nuVq0Sff7W2rnc3SmIcruVC6YwpcS+k687VxyxO33iE1amna7wHuRVzM8vfiYofXSBHNAZ3QhLvYg==", "dev": true, "requires": { - "@types/q": "^0.0.32", - "@types/selenium-webdriver": "^3.0.0", - "blocking-proxy": "^1.0.0", - "browserstack": "^1.5.1", - "chalk": "^1.1.3", - "glob": "^7.0.3", - "jasmine": "2.8.0", - "jasminewd2": "^2.1.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.1.7", - "yargs": "^15.3.1" + "postcss": "^7.0.2" }, "dependencies": { - "@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": "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": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", "dev": true }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", "dev": true, "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" + "picocolors": "^0.2.1", + "source-map": "^0.6.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" - }, - "dependencies": { - "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" - } - } - } + "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 + } + } + }, + "postcss-normalize-charset": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz", + "integrity": "sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==", + "dev": true + }, + "postcss-normalize-display-values": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz", + "integrity": "sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-positions": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-5.1.1.tgz", + "integrity": "sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-repeat-style": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.1.tgz", + "integrity": "sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-string": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz", + "integrity": "sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-timing-functions": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz", + "integrity": "sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-unicode": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.1.tgz", + "integrity": "sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA==", + "dev": true, + "requires": { + "browserslist": "^4.21.4", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-url": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz", + "integrity": "sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew==", + "dev": true, + "requires": { + "normalize-url": "^6.0.1", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-whitespace": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz", + "integrity": "sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-ordered-values": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-5.1.3.tgz", + "integrity": "sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ==", + "dev": true, + "requires": { + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-overflow-shorthand": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-2.0.0.tgz", + "integrity": "sha512-aK0fHc9CBNx8jbzMYhshZcEv8LtYnBIRYQD5i7w/K/wS9c2+0NSR6B3OVMu5y0hBHYLcMGjfU+dmWYNKH0I85g==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "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==", + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", "dev": true, "requires": { - "color-name": "~1.1.4" + "picocolors": "^0.2.1", + "source-map": "^0.6.1" } }, - "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==", + "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 + } + } + }, + "postcss-page-break": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-2.0.0.tgz", + "integrity": "sha512-tkpTSrLpfLfD9HvgOlJuigLuk39wVTbbd8RKcy8/ugV2bNBUW3xU+AIqyxhDrQr1VUj1RmyJrBn1YWrqUm9zAQ==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", "dev": true }, - "del": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", - "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=", + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", "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" + "picocolors": "^0.2.1", + "source-map": "^0.6.1" } }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "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 + } + } + }, + "postcss-place": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-4.0.1.tgz", + "integrity": "sha512-Zb6byCSLkgRKLODj/5mQugyuj9bvAAw9LqJJjgwz5cYryGeXfFZfSXoP1UfveccFmeq0b/2xxwcTEVScnqGxBg==", + "dev": true, + "requires": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", "dev": true, "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "picocolors": "^0.2.1", + "source-map": "^0.6.1" } }, - "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==", + "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 + } + } + }, + "postcss-preset-env": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-6.7.0.tgz", + "integrity": "sha512-eU4/K5xzSFwUFJ8hTdTQzo2RBLbDVt83QZrAvI07TULOkmyQlnYlpwep+2yIK+K+0KlZO4BvFcleOCCcUtwchg==", + "dev": true, + "requires": { + "autoprefixer": "^9.6.1", + "browserslist": "^4.6.4", + "caniuse-lite": "^1.0.30000981", + "css-blank-pseudo": "^0.1.4", + "css-has-pseudo": "^0.10.0", + "css-prefers-color-scheme": "^3.1.1", + "cssdb": "^4.4.0", + "postcss": "^7.0.17", + "postcss-attribute-case-insensitive": "^4.0.1", + "postcss-color-functional-notation": "^2.0.1", + "postcss-color-gray": "^5.0.0", + "postcss-color-hex-alpha": "^5.0.3", + "postcss-color-mod-function": "^3.0.3", + "postcss-color-rebeccapurple": "^4.0.1", + "postcss-custom-media": "^7.0.8", + "postcss-custom-properties": "^8.0.11", + "postcss-custom-selectors": "^5.1.2", + "postcss-dir-pseudo-class": "^5.0.0", + "postcss-double-position-gradients": "^1.0.0", + "postcss-env-function": "^2.0.2", + "postcss-focus-visible": "^4.0.0", + "postcss-focus-within": "^3.0.0", + "postcss-font-variant": "^4.0.0", + "postcss-gap-properties": "^2.0.0", + "postcss-image-set-function": "^3.0.1", + "postcss-initial": "^3.0.0", + "postcss-lab-function": "^2.0.1", + "postcss-logical": "^3.0.0", + "postcss-media-minmax": "^4.0.0", + "postcss-nesting": "^7.0.0", + "postcss-overflow-shorthand": "^2.0.0", + "postcss-page-break": "^2.0.0", + "postcss-place": "^4.0.1", + "postcss-pseudo-class-any-link": "^6.0.0", + "postcss-replace-overflow-wrap": "^3.0.0", + "postcss-selector-matches": "^4.0.0", + "postcss-selector-not": "^4.0.0" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", "dev": true }, - "globby": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", - "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", "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" + "picocolors": "^0.2.1", + "source-map": "^0.6.1" } }, - "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==", + "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 - }, - "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=", + } + } + }, + "postcss-pseudo-class-any-link": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-6.0.0.tgz", + "integrity": "sha512-lgXW9sYJdLqtmw23otOzrtbDXofUdfYzNm4PIpNE322/swES3VU9XlXHeJS46zT2onFO7V1QFdD4Q9LiZj8mew==", + "dev": true, + "requires": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" + }, + "dependencies": { + "cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", "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" - } + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true }, - "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=", + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", "dev": true, "requires": { - "path-is-inside": "^1.0.1" + "picocolors": "^0.2.1", + "source-map": "^0.6.1" } }, - "locate-path": { + "postcss-selector-parser": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", "dev": true, "requires": { - "p-locate": "^4.1.0" + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" } }, - "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" - } + "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 + } + } + }, + "postcss-reduce-initial": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.1.2.tgz", + "integrity": "sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg==", + "dev": true, + "requires": { + "browserslist": "^4.21.4", + "caniuse-api": "^3.0.0" + } + }, + "postcss-reduce-transforms": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz", + "integrity": "sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-replace-overflow-wrap": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-3.0.0.tgz", + "integrity": "sha512-2T5hcEHArDT6X9+9dVSPQdo7QHzG4XKclFT8rU5TzJPDN7RIRTbO9c4drUISOVemLj03aezStHCR2AIcr8XLpw==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true }, - "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==", + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", "dev": true, "requires": { - "p-limit": "^2.2.0" + "picocolors": "^0.2.1", + "source-map": "^0.6.1" } }, - "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==", + "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 + } + } + }, + "postcss-selector-matches": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-matches/-/postcss-selector-matches-4.0.0.tgz", + "integrity": "sha512-LgsHwQR/EsRYSqlwdGzeaPKVT0Ml7LAT6E75T8W8xLJY62CE4S/l03BWIt3jT8Taq22kXP08s2SfTSzaraoPww==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "postcss": "^7.0.2" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", "dev": true }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-selector-not": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-4.0.1.tgz", + "integrity": "sha512-YolvBgInEK5/79C+bdFMyzqTg6pkYqDbzZIST/PDMqa/o3qtXenD05apBG2jLgT0/BQ77d4U2UK12jWpilqMAQ==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "postcss": "^7.0.2" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", "dev": true }, - "q": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/q/-/q-1.4.1.tgz", - "integrity": "sha1-VXBbzZPF82c1MMLCy8DCs63cKG4=", + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dev": true, + "requires": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + } + }, + "postcss-svgo": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-5.1.0.tgz", + "integrity": "sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0", + "svgo": "^2.7.0" + } + }, + "postcss-unique-selectors": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz", + "integrity": "sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.5" + } + }, + "postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true + }, + "postcss-values-parser": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", + "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", + "dev": true, + "requires": { + "flatten": "^1.0.2", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + }, + "prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true + }, + "pretty-bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", + "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", + "dev": true + }, + "process-nextick-args": { + "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==", + "dev": true + }, + "progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true + }, + "promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", + "dev": true + }, + "promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "dev": true, + "requires": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + } + }, + "protractor": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/protractor/-/protractor-7.0.0.tgz", + "integrity": "sha512-UqkFjivi4GcvUQYzqGYNe0mLzfn5jiLmO8w9nMhQoJRLhy2grJonpga2IWhI6yJO30LibWXJJtA4MOIZD2GgZw==", + "dev": true, + "requires": { + "@types/q": "^0.0.32", + "@types/selenium-webdriver": "^3.0.0", + "blocking-proxy": "^1.0.0", + "browserstack": "^1.5.1", + "chalk": "^1.1.3", + "glob": "^7.0.3", + "jasmine": "2.8.0", + "jasminewd2": "^2.1.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.1.7", + "yargs": "^15.3.1" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", "dev": true }, - "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==", + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", "dev": true }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", "dev": true, "requires": { - "glob": "^7.1.3" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "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" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + } + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "dev": true }, "source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", "dev": true }, "source-map-support": { @@ -9680,53 +10876,21 @@ "source-map": "^0.5.6" } }, - "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==", + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", "dev": true, "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "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" - } - } + "ansi-regex": "^2.0.0" } }, "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", "dev": true }, - "webdriver-manager": { - "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", - "chalk": "^1.1.1", - "del": "^2.2.0", - "glob": "^7.0.3", - "ini": "^1.3.4", - "minimist": "^1.2.0", - "q": "^1.4.1", - "request": "^2.87.0", - "rimraf": "^2.5.2", - "semver": "^5.3.0", - "xml2js": "^0.4.17" - } - }, "wrap-ansi": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", @@ -9738,31 +10902,42 @@ "strip-ansi": "^6.0.0" }, "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "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==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "requires": { - "ansi-regex": "^5.0.0" + "ansi-regex": "^5.0.1" } } } }, + "y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "dev": true + }, "yargs": { - "version": "15.3.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.3.1.tgz", - "integrity": "sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA==", + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", "dev": true, "requires": { "cliui": "^6.0.0", @@ -9775,7 +10950,7 @@ "string-width": "^4.2.0", "which-module": "^2.0.0", "y18n": "^4.0.0", - "yargs-parser": "^18.1.1" + "yargs-parser": "^18.1.2" } }, "yargs-parser": { @@ -9791,83 +10966,57 @@ } }, "proxy-addr": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz", - "integrity": "sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", "requires": { - "forwarded": "~0.1.2", + "forwarded": "0.2.0", "ipaddr.js": "1.9.1" } }, "prr": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", + "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", "dev": true }, "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 - }, - "public-encrypt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", - "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.15.0.tgz", + "integrity": "sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==", "dev": true, "requires": { - "bn.js": "^4.1.0", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "parse-asn1": "^5.0.0", - "randombytes": "^2.0.1", - "safe-buffer": "^5.1.2" + "punycode": "^2.3.1" + }, + "dependencies": { + "punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "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==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.3.tgz", + "integrity": "sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA==", "dev": true, "requires": { "end-of-stream": "^1.1.0", "once": "^1.3.1" } }, - "pumpify": { - "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==", - "dev": true, - "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==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==", "dev": true }, "q": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", - "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.4.1.tgz", + "integrity": "sha512-/CdEdaw49VZVmyIDGUQKDDT53c7qBkO6g5CefWz91Ae+l4+cRtcDYwMTXh6me4O8TMldeGHG3N2Bl84V78Ywbg==", "dev": true }, "qjobs": { @@ -9876,245 +11025,181 @@ "integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==", "dev": true }, - "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", - "dev": true - }, - "query-string": { - "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" - } - }, - "querystring": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", - "dev": true - }, - "querystring-es3": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", - "dev": true - }, - "querystringify": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.1.1.tgz", - "integrity": "sha512-w7fLxIRCRT7U8Qu53jQnJyPkYZIaR4n5151KMfcJlO/A9397Wxb1amJvROTK6TOnp7PfoAmg/qXiNHI+08jRfA==", - "dev": true - }, - "quote-stream": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/quote-stream/-/quote-stream-1.0.2.tgz", - "integrity": "sha1-hJY/jJwmuULhU/7rU6rnRlK34LI=", - "requires": { - "buffer-equal": "0.0.1", - "minimist": "^1.1.3", - "through2": "^2.0.0" - } - }, - "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" - } - }, - "randomfill": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", - "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", - "dev": true, + "qrcode": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/qrcode/-/qrcode-1.5.4.tgz", + "integrity": "sha512-1ca71Zgiu6ORjHqFBDpnSMTR2ReToX4l1Au1VFLyVeBTFavzQnv5JxMFr3ukHVKpSrSA2MCk0lNJSykjUfz7Zg==", "requires": { - "randombytes": "^2.0.5", - "safe-buffer": "^5.1.0" - } - }, - "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==" - }, - "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==", - "requires": { - "bytes": "3.1.0", - "http-errors": "1.7.2", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "dependencies": { - "bytes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" - } - } - }, - "raw-loader": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-3.1.0.tgz", - "integrity": "sha512-lzUVMuJ06HF4rYveaz9Tv0WRlUMxJ0Y1hgSkkgg+50iEdaI0TthyEDe08KIHb0XsF6rn8WYTqPCaGTZg3sX+qA==", - "dev": true, - "requires": { - "loader-utils": "^1.1.0", - "schema-utils": "^2.0.1" + "dijkstrajs": "^1.0.1", + "pngjs": "^5.0.0", + "yargs": "^15.3.1" }, "dependencies": { - "ajv": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz", - "integrity": "sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==", - "dev": true, + "cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", "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" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" } }, - "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 + "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==", + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } }, - "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, + "y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==" + }, + "yargs": { + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "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.2" + } + }, + "yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", "requires": { - "ajv": "^6.12.0", - "ajv-keywords": "^3.4.1" + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" } } } }, - "read-cache": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", - "integrity": "sha1-5mTvMRYRZsl1HNvo28+GtftY93Q=", - "dev": true, + "qs": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "requires": { - "pify": "^2.3.0" - }, - "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - } + "side-channel": "^1.0.6" } }, - "read-package-json": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-2.1.1.tgz", - "integrity": "sha512-dAiqGtVc/q5doFz6096CcnXhpYk0ZN8dEKVkGLU0CsASt8SrgF6SF7OTKAYubfvFhWaqofl+Y8HK19GR8jwW+A==", + "querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", + "dev": true + }, + "queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true + }, + "randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", "dev": true, "requires": { - "glob": "^7.1.1", - "graceful-fs": "^4.1.2", - "json-parse-better-errors": "^1.0.1", - "normalize-package-data": "^2.0.0", - "npm-normalize-package-bin": "^1.0.0" + "safe-buffer": "^5.1.0" } }, - "read-package-tree": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/read-package-tree/-/read-package-tree-5.3.1.tgz", - "integrity": "sha512-mLUDsD5JVtlZxjSlPPx1RETkNjjvQYuweKwNVt1Sn8kP5Jh44pvYuUHCp6xSVDZWbNxVxG5lyZJ921aJH61sTw==", + "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==" + }, + "raw-body": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "requires": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + } + }, + "read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", "dev": true, "requires": { - "read-package-json": "^2.0.0", - "readdir-scoped-modules": "^1.0.0", - "util-promisify": "^2.1.0" + "pify": "^2.3.0" } }, - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "read-package-json-fast": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz", + "integrity": "sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ==", + "dev": 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" + "json-parse-even-better-errors": "^2.3.0", + "npm-normalize-package-bin": "^1.0.1" } }, - "readdir-scoped-modules": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz", - "integrity": "sha512-asaikDeqAQg7JifRsZn1NJZXo9E+VwlyCfbkZhwyISinqk5zNS6266HS5kah6P0SaQKGF6SkNnZVHUzHFYxYDw==", + "readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "dev": true, "requires": { - "debuglog": "^1.0.1", - "dezalgo": "^1.0.0", - "graceful-fs": "^4.1.2", - "once": "^1.3.0" + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" } }, "readdirp": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.3.0.tgz", - "integrity": "sha512-zz0pAkSPOXXm1viEwygWIPSPkcBYjW1xU5j/JBh5t9bGCJwa6f9+BJa6VaB2g+b55yVrmXzqkyLf4xaWYM0IkQ==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "dev": true, "requires": { - "picomatch": "^2.0.7" + "picomatch": "^2.2.1" } }, "reflect-metadata": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", - "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==", + "version": "0.1.14", + "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.14.tgz", + "integrity": "sha512-ZhYeb6nRaXCfhnndflDK8qI6ZQ/YcWZCISRAWICW9XYqMUwjZM9Z0DveWX/ABN01oxSHwVxKQmxeYZSsm0jh5A==", "dev": true }, "regenerate": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", - "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", "dev": true }, "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==", + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.2.0.tgz", + "integrity": "sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA==", "dev": true, "requires": { - "regenerate": "^1.4.0" + "regenerate": "^1.4.2" } }, "regenerator-runtime": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz", - "integrity": "sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw==", + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", + "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", "dev": true }, - "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" - } - }, "regex-not": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", @@ -10125,48 +11210,64 @@ "safe-regex": "^1.1.0" } }, + "regex-parser": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.3.1.tgz", + "integrity": "sha512-yXLRqatcCuKtVHsWrNg0JL3l1zGfdXeEvDa0bdu4tCDQw0RpMDZsqbkyRTUnKMR0tXF627V2oEWjBEaEdqTwtQ==", + "dev": true + }, "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==", + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", + "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1" + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "set-function-name": "^2.0.2" } }, + "regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "dev": true + }, "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==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-6.2.0.tgz", + "integrity": "sha512-H66BPQMrv+V16t8xtmq+UC0CBpiTBA60V8ibS1QVReIp8T1z8hwFxqcGzm9K6lgsN7sB5edVH8a+ze6Fqm4weA==", "dev": true, "requires": { - "regenerate": "^1.4.0", - "regenerate-unicode-properties": "^8.2.0", - "regjsgen": "^0.5.1", - "regjsparser": "^0.6.4", - "unicode-match-property-ecmascript": "^1.0.4", - "unicode-match-property-value-ecmascript": "^1.2.0" + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.2.0", + "regjsgen": "^0.8.0", + "regjsparser": "^0.12.0", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" } }, "regjsgen": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.1.tgz", - "integrity": "sha512-5qxzGZjDs9w4tzT3TPhCJqWdCc3RLYwy9J2NB0nm5Lz+S273lvWcpjaTGHsT1dc6Hhfq41uSEOw8wBmxrKOuyg==", + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==", "dev": true }, "regjsparser": { - "version": "0.6.4", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.4.tgz", - "integrity": "sha512-64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw==", + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.12.0.tgz", + "integrity": "sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ==", "dev": true, "requires": { - "jsesc": "~0.5.0" + "jsesc": "~3.0.2" }, "dependencies": { "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", + "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", "dev": true } } @@ -10174,19 +11275,19 @@ "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=", + "integrity": "sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==", "dev": true }, "repeat-element": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", - "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz", + "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==", "dev": true }, "repeat-string": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==", "dev": true }, "request": { @@ -10215,55 +11316,120 @@ "tough-cookie": "~2.5.0", "tunnel-agent": "^0.6.0", "uuid": "^3.3.2" + }, + "dependencies": { + "qs": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", + "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", + "dev": true + }, + "uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "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=", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==" + }, + "require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", "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 + "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=", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", "dev": true }, "resolve": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.1.tgz", - "integrity": "sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w==", + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", + "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", + "dev": true, "requires": { + "is-core-module": "^2.2.0", "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=", + "integrity": "sha512-ccu8zQTrzVr954472aUVPLEcB3YpKSYR3cg/3lo1okzobPBM+1INXBbBZlDbnI/hbEocnf8j0QVo43hQKrbchg==", "dev": true, "requires": { "resolve-from": "^3.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==", + "dev": true + } } }, "resolve-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true }, "resolve-url": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "integrity": "sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==", "dev": true }, + "resolve-url-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-4.0.0.tgz", + "integrity": "sha512-05VEMczVREcbtT7Bz+C+96eUO5HDNvdthIiMB34t7FcF8ehcu4wC0sSgPUubs3XW2Q3CNLJk/BJrCU9wVRymiA==", + "dev": true, + "requires": { + "adjust-sourcemap-loader": "^4.0.0", + "convert-source-map": "^1.7.0", + "loader-utils": "^2.0.0", + "postcss": "^7.0.35", + "source-map": "0.6.1" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, "restore-cursor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", @@ -10275,12 +11441,9 @@ } }, "restructure": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/restructure/-/restructure-0.5.4.tgz", - "integrity": "sha1-9U591WNZD7NP1r9Vh2EJrsyyjeg=", - "requires": { - "browserify-optional": "^1.0.0" - } + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/restructure/-/restructure-2.0.1.tgz", + "integrity": "sha512-e0dOpjm5DseomnXx2M5lpdZ5zoHqF1+bqdMJUohoYVVQa7cBdnk7fdmeI6byNWP/kiME72EeTiSypTCVnpLiDg==" }, "ret": { "version": "0.1.15", @@ -10291,198 +11454,193 @@ "retry": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", - "dev": true - }, - "rfdc": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.1.4.tgz", - "integrity": "sha512-5C9HXdzK8EAqN7JDif30jqsBzavB7wLpaubisuQIGHWf2gUXSpzy6ArX/+Da8RjFpagWsCn+pIgxTMAmKw9Zug==", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", "dev": true }, - "rgb-regex": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/rgb-regex/-/rgb-regex-1.0.1.tgz", - "integrity": "sha1-wODWiC3w4jviVKR16O3UGRX+rrE=", + "reusify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", "dev": true }, - "rgba-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/rgba-regex/-/rgba-regex-1.0.0.tgz", - "integrity": "sha1-QzdOLiyglosO8VI0YLfXMP8i7rM=", + "rfdc": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", + "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", "dev": true }, "rimraf": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.0.tgz", - "integrity": "sha512-NDGVxTsjqfunkds7CqsOiEnxln4Bo7Nddl3XhS4pXg5OzwkLqJ971ZVAAnB+DDLnF76N+VnDEiBHaVV8I06SUg==", + "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" } }, - "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" - } - }, - "rollup": { - "version": "1.25.2", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-1.25.2.tgz", - "integrity": "sha512-+7z6Wab/L45QCPcfpuTZKwKiB0tynj05s/+s2U3F2Bi7rOLPr9UcjUwO7/xpjlPNXA/hwnth6jBExFRGyf3tMg==", - "dev": true, - "requires": { - "@types/estree": "*", - "@types/node": "*", - "acorn": "^7.1.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-queue": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", - "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", + "run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", "dev": true, "requires": { - "aproba": "^1.1.1" + "queue-microtask": "^1.2.2" } }, "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" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } } }, "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" }, "safe-regex": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "integrity": "sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==", "dev": true, "requires": { "ret": "~0.1.10" } }, + "safe-regex-test": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", + "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", + "requires": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-regex": "^1.2.1" + } + }, "safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.23.3", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.23.3.tgz", - "integrity": "sha512-1DKRZxJMOh4Bme16AbWTyYeJAjTlrvw2+fWshHHaepeJfGq2soFZTnt0YhWit+bohtDu4LdyPoEj6VFD4APHog==", + "version": "1.36.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.36.0.tgz", + "integrity": "sha512-fQzEjipfOv5kh930nu3Imzq3ie/sGDc/4KtQMJlt7RRdrkQSfe37Bwi/Rf/gfuYHsIuE1fIlDMvpyMcEwjnPvg==", "dev": true, "requires": { - "chokidar": ">=2.0.0 <4.0.0" + "chokidar": ">=3.0.0 <4.0.0" } }, "sass-loader": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-8.0.0.tgz", - "integrity": "sha512-+qeMu563PN7rPdit2+n5uuYVR0SSVwm0JsOUsaJXzgYcClWSlmX0iHDnmeOobPkf5kUglVot3QS6SyLyaQoJ4w==", + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-12.1.0.tgz", + "integrity": "sha512-FVJZ9kxVRYNZTIe2xhw93n3xJNYZADr+q69/s98l9nTCrWASo+DR2Ot0s5xTKQDDEosUkatsGeHxcH4QBp5bSg==", "dev": true, "requires": { - "clone-deep": "^4.0.1", - "loader-utils": "^1.2.3", - "neo-async": "^2.6.1", - "schema-utils": "^2.1.0", - "semver": "^6.3.0" + "klona": "^2.0.4", + "neo-async": "^2.6.2" + } + }, + "saucelabs": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/saucelabs/-/saucelabs-1.5.0.tgz", + "integrity": "sha512-jlX3FGdWvYf4Q3LFfFWS1QvPg3IGCGWxIc8QBFdPTbpTJnt/v17FHXYVAn7C8sHf1yUXo2c7yIM0isDryfYtHQ==", + "dev": true, + "requires": { + "https-proxy-agent": "^2.2.1" }, "dependencies": { - "ajv": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz", - "integrity": "sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==", + "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": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" + "es6-promisify": "^5.0.0" } }, - "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 + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } }, - "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==", + "https-proxy-agent": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz", + "integrity": "sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg==", "dev": true, "requires": { - "ajv": "^6.12.0", - "ajv-keywords": "^3.4.1" + "agent-base": "^4.3.0", + "debug": "^3.1.0" } } } }, - "saucelabs": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/saucelabs/-/saucelabs-1.5.0.tgz", - "integrity": "sha512-jlX3FGdWvYf4Q3LFfFWS1QvPg3IGCGWxIc8QBFdPTbpTJnt/v17FHXYVAn7C8sHf1yUXo2c7yIM0isDryfYtHQ==", - "dev": true, - "requires": { - "https-proxy-agent": "^2.2.1" - } - }, "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", + "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==" }, "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==", + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", "dev": true, "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - } - }, - "scope-analyzer": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/scope-analyzer/-/scope-analyzer-2.1.1.tgz", - "integrity": "sha512-azEAihtQ9mEyZGhfgTJy3IbOWEzeOrYbg7NcYEshPKnKd+LZmC3TNd5dmDxbLBsTG/JVWmCp+vDJ03vJjeXMHg==", - "requires": { - "array-from": "^2.1.1", - "dash-ast": "^1.0.0", - "es6-map": "^0.1.5", - "es6-set": "^0.1.5", - "es6-symbol": "^3.1.1", - "estree-is-function": "^1.0.0", - "get-assigned-identifiers": "^1.1.0" + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + }, + "dependencies": { + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "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" + } + }, + "ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "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 + } } }, "select-hose": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=", + "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", "dev": true }, "selenium-webdriver": { @@ -10509,7 +11667,7 @@ "tmp": { "version": "0.0.30", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.30.tgz", - "integrity": "sha1-ckGdSovn1s51FI/YsyTlk6cRwu0=", + "integrity": "sha512-HXdTB7lvMwcb55XFfrTM8CPr/IYREk4hVBFaQ4b/6nInrluSL86hfHm7vu0luYKCfyBZp2trCjpc8caC3vVM3w==", "dev": true, "requires": { "os-tmpdir": "~1.0.1" @@ -10518,72 +11676,75 @@ } }, "selfsigned": { - "version": "1.10.7", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.7.tgz", - "integrity": "sha512-8M3wBCzeWIJnQfl43IKwOmC4H/RAp50S8DF60znzjW5GVqTcSe2vWclt7hmYVPkKPlHWOu5EaWOMZ2Y6W8ZXTA==", + "version": "1.10.14", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.14.tgz", + "integrity": "sha512-lkjaiAye+wBZDCBsu5BGi0XiLRxeUlsGod5ZP924CRSEoGuZAw/f7y9RKu28rwTfiHVhdavhB0qH0INV6P1lEA==", "dev": true, "requires": { - "node-forge": "0.9.0" + "node-forge": "^0.10.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 - }, - "semver-dsl": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/semver-dsl/-/semver-dsl-1.0.1.tgz", - "integrity": "sha1-02eN5VVeimH2Ke7QJTZq5fJzQKA=", + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", "dev": true, "requires": { - "semver": "^5.3.0" + "lru-cache": "^6.0.0" }, "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true } } }, - "semver-intersect": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/semver-intersect/-/semver-intersect-1.4.0.tgz", - "integrity": "sha512-d8fvGg5ycKAq0+I6nfWeCx6ffaWJCsBYU0H2Rq56+/zFePYfT8mXkB3tWBSjR5BerkHNZ5eTPIk1/LBYas35xQ==", + "semver-dsl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/semver-dsl/-/semver-dsl-1.0.1.tgz", + "integrity": "sha512-e8BOaTo007E3dMuQQTnPdalbKTABKNS7UxoBIDnwOqRa+QwMrCPjynB8zAlPF6xlqUfdLPPLIJ13hJNmhtq8Ng==", "dev": true, "requires": { - "semver": "^5.0.0" + "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==", + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "dev": true } } }, "send": { - "version": "0.17.1", - "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", - "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", "requires": { "debug": "2.6.9", - "depd": "~1.1.2", - "destroy": "~1.0.4", + "depd": "2.0.0", + "destroy": "1.2.0", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "etag": "~1.8.1", "fresh": "0.5.2", - "http-errors": "~1.7.2", + "http-errors": "2.0.0", "mime": "1.6.0", - "ms": "2.1.1", - "on-finished": "~2.3.0", + "ms": "2.1.3", + "on-finished": "2.4.1", "range-parser": "~1.2.1", - "statuses": "~1.5.0" + "statuses": "2.0.1" }, "dependencies": { "debug": { @@ -10597,27 +11758,40 @@ "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" } } }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==" + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" + }, "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==" + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" } } }, "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": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "dev": true, + "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=", + "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", "dev": true, "requires": { "accepts": "~1.3.4", @@ -10638,10 +11812,16 @@ "ms": "2.0.0" } }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true + }, "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=", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", "dev": true, "requires": { "depd": "~1.1.2", @@ -10653,13 +11833,13 @@ "inherits": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", "dev": true }, "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true }, "setprototypeof": { @@ -10667,31 +11847,54 @@ "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", "dev": true + }, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "dev": true } } }, "serve-static": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", - "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", "requires": { - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.17.1" + "send": "0.19.0" } }, "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": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==" }, - "set-immediate-shim": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", - "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", - "dev": true + "set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "requires": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + } + }, + "set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "requires": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + } }, "set-value": { "version": "2.0.1", @@ -10708,34 +11911,30 @@ "extend-shallow": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", "dev": true, "requires": { "is-extendable": "^0.1.0" } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "dev": true } } }, "setimmediate": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", "dev": true }, "setprototypeof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "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" - } + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" }, "shallow-clone": { "version": "3.0.1", @@ -10746,59 +11945,92 @@ "kind-of": "^6.0.2" } }, - "shallow-copy": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/shallow-copy/-/shallow-copy-0.0.1.tgz", - "integrity": "sha1-QV9CcC1z2BAzApLMXuhurhoRoXA=" - }, "shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, "requires": { - "shebang-regex": "^1.0.0" + "shebang-regex": "^3.0.0" } }, "shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true }, - "signal-exit": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", - "dev": true + "side-channel": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "requires": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + } }, - "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, + "side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", "requires": { - "is-arrayish": "^0.3.1" - }, - "dependencies": { - "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 - } + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + } + }, + "side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "requires": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + } + }, + "side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "requires": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" } }, + "signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, "slash": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "dev": true }, + "slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + } + }, "smart-buffer": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.1.0.tgz", - "integrity": "sha512-iVICrxOzCynf/SNaBQCw34eM9jROU/s5rzIhpOvzhzuYHfJR/DhZfDkXiZSgKXfgv26HT3Yni3AV/DGw0cGnnw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", "dev": true }, "snapdragon": { @@ -10829,7 +12061,7 @@ "define-property": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", "dev": true, "requires": { "is-descriptor": "^0.1.0" @@ -10838,22 +12070,38 @@ "extend-shallow": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", "dev": true, "requires": { "is-extendable": "^0.1.0" } }, + "is-descriptor": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.7.tgz", + "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "dev": true + }, "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true }, "source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", "dev": true } } @@ -10872,40 +12120,11 @@ "define-property": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", "dev": true, "requires": { "is-descriptor": "^1.0.0" } - }, - "is-accessor-descriptor": { - "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" - } - }, - "is-data-descriptor": { - "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" - } - }, - "is-descriptor": { - "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", - "kind-of": "^6.0.2" - } } } }, @@ -10921,7 +12140,7 @@ "kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dev": true, "requires": { "is-buffer": "^1.1.5" @@ -10930,198 +12149,130 @@ } }, "socket.io": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.3.0.tgz", - "integrity": "sha512-2A892lrj0GcgR/9Qk81EaY2gYhCBxurV0PfmmESO6p27QPrUK1J3zdns+5QPqvUYK2q657nSj0guoIil9+7eFg==", + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.8.1.tgz", + "integrity": "sha512-oZ7iUCxph8WYRHHcjBEc9unw3adt5CmSNlppj/5Q4k2RIrhl8Z5yY2Xr4j9zj0+wzVZ0bxmYoGSzKJnRl6A4yg==", "dev": true, "requires": { - "debug": "~4.1.0", - "engine.io": "~3.4.0", - "has-binary2": "~1.0.2", - "socket.io-adapter": "~1.1.0", - "socket.io-client": "2.3.0", - "socket.io-parser": "~3.4.0" + "accepts": "~1.3.4", + "base64id": "~2.0.0", + "cors": "~2.8.5", + "debug": "~4.3.2", + "engine.io": "~6.6.0", + "socket.io-adapter": "~2.5.2", + "socket.io-parser": "~4.2.4" } }, "socket.io-adapter": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.2.tgz", - "integrity": "sha512-WzZRUj1kUjrTIrUKpZLEzFZ1OLj5FwLlAFQs9kuZJzJi5DKdU7FsWc36SNmA8iDOtwBQyT8FkrriRM8vXLYz8g==", - "dev": true - }, - "socket.io-client": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.3.0.tgz", - "integrity": "sha512-cEQQf24gET3rfhxZ2jJ5xzAOo/xhZwK+mOqtGRg5IowZsMgwvHwnf/mCRapAAkadhM26y+iydgwsXGObBB5ZdA==", - "dev": true, - "requires": { - "backo2": "1.0.2", - "base64-arraybuffer": "0.1.5", - "component-bind": "1.0.0", - "component-emitter": "1.2.1", - "debug": "~4.1.0", - "engine.io-client": "~3.4.0", - "has-binary2": "~1.0.2", - "has-cors": "1.1.0", - "indexof": "0.0.1", - "object-component": "0.0.3", - "parseqs": "0.0.5", - "parseuri": "0.0.5", - "socket.io-parser": "~3.3.0", - "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 - }, - "isarray": { - "version": "2.0.1", - "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 - }, - "socket.io-parser": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.3.0.tgz", - "integrity": "sha512-hczmV6bDgdaEbVqhAeVMM/jfUfzuEZHsQg6eOmLgJht6G3mPKMxYm75w2+qhAQZ+4X+1+ATZ+QFKeOZD5riHng==", + "version": "2.5.5", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.5.tgz", + "integrity": "sha512-eLDQas5dzPgOWCk9GuuJC2lBqItuhKI4uxGgo9aIV7MYbk2h9Q6uULEh8WBzThoI7l+qU9Ast9fVUmkqPP9wYg==", + "dev": true, + "requires": { + "debug": "~4.3.4", + "ws": "~8.17.1" + }, + "dependencies": { + "debug": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", "dev": true, "requires": { - "component-emitter": "1.2.1", - "debug": "~3.1.0", - "isarray": "2.0.1" - }, - "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, - "requires": { - "ms": "2.0.0" - } - } + "ms": "^2.1.3" } + }, + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true } } }, "socket.io-parser": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.4.1.tgz", - "integrity": "sha512-11hMgzL+WCLWf1uFtHSNvliI++tcRUWdoeYuwIl+Axvwy9z2gQM+7nJyN3STj1tLj5JyIUH8/gpDGxzAlDdi0A==", + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.4.tgz", + "integrity": "sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==", "dev": true, "requires": { - "component-emitter": "1.2.1", - "debug": "~4.1.0", - "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 - }, - "isarray": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", - "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=", - "dev": true - } + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.3.1" } }, "sockjs": { - "version": "0.3.19", - "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.19.tgz", - "integrity": "sha512-V48klKZl8T6MzatbLlzzRNhMepEys9Y4oGFpypBFFn1gLI/QQ9HtLLyWJNbPlwGLelOVOEijUbTTJeLLI59jLw==", + "version": "0.3.24", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", + "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", "dev": true, "requires": { - "faye-websocket": "^0.10.0", - "uuid": "^3.0.1" + "faye-websocket": "^0.11.3", + "uuid": "^8.3.2", + "websocket-driver": "^0.7.4" } }, "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==", + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.6.1.tgz", + "integrity": "sha512-2g0tjOR+fRs0amxENLi/q5TiJTqY+WXFOzb5UwXndlK6TO3U/mirZznpx6w34HVMoc3g7cY24yC/ZMIYnDlfkw==", "dev": true, "requires": { - "debug": "^3.2.5", - "eventsource": "^1.0.7", - "faye-websocket": "~0.11.1", - "inherits": "^2.0.3", - "json3": "^3.3.2", - "url-parse": "^1.4.3" + "debug": "^3.2.7", + "eventsource": "^2.0.2", + "faye-websocket": "^0.11.4", + "inherits": "^2.0.4", + "url-parse": "^1.5.10" }, "dependencies": { "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "requires": { "ms": "^2.1.1" } - }, - "faye-websocket": { - "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" - } } } }, "socks": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.3.3.tgz", - "integrity": "sha512-o5t52PCNtVdiOvzMry7wU4aOqYWL0PeCXRWBEiJow4/i/wr+wpsJQ9awEu1EonLIqsfGd5qSgDdxEOvCdmBEpA==", + "version": "2.8.6", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.6.tgz", + "integrity": "sha512-pe4Y2yzru68lXCb38aAqRf5gvN8YdjP1lok5o0J7BOHljkyCGKVz7H3vpVIXKD27rj2giOJ7DwVyk/GWrPHDWA==", "dev": true, "requires": { - "ip": "1.1.5", - "smart-buffer": "^4.1.0" + "ip-address": "^9.0.5", + "smart-buffer": "^4.2.0" } }, "socks-proxy-agent": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-4.0.2.tgz", - "integrity": "sha512-NT6syHhI9LmuEMSK6Kd2V7gNv5KFZoLE7V5udWmn0de+3Mkj3UMA/AJPLyeNUVmElCurSHtUdM3ETpR3z770Wg==", + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.2.1.tgz", + "integrity": "sha512-a6KW9G+6B3nWZ1yB8G7pJwL3ggLy1uTzKAgCb7ttblwqdz9fMGJUuTy3uFzEP48FAs9FLILlmzDlE2JJhVQaXQ==", "dev": true, "requires": { - "agent-base": "~4.2.1", - "socks": "~2.3.2" + "agent-base": "^6.0.2", + "debug": "^4.3.3", + "socks": "^2.6.2" }, "dependencies": { - "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==", + "debug": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", + "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", "dev": true, "requires": { - "es6-promisify": "^5.0.0" + "ms": "^2.1.3" } + }, + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true } } }, - "sort-keys": { - "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" - } - }, "source-list-map": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", @@ -11134,14 +12285,32 @@ "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", "dev": true }, + "source-map-js": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-0.6.2.tgz", + "integrity": "sha512-/3GptzWzu0+0MBQFrDKzw/DvvMTUORvgY6k6jd/VS6iCR4RDTKWH6v6WPwQoUO8667uQEf9Oe38DxAYWY5F/Ug==", + "dev": true + }, "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==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-3.0.0.tgz", + "integrity": "sha512-GKGWqWvYr04M7tn8dryIWvb0s8YM41z82iQv01yBtIylgxax0CwvSy6gc2Y02iuXwEfGWRlMicH0nvms9UZphw==", "dev": true, "requires": { - "async": "^2.5.0", - "loader-utils": "^1.1.0" + "abab": "^2.0.5", + "iconv-lite": "^0.6.2", + "source-map-js": "^0.6.2" + }, + "dependencies": { + "iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } + } } }, "source-map-resolve": { @@ -11158,9 +12327,9 @@ } }, "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==", + "version": "0.5.19", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", + "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", "dev": true, "requires": { "buffer-from": "^1.0.0", @@ -11176,9 +12345,9 @@ } }, "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=", + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", + "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", "dev": true }, "sourcemap-codec": { @@ -11187,42 +12356,10 @@ "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", "dev": true }, - "spdx-correct": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", - "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", - "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", - "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==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "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==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", + "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", "dev": true, "requires": { "debug": "^4.1.0", @@ -11244,28 +12381,6 @@ "obuf": "^1.1.2", "readable-stream": "^3.0.6", "wbuf": "^1.7.3" - }, - "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==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } - } - }, - "speed-measure-webpack-plugin": { - "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" } }, "split-string": { @@ -11278,15 +12393,15 @@ } }, "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", "dev": true }, "sshpk": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", - "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.18.0.tgz", + "integrity": "sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ==", "dev": true, "requires": { "asn1": "~0.2.3", @@ -11298,15 +12413,22 @@ "jsbn": "~0.1.0", "safer-buffer": "^2.0.2", "tweetnacl": "~0.14.0" + }, + "dependencies": { + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", + "dev": true + } } }, "ssri": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-7.1.0.tgz", - "integrity": "sha512-77/WrDZUWocK0mvA5NTRQyveUf+wsrIc6vyrxpS8tVvYBcX215QbafrJR3KtkpskIzoFLqqNuuYQvxaMjXJ/0g==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", + "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", "dev": true, "requires": { - "figgy-pudding": "^3.5.1", "minipass": "^3.1.1" } }, @@ -11316,38 +12438,10 @@ "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", "dev": true }, - "static-eval": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/static-eval/-/static-eval-2.0.5.tgz", - "integrity": "sha512-nNbV6LbGtMBgv7e9LFkt5JV8RVlRsyJrphfAt9tOtBBW/SfnzZDf2KnS72an8e434A+9e/BmJuTxeGPvrAK7KA==", - "requires": { - "escodegen": "^1.11.1" - }, - "dependencies": { - "escodegen": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.1.tgz", - "integrity": "sha512-Bmt7NcRySdIfNPfU2ZoXDrrXsG9ZjvDxcAlMfDUgRBjLOWTuIACXPBFJH7Z+cLb40JeQco5toikyc9t9P8E9SQ==", - "requires": { - "esprima": "^4.0.1", - "estraverse": "^4.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.6.1" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "optional": true - } - } - }, "static-extend": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", - "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "integrity": "sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==", "dev": true, "requires": { "define-property": "^0.2.5", @@ -11357,314 +12451,134 @@ "define-property": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", "dev": true, "requires": { "is-descriptor": "^0.1.0" } - } - } - }, - "static-module": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/static-module/-/static-module-3.0.3.tgz", - "integrity": "sha512-RDaMYaI5o/ym0GkCqL/PlD1Pn216omp8fY81okxZ6f6JQxWW5tptOw9reXoZX85yt/scYvbWIt6uoszeyf+/MQ==", - "requires": { - "acorn-node": "^1.3.0", - "concat-stream": "~1.6.0", - "convert-source-map": "^1.5.1", - "duplexer2": "~0.1.4", - "escodegen": "~1.9.0", - "has": "^1.0.1", - "magic-string": "^0.22.4", - "merge-source-map": "1.0.4", - "object-inspect": "~1.4.0", - "readable-stream": "~2.3.3", - "scope-analyzer": "^2.0.1", - "shallow-copy": "~0.0.1", - "static-eval": "^2.0.2", - "through2": "~2.0.3" - }, - "dependencies": { - "magic-string": { - "version": "0.22.5", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.22.5.tgz", - "integrity": "sha512-oreip9rJZkzvA8Qzk9HFs8fZGF/u7H/gtrE8EN6RjKJ9kh2HlC+yQ2QezifqTZfGyiuAV0dRv5a+y/8gBb1m9w==", - "requires": { - "vlq": "^0.2.2" - } }, - "merge-source-map": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.0.4.tgz", - "integrity": "sha1-pd5GU42uhNQRTMXqArR3KmNGcB8=", + "is-descriptor": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.7.tgz", + "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==", + "dev": true, "requires": { - "source-map": "^0.5.6" + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" } - }, - "object-inspect": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.4.1.tgz", - "integrity": "sha512-wqdhLpfCUbEsoEwl3FXwGyv8ief1k/1aUdIPCqVnupM6e8l63BEJdiF/0swtn04/8p05tG/T0FrpTlfwvljOdw==" - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" } } }, "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "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" - } - }, - "stream-each": { - "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" - } + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==" }, - "stream-http": { - "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, + "stop-iteration-iterator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", + "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", "requires": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.3.6", - "to-arraybuffer": "^1.0.0", - "xtend": "^4.0.0" + "es-errors": "^1.3.0", + "internal-slot": "^1.1.0" } }, - "stream-shift": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", - "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", - "dev": true - }, "streamroller": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-2.2.4.tgz", - "integrity": "sha512-OG79qm3AujAM9ImoqgWEY1xG4HX+Lw+yY6qZj9R1K2mhF5bEmQ849wvrb+4vt4jLMLzwXttJlQbOdPOQVRv7DQ==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-3.1.5.tgz", + "integrity": "sha512-KFxaM7XT+irxvdqSP1LGLgNWbYN7ay5owZ3r/8t77p+EtSUAfUgtl7be3xtqtOmGUl9K9YPO2ca8133RlTjvKw==", "dev": true, "requires": { - "date-format": "^2.1.0", - "debug": "^4.1.1", + "date-format": "^4.0.14", + "debug": "^4.3.4", "fs-extra": "^8.1.0" }, "dependencies": { - "date-format": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/date-format/-/date-format-2.1.0.tgz", - "integrity": "sha512-bYQuGLeFxhkxNOF3rcMtiZxvCBAquGzZm6oWA1oZ0g2THUzivaRhv8uOhdr19LmoobSOLoIAxeUK2RdbM8IFTA==", - "dev": true - }, - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "debug": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", + "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", "dev": true, "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" + "ms": "^2.1.3" } - } - } - }, - "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 - }, - "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": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true }, - "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" - } + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true } } }, - "string.prototype.trimend": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.0.tgz", - "integrity": "sha512-EEJnGqa/xNfIg05SxiPSqRS7S9qwDhYts1TSLR1BQfYUfPe1stofgGKvwERK9+9yf+PpfBMlpBaCHucXGPQfUA==", - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" - } - }, - "string.prototype.trimleft": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.2.tgz", - "integrity": "sha512-gCA0tza1JBvqr3bfAIFJGqfdRTyPae82+KTnm3coDXkZN9wnuW3HjGgN386D7hfv5CHQYCI022/rJPVlqXyHSw==", - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5", - "string.prototype.trimstart": "^1.0.0" - } - }, - "string.prototype.trimright": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.2.tgz", - "integrity": "sha512-ZNRQ7sY3KroTaYjRS6EbNiiHrOkjihL9aQE/8gfQ4DtAC/aEBRHFJa44OmoWxGGqXuJlfKkZW4WcXErGr+9ZFg==", - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5", - "string.prototype.trimend": "^1.0.0" - } - }, - "string.prototype.trimstart": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.0.tgz", - "integrity": "sha512-iCP8g01NFYiiBOnwG1Xc3WZLyoo+RuBymwIlWncShXDDJYWN6DbnM3odslBJdgCdRlq94B5s63NWAZlcn2CS4w==", + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" } }, "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, "requires": { - "safe-buffer": "~5.1.0" + "safe-buffer": "~5.2.0" } }, "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "requires": { - "ansi-regex": "^2.0.0" + "ansi-regex": "^5.0.1" } }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true - }, "strip-eof": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "integrity": "sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==", + "dev": true + }, + "strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true }, "style-loader": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-1.0.0.tgz", - "integrity": "sha512-B0dOCFwv7/eY31a5PCieNwMgMhVGFe9w+rh7s/Bx8kfFkrth9zfTZquoYvdw8URgiqxObQKcpW51Ugz1HjfdZw==", - "dev": true, - "requires": { - "loader-utils": "^1.2.3", - "schema-utils": "^2.0.1" - }, - "dependencies": { - "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" - } - }, - "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 - }, - "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, - "requires": { - "ajv": "^6.12.0", - "ajv-keywords": "^3.4.1" - } - } - } + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-3.2.1.tgz", + "integrity": "sha512-1k9ZosJCRFaRbY6hH49JFlRB0fVSbmnyq1iTPjNxUmGVjBNEmwrrHPenhlp+Lgo51BojHSf6pl2FcqYaN3PfVg==", + "dev": true }, "stylehacks": { - "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==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-5.1.1.tgz", + "integrity": "sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==", "dev": true, "requires": { - "browserslist": "^4.0.0", - "postcss": "^7.0.0", - "postcss-selector-parser": "^3.0.0" - }, - "dependencies": { - "postcss-selector-parser": { - "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", - "uniq": "^1.0.1" - } - } + "browserslist": "^4.21.4", + "postcss-selector-parser": "^6.0.4" } }, "stylus": { - "version": "0.54.7", - "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.54.7.tgz", - "integrity": "sha512-Yw3WMTzVwevT6ZTrLCYNHAFmanMxdylelL3hkWNgPMeTCpMwpV3nXjpOHuBXtFv7aiO2xRuQS6OoAdgkNcSNug==", + "version": "0.54.8", + "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.54.8.tgz", + "integrity": "sha512-vr54Or4BZ7pJafo2mpf0ZcwA74rpuYCZbxrHBsH8kbcXOwSfvBFwsRfpGO5OD5fhG5HDCFW737PKaawI7OqEAg==", "dev": true, "requires": { "css-parse": "~2.0.0", "debug": "~3.1.0", - "glob": "^7.1.3", - "mkdirp": "~0.5.x", + "glob": "^7.1.6", + "mkdirp": "~1.0.4", "safer-buffer": "^2.1.2", "sax": "~1.2.4", - "semver": "^6.0.0", + "semver": "^6.3.0", "source-map": "^0.7.3" }, "dependencies": { @@ -11680,29 +12594,41 @@ "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + }, + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true } } }, "stylus-loader": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-3.0.2.tgz", - "integrity": "sha512-+VomPdZ6a0razP+zinir61yZgpw2NfljeSsdUF5kJuEzlo3khXhY19Fn6l8QQz1GRJGtMCo8nG5C04ePyV7SUA==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-6.1.0.tgz", + "integrity": "sha512-qKO34QCsOtSJrXxQQmXsPeaVHh6hMumBAFIoJTcsSr2VzrA6o/CW9HCGR8spCjzJhN8oKQHdj/Ytx0wwXyElkw==", "dev": true, "requires": { - "loader-utils": "^1.0.2", - "lodash.clonedeep": "^4.5.0", - "when": "~3.6.x" + "fast-glob": "^3.2.5", + "klona": "^2.0.4", + "normalize-path": "^3.0.0" } }, "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "requires": { - "has-flag": "^3.0.0" + "has-flag": "^4.0.0" } }, "svg-to-pdfkit": { @@ -11714,120 +12640,135 @@ } }, "svgo": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-1.3.2.tgz", - "integrity": "sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw==", + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", + "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", "dev": true, "requires": { - "chalk": "^2.4.1", - "coa": "^2.0.2", - "css-select": "^2.0.0", - "css-select-base-adapter": "^0.1.1", - "css-tree": "1.0.0-alpha.37", - "csso": "^4.0.2", - "js-yaml": "^3.13.1", - "mkdirp": "~0.5.1", - "object.values": "^1.1.0", - "sax": "~1.2.4", - "stable": "^0.1.8", - "unquote": "~1.1.1", - "util.promisify": "~1.0.0" + "@trysound/sax": "0.2.0", + "commander": "^7.2.0", + "css-select": "^4.1.3", + "css-tree": "^1.1.3", + "csso": "^4.2.0", + "picocolors": "^1.0.0", + "stable": "^0.1.8" + }, + "dependencies": { + "commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "dev": true + } } }, "symbol-observable": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", - "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-4.0.0.tgz", + "integrity": "sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==", "dev": true }, + "table": { + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/table/-/table-6.9.0.tgz", + "integrity": "sha512-9kY+CygyYM6j02t5YFHbNz2FN5QmYGv9zAjVp4lCDjlCw7amdckXlEt/bjMhUIfj4ThGRE4gCUH5+yGnNuPo5A==", + "dev": true, + "requires": { + "ajv": "^8.0.1", + "lodash.truncate": "^4.4.2", + "slice-ansi": "^4.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1" + } + }, "tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.2.tgz", + "integrity": "sha512-Re10+NauLTMCudc7T5WLFLAwDhQ0JWdrMK+9B2M8zR5hRExKmsRDCBA7/aV/pNJFltmBFO5BAMlQFi/vq3nKOg==", "dev": true }, "tar": { - "version": "4.4.13", - "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.13.tgz", - "integrity": "sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA==", + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", "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" + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" }, "dependencies": { - "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": { - "minipass": "^2.6.0" - } - }, "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" - } + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "dev": true }, "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true } } }, "terser": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.5.1.tgz", - "integrity": "sha512-lH9zLIbX8PRBEFCTvfHGCy0s9HEKnNso1Dx9swSopF3VUnFLB8DpQ61tHxoofovNC/sG0spajJM3EIIRSTByiQ==", + "version": "5.14.2", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.14.2.tgz", + "integrity": "sha512-oL0rGeM/WFQCUd0y2QrWxYnq7tfSuKBiqTjRPWrRgB46WD/kiwHwF8T23z78H6Q6kGCuuHcPB+KULHRdxvVGQA==", "dev": true, "requires": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", "commander": "^2.20.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.12" + "source-map-support": "~0.5.20" }, "dependencies": { + "acorn": { + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", + "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", + "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 + }, + "source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } } } }, "terser-webpack-plugin": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-2.3.3.tgz", - "integrity": "sha512-gWHkaGzGYjmDoYxksFZynWTzvXOAjQ5dd7xuTMYlv4zpWlLSb6v0QLSZjELzP5dMs1ox30O1BIPs9dgqlMHuLQ==", + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.1.4.tgz", + "integrity": "sha512-C2WkFwstHDhVEmsmlCxrXUtVklS+Ir1A7twrYzrDrQQOIMOaVAYykaoo/Aq1K0QRkMoY2hhvDQY1cm4jnIMFwA==", "dev": true, "requires": { - "cacache": "^13.0.1", - "find-cache-dir": "^3.2.0", - "jest-worker": "^25.1.0", - "p-limit": "^2.2.2", - "schema-utils": "^2.6.4", - "serialize-javascript": "^2.1.2", + "jest-worker": "^27.0.2", + "p-limit": "^3.1.0", + "schema-utils": "^3.0.0", + "serialize-javascript": "^6.0.0", "source-map": "^0.6.1", - "terser": "^4.4.3", - "webpack-sources": "^1.4.3" + "terser": "^5.7.0" }, "dependencies": { "ajv": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz", - "integrity": "sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==", + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -11836,114 +12777,27 @@ "uri-js": "^4.2.2" } }, - "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 - }, - "find-cache-dir": { - "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", - "pkg-dir": "^4.1.0" - } - }, - "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" - } - }, - "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 - }, - "jest-worker": { - "version": "25.2.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.2.1.tgz", - "integrity": "sha512-IHnpekk8H/hCUbBlfeaPZzU6v75bqwJp3n4dUrQuQOAgOneI4tx3jV2o8pvlXnDfcRsfkFIUD//HWXpCmR+evQ==", - "dev": true, - "requires": { - "merge-stream": "^2.0.0", - "supports-color": "^7.0.0" - } - }, - "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" - } - }, - "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, - "requires": { - "semver": "^6.0.0" - } - }, - "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, - "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==", + "ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", "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==", + "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 }, - "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" - } - }, "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==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", "dev": true, "requires": { - "ajv": "^6.12.0", - "ajv-keywords": "^3.4.1" + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" } }, "source-map": { @@ -11951,31 +12805,20 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "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" - } } } }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true + }, "through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" - }, - "through2": { - "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.3.6", - "xtend": "~4.0.1" - } + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true }, "thunky": { "version": "1.1.0", @@ -11983,21 +12826,6 @@ "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", "dev": true }, - "timers-browserify": { - "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" - } - }, - "timsort": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/timsort/-/timsort-0.3.0.tgz", - "integrity": "sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=", - "dev": true - }, "tiny-inflate": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/tiny-inflate/-/tiny-inflate-1.0.3.tgz", @@ -12012,28 +12840,10 @@ "os-tmpdir": "~1.0.2" } }, - "to-array": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz", - "integrity": "sha1-F+bBH3PdTz10zaek/zI46a2b+JA=", - "dev": true - }, - "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 - }, - "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 - }, "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=", + "integrity": "sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==", "dev": true, "requires": { "kind-of": "^3.0.2" @@ -12042,7 +12852,7 @@ "kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dev": true, "requires": { "is-buffer": "^1.1.5" @@ -12072,9 +12882,9 @@ } }, "toidentifier": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", - "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==" }, "tough-cookie": { "version": "2.5.0", @@ -12084,6 +12894,14 @@ "requires": { "psl": "^1.1.28", "punycode": "^2.1.1" + }, + "dependencies": { + "punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true + } } }, "tree-kill": { @@ -12106,64 +12924,140 @@ } }, "tslib": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.1.tgz", - "integrity": "sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==" + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==" }, "tslint": { - "version": "5.18.0", - "resolved": "https://registry.npmjs.org/tslint/-/tslint-5.18.0.tgz", - "integrity": "sha512-Q3kXkuDEijQ37nXZZLKErssQVnwCV/+23gFEMROi8IlbaBG6tXqLPQJ5Wjcyt/yHPKBC+hD5SzuGaMora+ZS6w==", + "version": "6.1.3", + "resolved": "https://registry.npmjs.org/tslint/-/tslint-6.1.3.tgz", + "integrity": "sha512-IbR4nkT96EQOvKE2PW/djGz8iGNeJ4rF2mBfiYaR/nvUWYKJhLwimoJKgjIFEIDibBtOevj7BqCRL4oHeWWUCg==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", "builtin-modules": "^1.1.1", "chalk": "^2.3.0", "commander": "^2.12.1", - "diff": "^3.2.0", + "diff": "^4.0.1", "glob": "^7.1.1", "js-yaml": "^3.13.1", "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", + "mkdirp": "^0.5.3", "resolve": "^1.3.2", "semver": "^5.3.0", - "tslib": "^1.8.0", + "tslib": "^1.13.0", "tsutils": "^2.29.0" }, "dependencies": { - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "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" + } + }, + "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" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "dev": true }, + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "requires": { + "minimist": "^1.2.6" + } + }, "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true + }, + "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" + } + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", "dev": true + }, + "tsutils": { + "version": "2.29.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", + "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==", + "dev": true, + "requires": { + "tslib": "^1.8.1" + } } } }, "tsutils": { - "version": "2.29.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", - "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==", + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", "dev": true, "requires": { "tslib": "^1.8.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + } } }, - "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 - }, "tunnel-agent": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", "dev": true, "requires": { "safe-buffer": "^5.0.1" @@ -12172,26 +13066,22 @@ "tweetnacl": { "version": "0.14.5", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", "dev": true }, - "type": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", - "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==" - }, "type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, "requires": { - "prelude-ls": "~1.1.2" + "prelude-ls": "^1.2.1" } }, "type-fest": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", - "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true }, "type-is": { @@ -12203,80 +13093,59 @@ "mime-types": "~2.1.24" } }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" - }, "typescript": { - "version": "3.7.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.7.5.tgz", - "integrity": "sha512-/P5lkRXkWHNAbcJIiHPfRoKqyd7bsyCma1hZNUGfn20qm64T6ZBlrzprymeu918H+mB/0rIg2gGK/BXkhhYgBw==", + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.3.5.tgz", + "integrity": "sha512-DqQgihaQ9cUrskJo9kIyW/+g0Vxsk8cDtZ52a3NGh0YNTfpUSArXSohyUGnvbPazEPLu398C0UxmKSOrPumUzA==", "dev": true }, "ua-parser-js": { - "version": "0.7.21", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.21.tgz", - "integrity": "sha512-+O8/qh/Qj8CgC6eYBVBykMrNtp5Gebn4dlGD/kKXVkJNDwyrAwSIqwz8CDf+tsAIWVycKcku6gIXJ0qwx/ZXaQ==", + "version": "0.7.40", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.40.tgz", + "integrity": "sha512-us1E3K+3jJppDBa3Tl0L3MOJiGhe1C6P0+nIvQAFYbxlMAx0h81eOwLmU57xgqToduDDPx3y5QsdjPfDu+FgOQ==", "dev": true }, "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==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz", + "integrity": "sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==", "dev": true }, "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==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", "dev": true, "requires": { - "unicode-canonical-property-names-ecmascript": "^1.0.4", - "unicode-property-aliases-ecmascript": "^1.0.4" + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" } }, "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==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.2.0.tgz", + "integrity": "sha512-4IehN3V/+kkr5YeSSDDQG8QLqO26XpL2XP3GQtqwlT/QYSECAwFztxVHjlbh0+gjJ3XmNLS0zDsbgs9jWKExLg==", "dev": true }, "unicode-properties": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/unicode-properties/-/unicode-properties-1.3.1.tgz", - "integrity": "sha512-nIV3Tf3LcUEZttY/2g4ZJtGXhWwSkuLL+rCu0DIAMbjyVPj+8j5gNVz4T/sVbnQybIsd5SFGkPKg/756OY6jlA==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/unicode-properties/-/unicode-properties-1.4.1.tgz", + "integrity": "sha512-CLjCCLQ6UuMxWnbIylkisbRj31qxHPAurvena/0iwSVbQ2G1VY5/HjV0IRabOEbDHlzZlRdCrD4NhB0JtU40Pg==", "requires": { "base64-js": "^1.3.0", "unicode-trie": "^2.0.0" - }, - "dependencies": { - "pako": { - "version": "0.2.9", - "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", - "integrity": "sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU=" - }, - "unicode-trie": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-trie/-/unicode-trie-2.0.0.tgz", - "integrity": "sha512-x7bc76x0bm4prf1VLg79uhAzKw8DVboClSN5VxJuQ+LKDOVEW9CdH+VY7SP+vX7xCYQqzzgQpFqz15zeLvAtZQ==", - "requires": { - "pako": "^0.2.5", - "tiny-inflate": "^1.0.0" - } - } } }, "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==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", "dev": true }, "unicode-trie": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unicode-trie/-/unicode-trie-1.0.0.tgz", - "integrity": "sha512-v5raLKsobbFbWLMoX9+bChts/VhPPj3XpkNr/HbqkirXR1DPk8eo9IYKyvk0MQZFkaoRsFj2Rmaqgi2rfAZYtA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-trie/-/unicode-trie-2.0.0.tgz", + "integrity": "sha512-x7bc76x0bm4prf1VLg79uhAzKw8DVboClSN5VxJuQ+LKDOVEW9CdH+VY7SP+vX7xCYQqzzgQpFqz15zeLvAtZQ==", "requires": { "pako": "^0.2.5", "tiny-inflate": "^1.0.0" @@ -12285,7 +13154,7 @@ "pako": { "version": "0.2.9", "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", - "integrity": "sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU=" + "integrity": "sha512-NUcwaKxUxWrZLpDG+z/xZaCgQITkA/Dv4V/T6bw7VON6l1Xz/VnrBqrYjZQ12TamKHzITTfOEIYUj48y2KXImA==" } } }, @@ -12299,18 +13168,20 @@ "get-value": "^2.0.6", "is-extendable": "^0.1.1", "set-value": "^2.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "dev": true + } } }, "uniq": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", - "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", - "dev": true - }, - "uniqs": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/uniqs/-/uniqs-2.0.0.tgz", - "integrity": "sha1-/+3ks2slKQaW5uFl1KWe25mOawI=", + "integrity": "sha512-Gw+zz50YNKPDKXs+9d+aKAjVwpjNwqzvNpLigIruT4HA9lMZNdMqs9x07kKHB/L9WRzqp4+DlTU5s4wG2esdoA==", "dev": true }, "unique-filename": { @@ -12331,28 +13202,6 @@ "imurmurhash": "^0.1.4" } }, - "universal-analytics": { - "version": "0.4.20", - "resolved": "https://registry.npmjs.org/universal-analytics/-/universal-analytics-0.4.20.tgz", - "integrity": "sha512-gE91dtMvNkjO+kWsPstHRtSwHXz0l2axqptGYp5ceg4MsuurloM0PU3pdOfpb5zBXUvyjT4PwhWK2m39uczZuw==", - "dev": true, - "requires": { - "debug": "^3.0.0", - "request": "^2.88.0", - "uuid": "^3.0.0" - }, - "dependencies": { - "debug": { - "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" - } - } - } - }, "universalify": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", @@ -12362,18 +13211,12 @@ "unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "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": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==" }, "unset-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", - "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "integrity": "sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==", "dev": true, "requires": { "has-value": "^0.3.1", @@ -12383,7 +13226,7 @@ "has-value": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", - "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "integrity": "sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==", "dev": true, "requires": { "get-value": "^2.0.3", @@ -12394,7 +13237,7 @@ "isobject": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==", "dev": true, "requires": { "isarray": "1.0.0" @@ -12405,7 +13248,13 @@ "has-values": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", + "integrity": "sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", "dev": true } } @@ -12416,43 +13265,53 @@ "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", "dev": true }, + "update-browserslist-db": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz", + "integrity": "sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==", + "dev": true, + "requires": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + } + }, "uri-js": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", - "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "dev": true, "requires": { "punycode": "^2.1.0" + }, + "dependencies": { + "punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true + } } }, "urix": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "integrity": "sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==", "dev": true }, "url": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.4.tgz", + "integrity": "sha512-oCwdVC7mTuWiPyjLUz/COz5TLk6wgp0RCsN+wHZ2Ekneac9w8uuV0njcbbie2ME+Vs+d6duwmYuR3HgQXs1fOg==", "dev": true, "requires": { - "punycode": "1.3.2", - "querystring": "0.2.0" - }, - "dependencies": { - "punycode": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", - "dev": true - } + "punycode": "^1.4.1", + "qs": "^6.12.3" } }, "url-parse": { - "version": "1.4.7", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.4.7.tgz", - "integrity": "sha512-d3uaVyzDB9tQoSXFvuSUNFibTd9zxd2bkVrDRvF5TmvWWQwqE4lgYJ5m+x1DbecWkw+LK4RNl2CU1hHuOKPVlg==", + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", "dev": true, "requires": { "querystringify": "^2.1.1", @@ -12465,74 +13324,33 @@ "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", "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=", - "dev": true - } - } - }, "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "util-promisify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/util-promisify/-/util-promisify-2.1.0.tgz", - "integrity": "sha1-PCI2R2xNMsX/PEcAKt18E7moKlM=", - "dev": true, - "requires": { - "object.getownpropertydescriptors": "^2.0.3" - } - }, - "util.promisify": { - "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" - } + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true }, "utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==" }, "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", "dev": true }, - "validate-npm-package-license": { - "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", - "spdx-expression-parse": "^3.0.0" - } + "v8-compile-cache": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.4.0.tgz", + "integrity": "sha512-ocyWc3bAHBB/guyqJQVI5o4BZkPhznPYUG2ea80Gond/BgNWpap8TOmLSeeQG7bnh2KMISxskdADG59j7zruhw==", + "dev": true }, "validate-npm-package-name": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", - "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", + "integrity": "sha512-M6w37eVCMMouJ9V/sdPGnC5H4uDr73/+xdq0FBLO3TFFX1+7wiUY6Es328NN+y43tmY+doUdN9g9J21vqB7iLw==", "dev": true, "requires": { "builtins": "^1.0.3" @@ -12541,18 +13359,12 @@ "vary": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "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-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==" }, "verror": { "version": "1.10.0", "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", "dev": true, "requires": { "assert-plus": "^1.0.0", @@ -12560,48 +13372,370 @@ "extsprintf": "^1.2.0" } }, - "vlq": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/vlq/-/vlq-0.2.3.tgz", - "integrity": "sha512-DRibZL6DsNhIgYQ+wNdWDL2SL3bKPlVrRiBqV5yuMm++op8W4kGFtaQfCs4KEJn0wBZcHVHJ3eoywX8983k1ow==" - }, - "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 - }, "void-elements": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", - "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=", + "integrity": "sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==", "dev": true }, "watchpack": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.6.1.tgz", - "integrity": "sha512-+IF9hfUFOrYOOaKyfaI7h7dquUIOgyEMoQMLA7OP5FxegKA2+XdXThAZ9TU2kucfhDH7rfMHs1oPYziVGWRnZA==", + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.4.tgz", + "integrity": "sha512-c5EGNOiyxxV5qmTtAB7rbiXxi1ooX1pQKMLX/MIabJjRA0SJBQOjKF+KSVfHkr9U1cADPon0mRiVe/riyaiDUA==", "dev": true, "requires": { - "chokidar": "^2.1.8", - "graceful-fs": "^4.1.2", - "neo-async": "^2.5.0" + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + } + }, + "wbuf": { + "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" + } + }, + "wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", + "dev": true, + "requires": { + "defaults": "^1.0.3" + } + }, + "webdriver-js-extender": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/webdriver-js-extender/-/webdriver-js-extender-2.1.0.tgz", + "integrity": "sha512-lcUKrjbBfCK6MNsh7xaY2UAUmZwe+/ib03AjVOpFobX4O7+83BUveSrLfU0Qsyb1DaKJdQRbuU+kM9aZ6QUhiQ==", + "dev": true, + "requires": { + "@types/selenium-webdriver": "^3.0.0", + "selenium-webdriver": "^3.0.1" + } + }, + "webdriver-manager": { + "version": "12.1.9", + "resolved": "https://registry.npmjs.org/webdriver-manager/-/webdriver-manager-12.1.9.tgz", + "integrity": "sha512-Yl113uKm8z4m/KMUVWHq1Sjtla2uxEBtx2Ue3AmIlnlPAKloDn/Lvmy6pqWCUersVISpdMeVpAaGbNnvMuT2LQ==", + "dev": true, + "requires": { + "adm-zip": "^0.5.2", + "chalk": "^1.1.1", + "del": "^2.2.0", + "glob": "^7.0.3", + "ini": "^1.3.4", + "minimist": "^1.2.0", + "q": "^1.4.1", + "request": "^2.87.0", + "rimraf": "^2.5.2", + "semver": "^5.3.0", + "xml2js": "^0.4.17" }, "dependencies": { - "anymatch": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "dev": true + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", "dev": true, "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - }, + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true + }, + "ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "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.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", + "dev": true + } + } + }, + "webpack": { + "version": "5.50.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.50.0.tgz", + "integrity": "sha512-hqxI7t/KVygs0WRv/kTgUW8Kl3YC81uyWQSo/7WUs5LsuRw0htH/fCwbVBGCuiX/t4s7qzjXFcf41O8Reiypag==", + "dev": true, + "requires": { + "@types/eslint-scope": "^3.7.0", + "@types/estree": "^0.0.50", + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/wasm-edit": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "acorn": "^8.4.1", + "acorn-import-assertions": "^1.7.6", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.8.0", + "es-module-lexer": "^0.7.1", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.4", + "json-parse-better-errors": "^1.0.2", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.1.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.1.3", + "watchpack": "^2.2.0", + "webpack-sources": "^3.2.0" + }, + "dependencies": { + "@types/estree": { + "version": "0.0.50", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.50.tgz", + "integrity": "sha512-C6N5s2ZFtuZRj54k2/zyRhNDjJwwcViAM3Nbm8zjBpbqAdZ00mr0CFxvSKeO8Y/e03WVFLpQMdHYVfUd6SB+Hw==", + "dev": true + }, + "acorn": { + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", + "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", + "dev": true + }, + "acorn-import-assertions": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz", + "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==", + "dev": true + }, + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "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" + } + }, + "ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "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 + }, + "schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + }, + "webpack-sources": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.3.3.tgz", + "integrity": "sha512-yd1RBzSGanHkitROoPFd6qsrxt+oFhg/129YzheDGqeustzX0vTZJZsSsQjVQC4yzBQ56K55XU8gaNCtIzOnTg==", + "dev": true + } + } + }, + "webpack-dev-middleware": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.0.0.tgz", + "integrity": "sha512-9zng2Z60pm6A98YoRcA0wSxw1EYn7B7y5owX/Tckyt9KGyULTkLtiavjaXlWqOMkM0YtqGgL3PvMOFgyFLq8vw==", + "dev": true, + "requires": { + "colorette": "^1.2.2", + "mem": "^8.1.1", + "memfs": "^3.2.2", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^3.0.0" + }, + "dependencies": { + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "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" + } + }, + "ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "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 + }, + "schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "webpack-dev-server": { + "version": "3.11.3", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.11.3.tgz", + "integrity": "sha512-3x31rjbEQWKMNzacUZRE6wXvUFuGpH7vr0lIEbYpMAG9BOxi0928QU1BBswOAP3kg3H1O4hiS+sq4YyAn6ANnA==", + "dev": true, + "requires": { + "ansi-html-community": "0.0.8", + "bonjour": "^3.5.0", + "chokidar": "^2.1.8", + "compression": "^1.7.4", + "connect-history-api-fallback": "^1.6.0", + "debug": "^4.1.1", + "del": "^4.1.1", + "express": "^4.17.1", + "html-entities": "^1.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.8", + "opn": "^5.5.0", + "p-retry": "^3.0.1", + "portfinder": "^1.0.26", + "schema-utils": "^1.0.0", + "selfsigned": "^1.10.8", + "semver": "^6.3.0", + "serve-index": "^1.9.1", + "sockjs": "^0.3.21", + "sockjs-client": "^1.5.0", + "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": "^13.3.2" + }, + "dependencies": { + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "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" + } + }, + "ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "dev": true + }, + "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" + } + }, + "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=", + "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", "dev": true, "requires": { "remove-trailing-separator": "^1.0.1" @@ -12609,6 +13743,15 @@ } } }, + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==", + "dev": true, + "requires": { + "array-uniq": "^1.0.1" + } + }, "binary-extensions": { "version": "1.13.1", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", @@ -12631,6 +13774,17 @@ "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": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } } }, "chokidar": { @@ -12653,1526 +13807,321 @@ "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=", + "cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", "dev": true, "requires": { - "is-extendable": "^0.1.0" + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "dev": true + }, + "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" + } + } + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "del": { + "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", + "is-path-cwd": "^2.0.0", + "is-path-in-cwd": "^2.0.0", + "p-map": "^2.0.0", + "pify": "^4.0.1", + "rimraf": "^2.6.3" + }, + "dependencies": { + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "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 + }, "fill-range": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", "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": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "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" } }, "fsevents": { - "version": "1.2.12", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.12.tgz", - "integrity": "sha512-Ggd/Ktt7E7I8pxZRbGIs7vwqAPscSESMrCSkx2FtWeqmheJgCo2R74fTsZFCifr0VTPwqRpPv17+6b8Zp7th0Q==", + "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, "requires": { "bindings": "^1.5.0", - "nan": "^2.12.1", - "node-pre-gyp": "*" + "nan": "^2.12.1" + } + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==", + "dev": true, + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" }, "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, + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==", "dev": true, - "optional": true, "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" + "is-extglob": "^2.1.0" } - }, - "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 } } }, + "globby": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", + "integrity": "sha512-KVbFv2TQtbzCoxAnfD6JcHZTYCzyliEaaeM/gH8qQdkKr5s0OP9scEgvdcngyk7AVdY6YVW/TJHd+lQ/Df3Daw==", + "dev": true, + "requires": { + "array-union": "^1.0.1", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "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=", + "integrity": "sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==", "dev": true, "requires": { "binary-extensions": "^1.0.0" } }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "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": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", + "dev": true + }, "is-number": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", "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": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } } }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "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-buffer": "^1.1.5" + "is-path-inside": "^2.1.0" } }, - "readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "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": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" + "path-is-inside": "^1.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=", + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "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 + }, + "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": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - } - } - }, - "wbuf": { - "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" - } - }, - "wcwidth": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", - "dev": true, - "requires": { - "defaults": "^1.0.3" - } - }, - "webdriver-js-extender": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/webdriver-js-extender/-/webdriver-js-extender-2.1.0.tgz", - "integrity": "sha512-lcUKrjbBfCK6MNsh7xaY2UAUmZwe+/ib03AjVOpFobX4O7+83BUveSrLfU0Qsyb1DaKJdQRbuU+kM9aZ6QUhiQ==", - "dev": true, - "requires": { - "@types/selenium-webdriver": "^3.0.0", - "selenium-webdriver": "^3.0.1" - } - }, - "webpack": { - "version": "4.41.2", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.41.2.tgz", - "integrity": "sha512-Zhw69edTGfbz9/8JJoyRQ/pq8FYUoY0diOXqW0T6yhgdhCv6wr0hra5DwwWexNRns2Z2+gsnrNcbe9hbGBgk/A==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-module-context": "1.8.5", - "@webassemblyjs/wasm-edit": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5", - "acorn": "^6.2.1", - "ajv": "^6.10.2", - "ajv-keywords": "^3.4.1", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^4.1.0", - "eslint-scope": "^4.0.3", - "json-parse-better-errors": "^1.0.2", - "loader-runner": "^2.4.0", - "loader-utils": "^1.2.3", - "memory-fs": "^0.4.1", - "micromatch": "^3.1.10", - "mkdirp": "^0.5.1", - "neo-async": "^2.6.1", - "node-libs-browser": "^2.2.1", - "schema-utils": "^1.0.0", - "tapable": "^1.1.3", - "terser-webpack-plugin": "^1.4.1", - "watchpack": "^1.6.0", - "webpack-sources": "^1.4.1" - }, - "dependencies": { - "acorn": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", - "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", - "dev": true - }, - "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", - "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" - } - }, - "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" - } - }, - "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true - }, - "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" - } - }, - "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 - }, - "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, - "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", - "source-map": "^0.6.1", - "terser": "^4.1.2", - "webpack-sources": "^1.4.0", - "worker-farm": "^1.7.0" - } - } - } - }, - "webpack-dev-middleware": { - "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", - "mkdirp": "^0.5.1", - "range-parser": "^1.2.1", - "webpack-log": "^2.0.0" - }, - "dependencies": { - "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" - } - }, - "mime": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.4.tgz", - "integrity": "sha512-LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA==", - "dev": true - } - } - }, - "webpack-dev-server": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.9.0.tgz", - "integrity": "sha512-E6uQ4kRrTX9URN9s/lIbqTAztwEPdvzVrcmHE8EQ9YnuT9J8Es5Wrd8n9BKg1a0oZ5EgEke/EQFgUsp18dSTBw==", - "dev": true, - "requires": { - "ansi-html": "0.0.7", - "bonjour": "^3.5.0", - "chokidar": "^2.1.8", - "compression": "^1.7.4", - "connect-history-api-fallback": "^1.6.0", - "debug": "^4.1.1", - "del": "^4.1.1", - "express": "^4.17.1", - "html-entities": "^1.2.1", - "http-proxy-middleware": "0.19.1", - "import-local": "^2.0.0", - "internal-ip": "^4.3.0", - "ip": "^1.1.5", - "is-absolute-url": "^3.0.3", - "killable": "^1.0.1", - "loglevel": "^1.6.4", - "opn": "^5.5.0", - "p-retry": "^3.0.1", - "portfinder": "^1.0.25", - "schema-utils": "^1.0.0", - "selfsigned": "^1.10.7", - "semver": "^6.3.0", - "serve-index": "^1.9.1", - "sockjs": "0.3.19", - "sockjs-client": "1.4.0", - "spdy": "^4.0.1", - "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" - }, - "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" - } - } + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" } }, - "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==", + "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-flatten": "^1.1.0", + "arr-diff": "^4.0.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", + "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", - "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" + "to-regex": "^3.0.2" } }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "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" + "minimist": "^1.2.6" } }, - "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 - } - } - }, - "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-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=", + "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": { - "binary-extensions": "^1.0.0" + "p-try": "^2.0.0" } }, - "is-number": { + "p-locate": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "dev": true, "requires": { - "kind-of": "^3.0.2" + "p-limit": "^2.0.0" } }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "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 + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "dev": true + }, + "readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "dev": true, "requires": { - "is-buffer": "^1.1.5" + "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" } }, "readdirp": { @@ -14186,6 +14135,84 @@ "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" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "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, + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + }, + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "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" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "dev": true + }, + "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" + } + } + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, "supports-color": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", @@ -14198,12 +14225,96 @@ "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=", + "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", "dev": true, "requires": { "is-number": "^3.0.0", "repeat-string": "^1.6.1" } + }, + "webpack-dev-middleware": { + "version": "3.7.3", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.7.3.tgz", + "integrity": "sha512-djelc/zGiz9nZj/U7PTBi2ViorGJXEWo/3ltkPbDyxCXhhEXkW0ce99falaok4TPj+AsxLiXJR0EBOb0zh9fKQ==", + "dev": true, + "requires": { + "memory-fs": "^0.4.1", + "mime": "^2.4.4", + "mkdirp": "^0.5.1", + "range-parser": "^1.2.1", + "webpack-log": "^2.0.0" + } + }, + "wrap-ansi": { + "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==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "dev": true + }, + "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" + } + } + } + }, + "ws": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.3.tgz", + "integrity": "sha512-jmTjYU0j60B+vHey6TfR3Z7RD61z/hmxBS3VMSGIrroOWXQEneK1zNuotOUrGyBHQj0yrpsLHPWtigEFd13ndA==", + "dev": true, + "requires": { + "async-limiter": "~1.0.0" + } + }, + "y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "dev": true + }, + "yargs": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "dev": true, + "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" + } + }, + "yargs-parser": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } } } }, @@ -14215,15 +14326,30 @@ "requires": { "ansi-colors": "^3.0.0", "uuid": "^3.3.2" + }, + "dependencies": { + "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 + }, + "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==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", + "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", "dev": true, "requires": { - "lodash": "^4.17.15" + "clone-deep": "^4.0.1", + "wildcard": "^2.0.0" } }, "webpack-sources": { @@ -14245,21 +14371,21 @@ } }, "webpack-subresource-integrity": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-1.3.4.tgz", - "integrity": "sha512-6XbGYzjh30cGQT/NsC+9IAkJP8IL7/t47sbwR5DLSsamiD56Rwv4/+hsgEHsviPvrEFZ0JRAQtCRN3UsR2Pw9g==", + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-1.5.2.tgz", + "integrity": "sha512-GBWYBoyalbo5YClwWop9qe6Zclp8CIXYGIz12OPclJhIrSplDxs1Ls1JDMH8xBPPrg1T6ISaTW9Y6zOrwEiAzw==", "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==", + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", + "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", "dev": true, "requires": { - "http-parser-js": ">=0.4.0 <0.4.11", + "http-parser-js": ">=0.5.1", "safe-buffer": ">=5.1.0", "websocket-extensions": ">=0.1.1" } @@ -14270,96 +14396,100 @@ "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", "dev": true }, - "when": { - "version": "3.6.4", - "resolved": "https://registry.npmjs.org/when/-/when-3.6.4.tgz", - "integrity": "sha1-RztRfsFZ4rhQBUl6E5g/CVQS404=", - "dev": true - }, "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "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" } }, - "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 + "which-boxed-primitive": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", + "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", + "requires": { + "is-bigint": "^1.1.0", + "is-boolean-object": "^1.2.1", + "is-number-object": "^1.1.1", + "is-string": "^1.1.1", + "is-symbol": "^1.1.1" + } }, - "word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==" + "which-collection": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", + "requires": { + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + } }, - "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, + "which-module": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", + "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==" + }, + "which-typed-array": { + "version": "1.1.19", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz", + "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==", "requires": { - "errno": "~0.1.7" + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "for-each": "^0.3.5", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2" } }, - "worker-plugin": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/worker-plugin/-/worker-plugin-3.2.0.tgz", - "integrity": "sha512-W5nRkw7+HlbsEt3qRP6MczwDDISjiRj2GYt9+bpe8A2La00TmJdwzG5bpdMXhRt1qcWmwAvl1TiKaHRa+XDS9Q==", + "wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", "dev": true, "requires": { - "loader-utils": "^1.1.0" + "string-width": "^1.0.2 || 2 || 3 || 4" } }, + "wildcard": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz", + "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==", + "dev": true + }, + "word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "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=", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "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" - } - } + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" } }, "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", "dev": true }, "ws": { - "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" - } + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", + "dev": true }, "xml2js": { "version": "0.4.23", @@ -14377,108 +14507,51 @@ "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", "dev": true }, - "xmlhttprequest-ssl": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz", - "integrity": "sha1-wodrBhaKrcQOV9l+gRkayPQ5iz4=", - "dev": true - }, - "xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" + "xmldoc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/xmldoc/-/xmldoc-1.3.0.tgz", + "integrity": "sha512-y7IRWW6PvEnYQZNZFMRLNJw+p3pezM4nKYPfr15g4OOW9i8VpeydycFuipE2297OvZnh3jSb2pxOt9QpkZUVng==", + "requires": { + "sax": "^1.2.4" + } }, "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==", + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", "dev": true }, "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", "dev": true }, "yargs": { - "version": "12.0.5", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz", - "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==", + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", "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", + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", "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" - }, - "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==", - "dev": true, - "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==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "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, - "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==", - "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 - } + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.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" - } - }, - "yeast": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz", - "integrity": "sha1-AI4G2AlDIMNy28L47XagymyKxBk=", + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "dev": true }, "yn": { @@ -14487,10 +14560,19 @@ "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", "dev": true }, + "yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true + }, "zone.js": { - "version": "0.10.3", - "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.10.3.tgz", - "integrity": "sha512-LXVLVEq0NNOqK/fLJo3d0kfzd4sxwn2/h67/02pjCjfKDxgx1i9QqpvtHD8CrBnSSwMw5+dy11O7FRX5mkO7Cg==" + "version": "0.11.8", + "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.11.8.tgz", + "integrity": "sha512-82bctBg2hKcEJ21humWIkXRlLBBmrc3nN7DFh5LGGhcyycO2S7FN8NmdvlcKaGFDNVL4/9kFLmwmInTavdJERA==", + "requires": { + "tslib": "^2.3.0" + } } } } diff --git a/package.json b/package.json index 25046698..ff188837 100644 --- a/package.json +++ b/package.json @@ -5,56 +5,70 @@ "ng": "ng", "start": "node server.js", "build": "ng build", + "build:dev": "ng build --configuration=dev", "heroku-postbuild": "ng build --configuration=dev", "test": "ng test", - "lint": "ng lint", - "e2e": "ng e2e" + "e2e": "ng e2e", + "lint": "eslint -c .eslintrc.js --ext .ts .", + "lint:fix": "eslint -c .eslintrc.js --ext .ts . --fix" }, "private": true, "dependencies": { - "@angular/animations": "^9.1.2", - "@angular/cdk": "^9.2.0", - "@angular/common": "~9.0.7", - "@angular/compiler": "~9.0.7", - "@angular/core": "~9.0.7", - "@angular/flex-layout": "^9.0.0-beta.29", - "@angular/forms": "~9.0.7", - "@angular/material": "^9.2.0", - "@angular/material-moment-adapter": "^9.2.3", - "@angular/platform-browser": "~9.0.7", - "@angular/platform-browser-dynamic": "~9.0.7", - "@angular/router": "~9.0.7", + "@angular/animations": "^12.2.17", + "@angular/cdk": "^12.2.13", + "@angular/common": "~12.2.17", + "@angular/compiler": "~12.2.17", + "@angular/core": "~12.2.17", + "@angular/flex-layout": "^12.0.0-beta.35", + "@angular/forms": "~12.2.17", + "@angular/material": "^12.2.13", + "@angular/material-moment-adapter": "^12.2.13", + "@angular/platform-browser": "~12.2.17", + "@angular/platform-browser-dynamic": "~12.2.17", + "@angular/router": "~12.2.17", + "@types/crypto-js": "^4.2.2", + "@types/qrcode": "^1.5.5", "angular-animations": "0.0.10", + "crypto-js": "^4.2.0", "express": "^4.17.1", + "file-saver": "^2.0.5", + "jsbarcode": "^3.12.1", "jwt-decode": "^2.2.0", "moment": "^2.25.3", "pdfmake": "^0.1.65", "pdfmake-unicode": "0.0.1", "pdfmake-wrapper": "^2.0.0", + "qrcode": "^1.5.4", "rxjs": "~6.5.4", - "tslib": "^1.10.0", - "zone.js": "~0.10.2" + "tslib": "^2.0.0", + "zone.js": "~0.11.4" }, "devDependencies": { - "@angular-devkit/build-angular": "~0.900.7", - "@angular/cli": "~9.0.7", - "@angular/compiler-cli": "~9.0.7", - "@angular/language-service": "~9.0.7", - "@types/jasmine": "~3.5.0", + "@angular-devkit/build-angular": "~12.2.18", + "@angular/cli": "~12.2.18", + "@angular/compiler-cli": "~12.2.17", + "@angular-eslint/eslint-plugin": "~12.2.0", + "@types/estree": "^1.0.2", + "@angular/language-service": "~12.2.17", + "@types/jasmine": "~3.6.0", "@types/jasminewd2": "~2.0.3", "@types/node": "^12.11.1", "@types/pdfmake": "^0.1.12", - "codelyzer": "^5.1.2", - "jasmine-core": "~3.5.0", - "jasmine-spec-reporter": "~4.2.1", - "karma": "^5.0.8", + "@typescript-eslint/eslint-plugin": "^4.28.5", + "@typescript-eslint/eslint-plugin-tslint": "^4.28.5", + "@typescript-eslint/parser": "^4.28.5", + "codelyzer": "^6.0.0", + "eslint": "^7.31.0", + "jasmine-core": "~3.6.0", + "jasmine-spec-reporter": "~5.0.0", + "karma": "~6.4.4", "karma-chrome-launcher": "~3.1.0", - "karma-coverage-istanbul-reporter": "~2.1.0", - "karma-jasmine": "~2.0.1", - "karma-jasmine-html-reporter": "^1.4.2", - "protractor": "^7.0.0", + "karma-coverage-istanbul-reporter": "~3.0.2", + "karma-jasmine": "~4.0.0", + "karma-jasmine-html-reporter": "^1.5.0", + "protractor": "~7.0.0", "ts-node": "~8.3.0", - "tslint": "~5.18.0", - "typescript": "~3.7.5" + "tslint": "~6.1.0", + "typescript": "~4.3.5" } } diff --git a/src/app/animations/animations.template.ts b/src/app/animations/animations.template.ts index 43a853c6..eb178372 100644 --- a/src/app/animations/animations.template.ts +++ b/src/app/animations/animations.template.ts @@ -1,63 +1,73 @@ -import { trigger, sequence, state, animate, transition, style } from '@angular/animations'; +import { animate, sequence, state, style, transition, trigger } from '@angular/animations'; export const rowsAnimation = trigger('rowsAnimation', [ - transition('void => *', [ - style({ height: '*', opacity: '0', transform: 'translateX(-550px)', 'box-shadow': 'none' }), - sequence([ - animate(".35s ease", style({ height: '*', opacity: '.2', transform: 'translateX(0)', 'box-shadow': 'none' })), - animate(".35s ease", style({ height: '*', opacity: 1, transform: 'translateX(0)' })) + transition('void => *', [ + style({ height: '*', opacity: '0', transform: 'translateX(-550px)', 'box-shadow': 'none' }), + sequence([ + animate('.35s ease', style({ height: '*', opacity: '.2', transform: 'translateX(0)', 'box-shadow': 'none' })), + animate('.35s ease', style({ height: '*', opacity: 1, transform: 'translateX(0)' })) + ]) ]) - ]) ]); -// export const rowsBgAnimation = -// trigger('rowsBgAnimation', [ -// state('success', style({ "background-color": '#bdeac9' })), -// state('normal, void', style({ "background-color": '#ffffff' })), -// transition('success <=> normal', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')), -// ]); - export const detailExpand = trigger('detailExpand', [ - state('collapsed, void', style({height: '0px', minHeight: '0'})), - state('expanded', style({height: '*'})), - transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')), - transition('expanded <=> void', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')) + state('collapsed, void', style({ height: '0px', minHeight: '0' })), + state('expanded', style({ height: '*' })), + transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')), + transition('expanded <=> void', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')) ]); export const arrowDirection = trigger('arrowDirection', [ - state('down', style({ transform: "rotate(0deg)" })), - state('up, void', style({ transform: "rotate(180deg)" })), - transition('down <=> up', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')), - transition('down <=> void', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')) + state('down', style({ transform: 'rotate(0deg)' })), + state('up, void', style({ transform: 'rotate(180deg)' })), + transition('down <=> up', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')), + transition('down <=> void', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')) ]); export const step = trigger('step', [ - state('left', style({ left: '0px' })), - state('right', style({ left: '-100vw' })), - transition('left <=> right', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')), + state('left', style({ left: '0' })), + state('center-left', style({ left: '0' })), + state('center-right', style({ left: '0' })), + state('right', style({ left: '0' })), + transition('left <=> center-left', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')), + transition('center-left <=> center-right', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')), + transition('center-right <=> right', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')), + transition('left <=> center-right', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')), + transition('center-left <=> right', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')), + transition('left <=> right', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')), ]); export const stepLink = trigger('stepLink', [ - state('left', style({ left: '0px' })), - state('right', style({ left: '50%' })), - transition('left <=> right', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')), + state('left', style({ left: '0px' })), + state('center-left', style({ left: '25%' })), + state('center-right', style({ left: '50%' })), + state('right', style({ left: '75%' })), + state('left-2', style({ left: '0px' })), + state('right-2', style({ left: '50%' })), + transition('left <=> center-left', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')), + transition('center-left <=> center-right', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')), + transition('center-right <=> right', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')), + transition('left <=> center-right', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')), + transition('center-left <=> right', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')), + transition('left <=> right', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')), + transition('left-2 <=> right-2', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')), ]); export const showCancelDispense = - trigger('showcancel',[ - state('hide', style({bottom: '15%', opacity: '0'})), - state('show' , style({ bottom: '50%', opacity: 1})), - transition('show <=> hide', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')) + trigger('showcancel', [ + state('hide', style({ bottom: '15%', opacity: '0' })), + state('show', style({ bottom: '50%', opacity: 1 })), + transition('show <=> hide', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')) ]); export const hideTimer = - trigger('hidetimer',[ - state('show', style({top: '50%', opacity: '1'})), - state('hide' , style({ top: '15%', opacity: 0})), - transition('hide <=> show', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')) + trigger('hidetimer', [ + state('show', style({ top: '50%', opacity: '1' })), + state('hide', style({ top: '15%', opacity: 0 })), + transition('hide <=> show', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')) ]); diff --git a/src/app/app-routing.module.ts b/src/app/app-routing.module.ts index ab658467..6c1e9933 100644 --- a/src/app/app-routing.module.ts +++ b/src/app/app-routing.module.ts @@ -1,24 +1,35 @@ import { NgModule } from '@angular/core'; import { Routes, RouterModule } from '@angular/router'; -import { AuthGuard } from '@auth/guards/auth.guard'; import { NotFoundComponent } from './shared/not-found/not-found.component'; +import { PublicCertificateComponent } from './shared/components/public-certificate/public-certificate.component'; +import { PublicPracticeComponent } from './shared/components/public-practice/public-practice.component'; const routes: Routes = [ - { - path: '', - pathMatch: 'full', - redirectTo: '/auth/login' - }, - {path: '404', component: NotFoundComponent}, - {path: '**', redirectTo: '/404'} + { + path: '', + pathMatch: 'full', + redirectTo: '/auth/login' + }, + { + path: 'certificate/:id', + component: PublicCertificateComponent + }, + { + path: 'practice/:id', + component: PublicPracticeComponent + }, + { path: '404', component: NotFoundComponent }, + { path: '**', redirectTo: '/404' } ]; @NgModule({ - imports: [RouterModule.forRoot(routes)], - exports: [RouterModule] + imports: [RouterModule.forRoot(routes, { relativeLinkResolution: 'legacy' })], + exports: [RouterModule] }) export class AppRoutingModule { } export const routingComponents = [ - NotFoundComponent -] + NotFoundComponent, + PublicCertificateComponent, + PublicPracticeComponent +]; diff --git a/src/app/app.component.spec.ts b/src/app/app.component.spec.ts index 0b2dddf0..c5e325b4 100644 --- a/src/app/app.component.spec.ts +++ b/src/app/app.component.spec.ts @@ -1,9 +1,9 @@ -import { TestBed, async } from '@angular/core/testing'; +import { TestBed, waitForAsync } from '@angular/core/testing'; import { RouterTestingModule } from '@angular/router/testing'; import { AppComponent } from './app.component'; describe('AppComponent', () => { - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [ RouterTestingModule diff --git a/src/app/app.module.ts b/src/app/app.module.ts index 38113450..7f1facf1 100644 --- a/src/app/app.module.ts +++ b/src/app/app.module.ts @@ -14,6 +14,7 @@ import { AuthService } from '@auth/services/auth.service'; import { servicesOnRun } from '@auth/token-initializer'; // moduules import { AuthModule } from '@auth/auth.module'; +import { AuditModule } from '@audit/audit.module'; import { PharmacistsModule } from '@pharmacists/pharmacists.module'; import { ProfessionalsModule } from '@professionals/professionals.module'; // flex-layout @@ -22,6 +23,9 @@ import { FlexLayoutModule } from '@angular/flex-layout'; import { MatToolbarModule } from '@angular/material/toolbar'; import { MatButtonModule } from '@angular/material/button'; import { MatMenuModule } from '@angular/material/menu'; +import { MatProgressSpinnerModule } from '@angular/material/progress-spinner'; +import { MatIconModule } from '@angular/material/icon'; +import { MatChipsModule } from '@angular/material/chips'; import {MAT_MOMENT_DATE_FORMATS, MomentDateAdapter} from '@angular/material-moment-adapter'; import {DateAdapter, MAT_DATE_FORMATS, MAT_DATE_LOCALE} from '@angular/material/core'; @@ -42,6 +46,7 @@ import { DatePipe } from '@angular/common'; AuthModule, PharmacistsModule, ProfessionalsModule, + AuditModule, AppRoutingModule, HttpClientModule, BrowserAnimationsModule, @@ -49,7 +54,10 @@ import { DatePipe } from '@angular/common'; FlexLayoutModule, MatToolbarModule, MatButtonModule, - MatMenuModule + MatMenuModule, + MatProgressSpinnerModule, + MatIconModule, + MatChipsModule, ], providers: [ { diff --git a/src/app/audit/audit-routing.module.ts b/src/app/audit/audit-routing.module.ts new file mode 100644 index 00000000..49062ae0 --- /dev/null +++ b/src/app/audit/audit-routing.module.ts @@ -0,0 +1,42 @@ +import { NgModule } from '@angular/core'; +import { Routes, RouterModule } from '@angular/router'; +import { AuthGuard } from '@auth/guards/auth.guard'; +// components +import { AuditComponent } from '@audit/audit.component'; +import { AuditFormComponent } from './components/audit-form/audit-form.component'; +import { DialogComponent } from '@audit/components/dialog/dialog.component'; +import { RoleAuditGuard } from '@auth/guards/role-audit.guard'; +import { PrescriptionPrinterComponent } from '@audit/components/prescription-printer/prescription-printer.component'; +import { UsersListComponent } from './components/user-list/users-list.component'; + +const routes: Routes = [ + { + path: 'audit', + component: AuditComponent, + canActivate: [AuthGuard, RoleAuditGuard], + children: [ + { + path: 'recetas/auditar', + component: AuditFormComponent + }, + { + path: 'users', + component: UsersListComponent + } + ] + } +]; + +@NgModule({ + imports: [RouterModule.forChild(routes)], + exports: [RouterModule] +}) +export class AuditRoutingModule { } + +export const routingComponent = [ + AuditComponent, + AuditFormComponent, + UsersListComponent, + DialogComponent, + PrescriptionPrinterComponent +] diff --git a/src/app/audit/audit.component.html b/src/app/audit/audit.component.html new file mode 100644 index 00000000..90c6b646 --- /dev/null +++ b/src/app/audit/audit.component.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/app/audit/audit.component.sass b/src/app/audit/audit.component.sass new file mode 100644 index 00000000..e69de29b diff --git a/src/app/audit/audit.component.spec.ts b/src/app/audit/audit.component.spec.ts new file mode 100644 index 00000000..370ecf38 --- /dev/null +++ b/src/app/audit/audit.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; + +import { AuditComponent } from '@audit/audit.component'; + +describe('AuditComponent', () => { + let component: AuditComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [ AuditComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(AuditComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/audit/audit.component.ts b/src/app/audit/audit.component.ts new file mode 100644 index 00000000..d2ce0109 --- /dev/null +++ b/src/app/audit/audit.component.ts @@ -0,0 +1,15 @@ +import { Component, OnInit } from '@angular/core'; + +@Component({ + selector: 'app-pharmacists', + templateUrl: './audit.component.html', + styleUrls: ['./audit.component.sass'] +}) +export class AuditComponent implements OnInit { + + constructor() { } + + ngOnInit(): void { + } + +} diff --git a/src/app/audit/audit.module.ts b/src/app/audit/audit.module.ts new file mode 100644 index 00000000..a4719883 --- /dev/null +++ b/src/app/audit/audit.module.ts @@ -0,0 +1,73 @@ +import { BrowserModule } from '@angular/platform-browser'; +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { ReactiveFormsModule } from '@angular/forms'; +import { HttpClientModule } from '@angular/common/http'; +import { FormsModule } from '@angular/forms'; + +import { AuditRoutingModule, routingComponent } from './audit-routing.module'; +// flex-layout +import { FlexLayoutModule } from '@angular/flex-layout'; +// material +import { MatCardModule } from '@angular/material/card'; +import { MatFormFieldModule } from '@angular/material/form-field'; +import { MatInputModule } from '@angular/material/input'; +import { MatButtonModule } from '@angular/material/button'; +import { MatSelectModule } from '@angular/material/select'; +import { MatAutocompleteModule } from '@angular/material/autocomplete'; +import { MatMenuModule } from '@angular/material/menu'; +import { MatDatepickerModule } from '@angular/material/datepicker'; +import { MatNativeDateModule } from '@angular/material/core'; +import { MatListModule } from '@angular/material/list'; +import { MatTableModule } from '@angular/material/table'; +import { MatIconModule } from '@angular/material/icon'; +import { MatPaginatorModule } from '@angular/material/paginator'; +import { MatSortModule } from '@angular/material/sort'; +import { MatTooltipModule } from '@angular/material/tooltip'; +import { MatChipsModule } from '@angular/material/chips'; +import { MatSnackBarModule } from '@angular/material/snack-bar'; +import { MatDialogModule } from '@angular/material/dialog'; +import { MatProgressSpinnerModule } from '@angular/material/progress-spinner'; +import { UsersListComponent } from './components/user-list/users-list.component'; +import { PrescriptionListComponent } from './components/prescription-list/prescription-list.component'; +import { FormatTimePipe } from './pipes/format-time.pipe'; +import { DialogReportComponent } from './components/dialog-report/dialog-report.component'; + +@NgModule({ + declarations: [ + routingComponent, + UsersListComponent, + PrescriptionListComponent, + FormatTimePipe, + DialogReportComponent, + ], + imports: [ + BrowserModule, + CommonModule, + AuditRoutingModule, + ReactiveFormsModule, + FormsModule, + HttpClientModule, + FlexLayoutModule, + MatCardModule, + MatFormFieldModule, + MatInputModule, + MatButtonModule, + MatSelectModule, + MatAutocompleteModule, + MatMenuModule, + MatDatepickerModule, + MatNativeDateModule, + MatListModule, + MatTableModule, + MatIconModule, + MatTooltipModule, + MatChipsModule, + MatSnackBarModule, + MatDialogModule, + MatProgressSpinnerModule, + MatSortModule, + MatPaginatorModule + ] +}) +export class AuditModule { } diff --git a/src/app/audit/components/audit-form/audit-form.component.html b/src/app/audit/components/audit-form/audit-form.component.html new file mode 100644 index 00000000..4c32bd56 --- /dev/null +++ b/src/app/audit/components/audit-form/audit-form.component.html @@ -0,0 +1,47 @@ +
+
+
+
+ + +

+ search + + Buscar farmacia + +

+
+ +
+
+ + + CUIT farmacia + + + {{ pharmacy_cuit.value.length }} / 11 + + Debe ingresar el cuit de una farmacia + + + + Debe ingresar al menos 10 dígitos + + +
+
+
+
+
+
+
+ +
+
+
diff --git a/src/app/audit/components/audit-form/audit-form.component.sass b/src/app/audit/components/audit-form/audit-form.component.sass new file mode 100644 index 00000000..1efb951f --- /dev/null +++ b/src/app/audit/components/audit-form/audit-form.component.sass @@ -0,0 +1,104 @@ +@import 'styles/_variables' + +$panels-height: 294px +$panels-height-xl: 325px + +:host + display: block + width: 100% + height: 100% + +.cards-container + margin-top: 20px + @media (min-width: $small-devices) and (max-width: $medium-devices) + flex-direction: column!important + @media (min-width: $x-small-devices) and (max-width: $small-devices) + flex-direction: column!important + .search-panel + order: 1 + .prescription-panel + order: 2 + .insurance-panel + order: 3 + + .first-panel + width: 35% + display: flex + flex-direction: column + .search-panel + margin-bottom: 20px + .search-panel,.insurance-panel + width: 100% + @media (min-width: $small-devices) and (max-width: $medium-devices) + width: 100% + flex-direction: row + .search-panel + margin-right: 20px + .search-panel,.insurance-panel + width: 50% + @media (min-width: $x-small-devices) and (max-width: $small-devices) + width: 100% + flex-direction: column + .search-panel,.insurance-panel + width: 100% + margin-bottom: 20px + + .prescription-panel + width: 65% + @media (min-width: $x-small-devices) and (max-width: $medium-devices) + width: 100% + + + + .search-panel, .prescription-panel, .insurance-panel + mat-card + box-sizing: content-box!important + height: auto + mat-card-title, mat-card-content + margin: 0!important + + mat-card-actions + padding: 0!important + margin: 0!important + @media (min-width: $x-small-devices) and (max-width: $larger-devices) + flex-direction: column!important + a.btn-link + max-width: 100%!important + margin: 10px 0!important + + + + +.mat-table + overflow: auto + max-height: 500px + + +.element-row + position: relative + + +.element-row:not(.expanded) + cursor: pointer + + +.element-row:not(.expanded):hover + background: #f5f5f5 + + +.element-row.expanded + border-bottom-color: transparent + +.cdk-column-expandedDetail + border-left-style: solid + border-color:#c9c9ca + border-width: 1px + margin-left: 24px + outline: 1px + outline-offset: -2px + +.insurances-container + display: flex + flex-direction: column + max-height: 500px + min-width: 300px diff --git a/src/app/audit/components/audit-form/audit-form.component.spec.ts b/src/app/audit/components/audit-form/audit-form.component.spec.ts new file mode 100644 index 00000000..08028243 --- /dev/null +++ b/src/app/audit/components/audit-form/audit-form.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; + +import { PharmacistsFormComponent } from './pharmacists-form.component'; + +describe('PharmacistsFormComponent', () => { + let component: PharmacistsFormComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [ PharmacistsFormComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(PharmacistsFormComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/audit/components/audit-form/audit-form.component.ts b/src/app/audit/components/audit-form/audit-form.component.ts new file mode 100644 index 00000000..b6762034 --- /dev/null +++ b/src/app/audit/components/audit-form/audit-form.component.ts @@ -0,0 +1,100 @@ +import { Component, OnInit, ViewChild } from '@angular/core'; +import { FormBuilder, FormGroup, AbstractControl, Validators } from '@angular/forms'; +import { Observable } from 'rxjs'; + +// Services +import { PrescriptionsService } from '@services/prescriptions.service'; +import { InsurancesService } from '@services/insurance.service'; + +// Interfaces +import { Patient } from '@interfaces/patients'; +import { Prescriptions } from '@interfaces/prescriptions'; +import { Insurances } from '@interfaces/insurances'; + +// Material +import { MatDialog } from '@angular/material/dialog'; +import { MatSnackBar } from '@angular/material/snack-bar'; +import { DialogComponent } from '@audit/components/dialog/dialog.component'; +import { ThemePalette } from '@angular/material/core'; +import { duration } from 'moment'; + + +@Component({ + selector: 'app-pharmacists-form', + templateUrl: './audit-form.component.html', + styleUrls: ['./audit-form.component.sass'], + +}) +export class AuditFormComponent implements OnInit { + + @ViewChild('picker1') picker1; + + title = 'Auditor: '; + prescriptionForm: FormGroup; + options: string[] = []; + patient: Patient; + filteredOptions: Observable; + lastCuitConsult: string; + readonly spinnerColor: ThemePalette = 'primary'; + cuitShowSpinner: boolean = false; + private lastCuit: string; + + constructor( + private fBuilder: FormBuilder, + private apiPrescriptions: PrescriptionsService, + private apiInsurances: InsurancesService, + public dialog: MatDialog, + private _snackBar: MatSnackBar, + ){} + + ngOnInit(): void{ + this.initFilterPrescriptionForm(); + + this.prescriptionForm.valueChanges.subscribe( + values => { + if(typeof(values.pharmacy_cuit) !== 'undefined' && values.pharmacy_cuit >= 10){ + this.cuitShowSpinner = this.lastCuit != values.pharmacy_cuit; + + this.apiPrescriptions.getPrescriptions({dispensedBy: values.pharmacy_cuit}).subscribe( + success => { + this.lastCuit = values.pharmacy_cuit; + this.cuitShowSpinner = false; + if(!success){ + this._snackBar.open("No se encuentra una farmacia con ese CUIT", 'cerrar', {duration: 3000}); + } + } + ) + } + } + ) + } + + initFilterPrescriptionForm(){ + this.prescriptionForm = this.fBuilder.group({ + pharmacy_cuit: ['', [ + Validators.required, + Validators.minLength(10) + ]], + }); + } + + // Show a dialog + openDialog(aDialogType: string, aPrescription?: Prescriptions, aText?: string): void { + const dialogRef = this.dialog.open(DialogComponent, { + width: '400px', + data: {dialogType: aDialogType, prescription: aPrescription, text: aText } + }); + + dialogRef.afterClosed().subscribe(result => { + console.log('The dialog was closed'); + }); + } + + + get pharmacy_cuit(): AbstractControl{ + return this.prescriptionForm.get('pharmacy_cuit'); + } + +} + + diff --git a/src/app/audit/components/dialog-report/dialog-report.component.html b/src/app/audit/components/dialog-report/dialog-report.component.html new file mode 100644 index 00000000..b91e7cca --- /dev/null +++ b/src/app/audit/components/dialog-report/dialog-report.component.html @@ -0,0 +1,24 @@ +

Seleccione un rango de fechas y presione Descargar

+
+ + Desde + + DD/MM/YYYY + + + + + + Hasta + + DD/MM/YYYY + + + + + +
+
+ + +
\ No newline at end of file diff --git a/src/app/audit/components/dialog-report/dialog-report.component.ts b/src/app/audit/components/dialog-report/dialog-report.component.ts new file mode 100644 index 00000000..1c849612 --- /dev/null +++ b/src/app/audit/components/dialog-report/dialog-report.component.ts @@ -0,0 +1,28 @@ +import { Component, Inject } from '@angular/core'; +import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog'; + +export interface DialogData { + fechaDesde: Date; + fechaHasta: Date; + pharmacistId: string; +} + +@Component({ + selector: 'app-dialog-report', + templateUrl: './dialog-report.component.html' +}) +export class DialogReportComponent { + constructor( + public dialogRef: MatDialogRef, + @Inject(MAT_DIALOG_DATA) public data: DialogData, + ) { } + + onNoClick(): void { + this.dialogRef.close(); + } + + enableDownload() { + return this.data.fechaDesde && this.data.fechaHasta && this.data.pharmacistId; + } + +} diff --git a/src/app/audit/components/dialog/dialog.component.html b/src/app/audit/components/dialog/dialog.component.html new file mode 100644 index 00000000..219ca76b --- /dev/null +++ b/src/app/audit/components/dialog/dialog.component.html @@ -0,0 +1,12 @@ +
+ +
+

error Error

+
+

{{data.text}}

+
+
+ +
+
+
diff --git a/src/app/audit/components/dialog/dialog.component.sass b/src/app/audit/components/dialog/dialog.component.sass new file mode 100644 index 00000000..e69de29b diff --git a/src/app/audit/components/dialog/dialog.component.spec.ts b/src/app/audit/components/dialog/dialog.component.spec.ts new file mode 100644 index 00000000..7a5ff84a --- /dev/null +++ b/src/app/audit/components/dialog/dialog.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; + +import { DialogComponent } from './dialog.component'; + +describe('DialogComponent', () => { + let component: DialogComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [ DialogComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(DialogComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/audit/components/dialog/dialog.component.ts b/src/app/audit/components/dialog/dialog.component.ts new file mode 100644 index 00000000..a1b28c90 --- /dev/null +++ b/src/app/audit/components/dialog/dialog.component.ts @@ -0,0 +1,43 @@ +import { Component, OnInit, Inject } from '@angular/core'; +import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog'; +import { fadeInOnEnterAnimation, fadeOutOnLeaveAnimation } from 'angular-animations'; +import { Prescriptions } from '@interfaces/prescriptions'; +import {MatIconModule} from '@angular/material/icon'; +import { animate, state, style, transition, trigger } from '@angular/animations'; +import { UnifiedPrinterComponent } from '@shared/components/unified-printer/unified-printer.component'; + + +@Component({ + selector: 'app-dialog', + templateUrl: './dialog.component.html', + styleUrls: ['./dialog.component.sass'], + animations: [ + fadeInOnEnterAnimation(), + fadeOutOnLeaveAnimation() + ] +}) +export class DialogComponent implements OnInit { + + constructor( + public dialogRef: MatDialogRef, + @Inject(MAT_DIALOG_DATA) public data: DialogData, + private unifiedPrinter: UnifiedPrinterComponent + ) {} + + ngOnInit(): void { + } + + onNoClick(): void { + this.dialogRef.close(); + } + + async printPrescription(prescription: Prescriptions){ + await this.unifiedPrinter.printPrescription(prescription); + } +} + +export interface DialogData { + prescription: Prescriptions; + dialogType: string; + text: string; +} \ No newline at end of file diff --git a/src/app/audit/components/prescription-list/prescription-list.component.html b/src/app/audit/components/prescription-list/prescription-list.component.html new file mode 100644 index 00000000..978f065f --- /dev/null +++ b/src/app/audit/components/prescription-list/prescription-list.component.html @@ -0,0 +1,128 @@ + + +

+ gesture + + Recetas dispensadas por {{dataSource.data[0].dispensedBy.businessName}}, + CUIT {{dataSource.data[0].dispensedBy.cuil}} + + +

+
+ + + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Profesional {{ + element.professional.businessName.toUpperCase() }} Fecha + {{element.date | date : 'dd/MM/yyyy' }} Estado {{ element.status }} + Insumos + {{element.supplies.length}} Acción + + + + + + +
+ +
+
+ + +
+
+
+
+ {{ supp.supply.name }} + {{ supp.quantity }} +
+
+
+ Diagnóstico: {{element.diagnostic}} +
+
Observaciones: {{element.observation}} +
+
+
+
+
+
+ +
+ +
+ + + +
+
\ No newline at end of file diff --git a/src/app/audit/components/prescription-list/prescription-list.component.sass b/src/app/audit/components/prescription-list/prescription-list.component.sass new file mode 100644 index 00000000..bb6b8c6c --- /dev/null +++ b/src/app/audit/components/prescription-list/prescription-list.component.sass @@ -0,0 +1,221 @@ +@import 'styles/_variables' + +mat-card-content + .loading-prescriptions + padding: 30px + +table + width: 100% + + tr.detail-row + height: 0 + + + tr.element-row:not(.expanded-row):hover + background: whitesmoke + + + tr.element-row:not(.expanded-row):active + background: #efefef + + .title-cell + width: 250px + + .element-row td + border-bottom-width: 0 + + + .element-detail + overflow: hidden + padding: 0px 5px + border-left: 1px solid #ccc + + .element-diagram + padding: 8px + font-weight: lighter + + .supplies-list + margin: 5px 0px + .supply-description + display: flex + border-bottom: 1px solid #ccc + justify-content: space-between + align-items: center + padding-bottom: 2px + margin-top: 5px + + span + margin-right: 20px + mat-chip + padding: 5px + width: 20px + border-radius: 50% + text-align: center + + .element-description + margin: 5px 0px + .description-title + font-weight: bold + + + .mat-row + &:hover + background-color: #e9f3ff + td.mat-column-arrow + text-align: center + th.mat-column-action + text-align: center + th.mat-column-supplies, td.mat-column-supplies + text-align: center + @media (min-width: $x-small-devices) and (max-width: $small-devices) + text-align: left + + td.mat-column-action + .action-buttons + justify-content: center + td.mat-column-arrow + width: 45px + button + width: auto + padding: 0px 5px + margin-right: 0px + mat-icon + padding: 0px + margin-right: 0px + td.mat-column-action + width: 100px + padding-right: 8px !important + button + width: auto + padding: 0px 5px + mat-icon + padding: 0px 5px + margin-right: 0px + color: #3e3e3e!important + + + .menu-collapse + display: none + + .mat-icon + color: #3e75ff + + + // @media (min-width: $x-small-devices) and (max-width: $small-devices) + +.mat-form-field + font-size: 14px + width: 100% + + +.mat-paginator + margin-top: 24px + +@media (min-width: $x-small-devices) and (max-width: $small-devices) + .mat-elevation-z8 + background: transparent + box-shadow: none + margin: 0px -16px + + .mat-header-row + display: none + + td.mat-column-supply_count + text-align: start!important + td.mat-column-action + .menu-collapse + display: flex!important + position: absolute + top: 0 + right: 10px + width: auto + margin: 0 + height: 44px!important + mat-icon + padding: 0!important + .action-buttons + display: none!important + td.mat-column-arrow + button + position: absolute + top: 0 + right: 44px + height: 44px!important + display: flex + + + tbody + display: block + width: 100% + + + .mat-table + background: transparent + * + box-sizing: border-box + + + .mat-row + display: block + overflow: hidden + height: auto + position: relative + clear: both + // box-shadow: 0 2px 1px -1px rgba(0,0,0,.2), 0 1px 1px 0 rgba(0,0,0,.14), 0 1px 3px 0 rgba(0,0,0,.12) + background-color: #fff + border-radius: 3px + + .mat-row + margin-top: 24px + + .detail-row + box-shadow: 0 2px 1px -1px rgba(0,0,0,.2), 0 1px 1px 0 rgba(0,0,0,.14), 0 1px 3px 0 rgba(0,0,0,.12) + margin-top: 0px!important + td.mat-column-expandedDetail + margin: 0px!important + padding: 0px 10px!important + mat-chip + width: 30px!important + + .mat-cell + display: block + width: 100% + padding: 0 16px + margin: 16px 0 + border: 0 none + &:first-child + padding: 0 48px 0 16px + a + font-size: 20px + // font-weight: 400 + color: inherit + + &:before + display: none + + + &.m-card-sub-title + margin-top: -8px + padding: 0 48px 0 16px + color: rgba(0,0,0,.54) + + + + .has_label_on_mobile + &:before + content: attr(data-label) + display: inline + font-weight: normal + + + + .mat-column-star + width: auto + padding: 8px 0 0 !important + margin: 0 + position: absolute + top: 0 + right: 0 + &:before + display: none + + diff --git a/src/app/audit/components/prescription-list/prescription-list.component.spec.ts b/src/app/audit/components/prescription-list/prescription-list.component.spec.ts new file mode 100644 index 00000000..746cbe2f --- /dev/null +++ b/src/app/audit/components/prescription-list/prescription-list.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; + +import { PrescriptionListComponent } from './prescription-list.component'; + +describe('PrescriptionListComponent', () => { + let component: PrescriptionListComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [ PrescriptionListComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(PrescriptionListComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/audit/components/prescription-list/prescription-list.component.ts b/src/app/audit/components/prescription-list/prescription-list.component.ts new file mode 100644 index 00000000..4d02762c --- /dev/null +++ b/src/app/audit/components/prescription-list/prescription-list.component.ts @@ -0,0 +1,130 @@ +import { AfterContentInit, Component, Input, OnInit, ViewChild } from '@angular/core'; +import { MatDialog } from '@angular/material/dialog'; +import { MatPaginator } from '@angular/material/paginator'; +import { MatSort } from '@angular/material/sort'; +import { MatTableDataSource } from '@angular/material/table'; +import { arrowDirection, detailExpand } from '@animations/animations.template'; +import { AuthService } from '@auth/services/auth.service'; +import { Prescriptions } from '@interfaces/prescriptions'; +import { UnifiedPrinterComponent } from '@shared/components/unified-printer/unified-printer.component'; +import { PrescriptionsService } from '@services/prescriptions.service'; +import * as moment from 'moment'; +import { DialogReportComponent } from '../dialog-report/dialog-report.component'; + +@Component({ + selector: 'app-prescription-list', + templateUrl: './prescription-list.component.html', + styleUrls: ['./prescription-list.component.sass'], + animations: [ + detailExpand, + arrowDirection + ], + +}) +export class PrescriptionListComponent implements OnInit, AfterContentInit { + + @Input() prescriptions: Prescriptions[]; + + displayedColumns: string[] = ['professional', 'date', 'status', 'supplies', 'action', 'arrow']; + dataSource = new MatTableDataSource([]); + expandedElement: Prescriptions | null; + loadingPrescriptions: boolean; + lapseTime = 2; // lapse of time that a dispensed prescription can been undo action, and put it back as "pendiente" + auditId: string; + pharmacistId: string; + isAdmin = false; + fechaDesde: Date; + fechaHasta: Date; + + @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator; + @ViewChild(MatSort, { static: true }) sort: MatSort; + + constructor( + private authService: AuthService, + private prescriptionService: PrescriptionsService, + private unifiedPrinter: UnifiedPrinterComponent, + public dialog: MatDialog) { }; + + ngOnInit(): void { + this.loadingPrescriptions = true; + this.prescriptionService.prescriptions.subscribe((prescriptions: Prescriptions[]) => { + this.dataSource = new MatTableDataSource(prescriptions); + // sort after populate dataSource + this.dataSource.sortingDataAccessor = (item, property) => { + switch (property) { + case 'patient': return item.patient.lastName + item.patient.firstName; + case 'prescription_date': return new Date(item.date).getTime(); + default: return item[property]; + } + }; + this.dataSource.sort = this.sort; + this.dataSource.paginator = this.paginator; + this.loadingPrescriptions = false; + }); + this.auditId = this.authService.getLoggedUserId(); + this.isAdmin = this.authService.isAdminRole(); + } + + ngAfterContentInit() { + this.paginator._intl.itemsPerPageLabel = 'Prescripciones por página'; + this.paginator._intl.firstPageLabel = 'Primer página'; + this.paginator._intl.lastPageLabel = 'Última página'; + this.paginator._intl.nextPageLabel = 'Siguiente'; + this.paginator._intl.previousPageLabel = 'Anterior'; + this.paginator._intl.getRangeLabel = (page: number, pageSize: number, length: number): string => { + if (length === 0 || pageSize === 0) { + return `0 de ${length}`; + } + length = Math.max(length, 0); + const startIndex = page * pageSize; + const endIndex = startIndex < length ? Math.min(startIndex + pageSize, length) : startIndex + pageSize; + return `${startIndex + 1} – ${endIndex} de ${length}`; + }; + } + + applyFilter(filterValue: string) { + this.dataSource.filterPredicate = (data: Prescriptions, filter: string) => { + const accumulator = (currentTerm, key) => { + // enable filter by lastName / firstName / date + return currentTerm + data.status + moment(data.date, 'YYYY-MM-DD').format('DD/MM/YYY').toString(); + }; + + const dataStr = Object.keys(data).reduce(accumulator, '').toLowerCase(); + // Transform the filter by converting it to lowercase and removing whitespace. + const transformedFilter = filter.trim().toLowerCase(); + return dataStr.indexOf(transformedFilter) !== -1; + }; + this.dataSource.filter = filterValue.trim().toLowerCase(); + if (this.dataSource.paginator) { + this.dataSource.paginator.firstPage(); + } + } + + // Return true if was dispensed and is seeing who dispensed the prescription + canPrint(prescription: Prescriptions): boolean { + return (prescription.status === 'Dispensada') && (prescription.dispensedBy?.userId === this.authService.getLoggedUserId()); + } + + async printPrescription(prescription: Prescriptions) { + await this.unifiedPrinter.printPrescription(prescription); + } + + isStatus(prescritpion: Prescriptions, status: string): boolean { + return prescritpion.status === status; + } + + + generateReport() { + const dialogReport = this.dialog.open(DialogReportComponent, { + width: '400px', + data: { fechaDesde: this.fechaDesde, fechaHasta: this.fechaHasta, pharmacistId: this.dataSource.data[0].dispensedBy.userId } + }); + + dialogReport.afterClosed().subscribe(result => { + if (result) { + this.prescriptionService.getCsv(result).subscribe(); + } + }); + } + +} diff --git a/src/app/audit/components/prescription-printer/prescription-printer.component.html b/src/app/audit/components/prescription-printer/prescription-printer.component.html new file mode 100644 index 00000000..bf49662a --- /dev/null +++ b/src/app/audit/components/prescription-printer/prescription-printer.component.html @@ -0,0 +1 @@ +

prescription-printer works!

diff --git a/src/app/audit/components/prescription-printer/prescription-printer.component.sass b/src/app/audit/components/prescription-printer/prescription-printer.component.sass new file mode 100644 index 00000000..e69de29b diff --git a/src/app/audit/components/prescription-printer/prescription-printer.component.spec.ts b/src/app/audit/components/prescription-printer/prescription-printer.component.spec.ts new file mode 100644 index 00000000..dd6b98da --- /dev/null +++ b/src/app/audit/components/prescription-printer/prescription-printer.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; + +import { PrescriptionPrinterComponent } from './prescription-printer.component'; + +describe('PrescriptionPrinterComponent', () => { + let component: PrescriptionPrinterComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [ PrescriptionPrinterComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(PrescriptionPrinterComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/audit/components/prescription-printer/prescription-printer.component.ts b/src/app/audit/components/prescription-printer/prescription-printer.component.ts new file mode 100644 index 00000000..39aa5f22 --- /dev/null +++ b/src/app/audit/components/prescription-printer/prescription-printer.component.ts @@ -0,0 +1,24 @@ +import { Component, OnInit } from '@angular/core'; +import { Prescriptions } from '@interfaces/prescriptions'; +import { UnifiedPrinterComponent } from '@shared/components/unified-printer/unified-printer.component'; + +@Component({ + selector: 'app-prescription-printer', + templateUrl: './prescription-printer.component.html', + styleUrls: ['./prescription-printer.component.sass'] +}) +export class PrescriptionPrinterComponent implements OnInit { + + prescription: Prescriptions; + + constructor( + private unifiedPrinter: UnifiedPrinterComponent + ){} + + ngOnInit(): void { + } + + async print(prescription: Prescriptions){ + await this.unifiedPrinter.printPrescription(prescription); + } +} diff --git a/src/app/audit/components/user-list/users-list.component.html b/src/app/audit/components/user-list/users-list.component.html new file mode 100644 index 00000000..eeb2745a --- /dev/null +++ b/src/app/audit/components/user-list/users-list.component.html @@ -0,0 +1,101 @@ +
+
+ + +
+ + + +

+ person + + Usuarios + + +

+
+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Nombre + medical_services + local_pharmacy + health_and_safety + {{element.businessName.toUpperCase() }} + CUIL + {{ element.cuil }} + Matricula + {{ element.enrollment }} + + + + Ultimo inicio de sesión + {{ element.lastLogin | date : 'dd/MM/yyyy' }} +
+
+
+ +
+ +
+ + + +
+
+
+
+
\ No newline at end of file diff --git a/src/app/audit/components/user-list/users-list.component.sass b/src/app/audit/components/user-list/users-list.component.sass new file mode 100644 index 00000000..65a2eb04 --- /dev/null +++ b/src/app/audit/components/user-list/users-list.component.sass @@ -0,0 +1,308 @@ +@import 'styles/_variables' + +$panels-height: 294px +$panels-height-xl: 325px + +:host + display: block + width: 100% + height: 100% + +.cards-container + margin-top: 20px + @media (min-width: $small-devices) and (max-width: $medium-devices) + flex-direction: column!important + @media (min-width: $x-small-devices) and (max-width: $small-devices) + flex-direction: column!important + .search-panel + order: 1 + .user-panel + order: 2 + .insurance-panel + order: 3 + + .user-panel + width: 65% + @media (min-width: $x-small-devices) and (max-width: $medium-devices) + width: 100% + + + + .search-panel, .user-panel, .insurance-panel + mat-card + box-sizing: content-box!important + height: auto + mat-card-title, mat-card-content + margin: 0!important + + mat-card-actions + padding: 0!important + margin: 0!important + @media (min-width: $x-small-devices) and (max-width: $larger-devices) + flex-direction: column!important + a.btn-link + max-width: 100%!important + margin: 10px 0!important + + + + +.mat-table + overflow: auto + max-height: 500px + + +.element-row + position: relative + + +.element-row:not(.expanded) + cursor: pointer + + +.element-row:not(.expanded):hover + background: #f5f5f5 + + +.element-row.expanded + border-bottom-color: transparent + +.cdk-column-expandedDetail + border-left-style: solid + border-color:#c9c9ca + border-width: 1px + margin-left: 24px + outline: 1px + outline-offset: -2px + +.insurances-container + display: flex + flex-direction: column + max-height: 500px + min-width: 300px + + +mat-card-content + .loading-users + padding: 30px + +table + width: 100% + + tr.detail-row + height: 0 + + + tr.element-row:not(.expanded-row):hover + background: whitesmoke + + + tr.element-row:not(.expanded-row):active + background: #efefef + + .title-cell + width: 200px + + .mat-icon + display: inline-flex + vertical-align: top + font-size: 18px + color: #000000 + + .element-row td + border-bottom-width: 0 + + + .element-detail + overflow: hidden + padding: 0px 5px + border-left: 1px solid #ccc + + .element-diagram + padding: 8px + font-weight: lighter + + .supplies-list + margin: 5px 0px + .supply-description + display: flex + border-bottom: 1px solid #ccc + justify-content: space-between + align-items: center + padding-bottom: 2px + margin-top: 5px + + span + margin-right: 20px + mat-chip + padding: 5px + width: 20px + border-radius: 50% + text-align: center + + .element-description + margin: 5px 0px + .description-title + font-weight: bold + + + .mat-row + &:hover + background-color: #e9f3ff + td.mat-column-arrow + text-align: center + th.mat-column-action + text-align: center + th.mat-column-supplies, td.mat-column-supplies + text-align: center + @media (min-width: $x-small-devices) and (max-width: $small-devices) + text-align: left + + td.mat-column-action + .action-buttons + justify-content: center + td.mat-column-arrow + width: 45px + button + width: auto + padding: 0px 5px + margin-right: 0px + mat-icon + padding: 0px + margin-right: 0px + td.mat-column-action + width: 100px + padding-right: 8px !important + button + width: auto + padding: 0px 5px + mat-icon + padding: 0px 5px + margin-right: 0px + color: #3e3e3e!important + + + .menu-collapse + display: none + + .mat-icon + color: #3e75ff + + // @media (min-width: $x-small-devices) and (max-width: $small-devices) + +.mat-form-field + font-size: 14px + width: 100% + + +.mat-paginator + margin-top: 24px + +@media (min-width: $x-small-devices) and (max-width: $small-devices) + .mat-elevation-z8 + background: transparent + box-shadow: none + margin: 0px -16px + + .mat-header-row + display: none + + td.mat-column-supply_count + text-align: start!important + td.mat-column-action + .menu-collapse + display: flex!important + position: absolute + top: 0 + right: 10px + width: auto + margin: 0 + height: 44px!important + mat-icon + padding: 0!important + .action-buttons + display: none!important + td.mat-column-arrow + button + position: absolute + top: 0 + right: 44px + height: 44px!important + display: flex + + + tbody + display: block + width: 100% + + + .mat-table + background: transparent + * + box-sizing: border-box + + + .mat-row + display: block + overflow: hidden + height: auto + position: relative + clear: both + // box-shadow: 0 2px 1px -1px rgba(0,0,0,.2), 0 1px 1px 0 rgba(0,0,0,.14), 0 1px 3px 0 rgba(0,0,0,.12) + background-color: #fff + border-radius: 3px + + .mat-row + margin-top: 24px + + .detail-row + box-shadow: 0 2px 1px -1px rgba(0,0,0,.2), 0 1px 1px 0 rgba(0,0,0,.14), 0 1px 3px 0 rgba(0,0,0,.12) + margin-top: 0px!important + td.mat-column-expandedDetail + margin: 0px!important + padding: 0px 10px!important + mat-chip + width: 30px!important + + .mat-cell + display: block + width: 100% + padding: 0 16px + margin: 16px 0 + border: 0 none + &:first-child + padding: 0 48px 0 16px + a + font-size: 20px + // font-weight: 400 + color: inherit + + &:before + display: none + + + &.m-card-sub-title + margin-top: -8px + padding: 0 48px 0 16px + color: rgba(0,0,0,.54) + + + + .has_label_on_mobile + &:before + content: attr(data-label) + display: inline + font-weight: normal + + + + .mat-column-star + width: auto + padding: 8px 0 0 !important + margin: 0 + position: absolute + top: 0 + right: 0 + &:before + display: none + + diff --git a/src/app/audit/components/user-list/users-list.component.spec.ts b/src/app/audit/components/user-list/users-list.component.spec.ts new file mode 100644 index 00000000..fa916225 --- /dev/null +++ b/src/app/audit/components/user-list/users-list.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; + +import { UsersListComponent } from './users-list.component'; + +describe('UsersListComponent', () => { + let component: UsersListComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [ UsersListComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(UsersListComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/audit/components/user-list/users-list.component.ts b/src/app/audit/components/user-list/users-list.component.ts new file mode 100644 index 00000000..f5f3ae28 --- /dev/null +++ b/src/app/audit/components/user-list/users-list.component.ts @@ -0,0 +1,145 @@ +import { Component, OnInit, Input, AfterContentInit, ViewChild } from '@angular/core'; +import { Prescriptions } from '@interfaces/prescriptions'; +import { PrescriptionsService } from '@services/prescriptions.service'; +import { MatDialog } from '@angular/material/dialog'; +import { MatTableDataSource } from '@angular/material/table'; +import { MatPaginator } from '@angular/material/paginator'; +import { MatSort } from '@angular/material/sort'; +import * as moment from 'moment'; +import { DialogComponent } from '@pharmacists/components/dialog/dialog.component'; +import { AuthService } from '@auth/services/auth.service'; +import { PrescriptionPrinterComponent } from '@pharmacists/components/prescription-printer/prescription-printer.component'; +import { detailExpand, arrowDirection } from '@animations/animations.template'; +import { DialogReportComponent } from '../dialog-report/dialog-report.component'; +import { User } from '@interfaces/users'; +import { UserService } from '@services/users.service'; + +@Component({ + selector: 'app-users-list', + templateUrl: './users-list.component.html', + styleUrls: ['./users-list.component.sass'], + animations: [ + detailExpand, + arrowDirection + ], + providers: [PrescriptionPrinterComponent] +}) +export class UsersListComponent implements OnInit, AfterContentInit { + + + // displayedColumns: string[] = ['businessName', 'date', 'status', 'supplies', 'action', 'arrow']; + displayedColumns: string[] = ['businessName', 'cuil', 'enrollment', 'lastLogin', 'isActive' ]; + dataSource = new MatTableDataSource([]); + expandedElement: User | null; + loadingUsers: boolean; + auditId: string; + pharmacistId: string; + isAdmin: boolean = false; + fechaDesde: Date; + fechaHasta: Date; + users: User[]; + user: User; + + @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator; + //@ViewChild(MatSort, { static: true }) sort: MatSort; + @ViewChild('tbSort') tbSort = new MatSort(); + + constructor( + private authService: AuthService, + private usersService: UserService, + public dialog: MatDialog) { }; + + ngOnInit(): void { + this.loadingUsers = true; + this.usersService.getUsers().subscribe((users) => { + this.dataSource = new MatTableDataSource(users); + console.log(users); + this.dataSource.sortingDataAccessor = (item, property) => { + switch (property) { + case 'businessName': return item.businessName; + case 'role': return item.roles[0].role; + default: return item[property]; + } + }; + this.dataSource.sort = this.tbSort; + this.dataSource.paginator = this.paginator; + this.loadingUsers = false; + }) + this.auditId = this.authService.getLoggedUserId(); + } + + ngAfterContentInit() { + this.dataSource.sort = this.tbSort; + this.paginator._intl.itemsPerPageLabel = "Usuarios por página"; + this.paginator._intl.firstPageLabel = "Primer página"; + this.paginator._intl.lastPageLabel = "Última página"; + this.paginator._intl.nextPageLabel = "Siguiente"; + this.paginator._intl.previousPageLabel = "Anterior"; + this.paginator._intl.getRangeLabel = (page: number, pageSize: number, length: number): string => { + if (length == 0 || pageSize == 0) { + return `0 de ${length}`; + } + length = Math.max(length, 0); + const startIndex = page * pageSize; + const endIndex = startIndex < length ? Math.min(startIndex + pageSize, length) : startIndex + pageSize; + return `${startIndex + 1} – ${endIndex} de ${length}`; + } + } + + applyFilter(filterValue: string) { + this.dataSource.filterPredicate = (data: User, filter: string) => { + const accumulator = (currentTerm, key) => { + // enable filter by lastName / firstName / date + return currentTerm + data.businessName + data.cuil + data.enrollment; + }; + + const dataStr = Object.keys(data).reduce(accumulator, '').toLowerCase(); + // Transform the filter by converting it to lowercase and removing whitespace. + const transformedFilter = filter.trim().toLowerCase(); + return dataStr.indexOf(transformedFilter) !== -1; + }; + this.dataSource.filter = filterValue.trim().toLowerCase(); + if (this.dataSource.paginator) { + this.dataSource.paginator.firstPage(); + } + } + + + // Show a dialog + openDialog(aDialogType: string, aPrescription?: Prescriptions, aText?: string): void { + const dialogRef = this.dialog.open(DialogComponent, { + width: '400px', + data: { dialogType: aDialogType, prescription: aPrescription, text: aText } + }); + + dialogRef.afterClosed().subscribe(result => { + console.log('The dialog was closed'); + }); + } + + activateUser(user: User){ + this.loadingUsers = true; + this.usersService.updateIsActive(user._id, true).subscribe((updatedUser: User) => { + const data = this.dataSource.data.slice(); + const index: number = data.findIndex((u: User) => u._id === updatedUser._id); + if (index !== -1) { + data[index] = updatedUser; + this.dataSource.data = data; + } + }) + this.loadingUsers = false; + }; + + deactivateUser(user: User){ + this.loadingUsers = true; + this.usersService.updateIsActive(user._id, false).subscribe((updatedUser: User) => { + const data = this.dataSource.data.slice(); + const index: number = data.findIndex((u: User) => u._id === updatedUser._id); + if (index !== -1) { + data[index] = updatedUser; + this.dataSource.data = data; + } + }) + this.loadingUsers = false; + } +} diff --git a/src/app/audit/pipes/format-time.pipe.spec.ts b/src/app/audit/pipes/format-time.pipe.spec.ts new file mode 100644 index 00000000..381db03e --- /dev/null +++ b/src/app/audit/pipes/format-time.pipe.spec.ts @@ -0,0 +1,8 @@ +import { FormatTimePipe } from './format-time.pipe'; + +describe('FormatTimePipe', () => { + it('create an instance', () => { + const pipe = new FormatTimePipe(); + expect(pipe).toBeTruthy(); + }); +}); diff --git a/src/app/audit/pipes/format-time.pipe.ts b/src/app/audit/pipes/format-time.pipe.ts new file mode 100644 index 00000000..f0d883ac --- /dev/null +++ b/src/app/audit/pipes/format-time.pipe.ts @@ -0,0 +1,22 @@ +import { Pipe, PipeTransform } from '@angular/core'; + +@Pipe({ + name: 'formatTime' +}) +export class FormatTimePipe implements PipeTransform { + + transform(value: number): string { + // for HH:MM:SS + const hours: number = Math.floor(value / 3600); + const minutes: number = Math.floor((value % 3600) / 60); + const seconds: number = Math.floor(value - minutes * 60); + if(hours > 0){ + return `${('0' + hours).slice(-1)} `; + }else if(minutes > 0){ + return `${('00' + minutes).slice(-2)}`; + }else if(seconds > 0){ + return `${('00' + seconds).slice(-2)}`; + } + } + +} diff --git a/src/app/auth/auth-routing.module.ts b/src/app/auth/auth-routing.module.ts index f087c49f..b61cd3a9 100644 --- a/src/app/auth/auth-routing.module.ts +++ b/src/app/auth/auth-routing.module.ts @@ -6,6 +6,10 @@ import { LoginComponent } from '@auth/components/login/login.component'; import { ResetPasswordComponent } from '@auth/components/reset-password/reset-password.component'; import { IsSignedInGuard } from '@auth/guards/is-signed-in.guard'; import { DialogComponent } from '@auth/components/dialog/dialog.component'; +import { ForgotComponent } from '@auth/components/forgot/forgot.component'; +import { RecoveryComponent } from '@auth/components/recovery-password/recovery-password.component'; +import { NewUserComponent } from './components/new-user/new-user.component'; +import { NewUserPharmacistComponent } from './components/new-user-pharmacist/new-user-pharmacist.component'; const routes: Routes = [ @@ -15,13 +19,29 @@ const routes: Routes = [ children: [ { path: 'login', - component: LoginComponent , - canActivate: [ IsSignedInGuard ] + component: LoginComponent, + canActivate: [IsSignedInGuard], }, { path: 'reset-password', component: ResetPasswordComponent, - } + }, + { + path: 'forgot-password', + component: ForgotComponent, + }, + { + path: 'recovery-password/:token', + component: RecoveryComponent, + }, + { + path: 'new-user', + component: NewUserComponent, + }, + { + path: 'new-user-pharmacist', + component: NewUserPharmacistComponent, + }, ] } ]; @@ -36,7 +56,9 @@ export const routingComponents = [ AuthComponent, LoginComponent, ResetPasswordComponent, - DialogComponent + DialogComponent, + ForgotComponent, + RecoveryComponent ]; diff --git a/src/app/auth/auth.component.sass b/src/app/auth/auth.component.sass index 1f9ded98..dba320ad 100644 --- a/src/app/auth/auth.component.sass +++ b/src/app/auth/auth.component.sass @@ -10,9 +10,6 @@ width: 100px height: 100px -@font-face - font-family: roboto - src: url(assets/fonts/RobotoCondensed-Regular.ttf) format("opentype") .title-login color: white diff --git a/src/app/auth/auth.component.spec.ts b/src/app/auth/auth.component.spec.ts index 884576c8..be8f24f5 100644 --- a/src/app/auth/auth.component.spec.ts +++ b/src/app/auth/auth.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { AuthComponent } from './auth.component'; @@ -6,7 +6,7 @@ describe('AuthComponent', () => { let component: AuthComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ AuthComponent ] }) diff --git a/src/app/auth/auth.module.ts b/src/app/auth/auth.module.ts index 58952e1f..4fbdd5c3 100644 --- a/src/app/auth/auth.module.ts +++ b/src/app/auth/auth.module.ts @@ -2,8 +2,9 @@ import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { CommonModule } from '@angular/common'; import { ReactiveFormsModule } from '@angular/forms'; +import { NgxTurnstileModule } from '@shared/ngx-turnstile/ngx-turnstile.module'; import { HttpClientModule } from '@angular/common/http'; -import { AuthRoutingModule, routingComponents } from '@auth/auth-routing.module'; +import { AuthRoutingModule, routingComponents } from '@auth/auth-routing.module'; import { httpInterceptorProvider } from '@auth/httpInterceptorProvider'; // services import { AuthService } from '@auth/services/auth.service'; @@ -16,18 +17,28 @@ import { MatButtonModule } from '@angular/material/button'; import { MatCardModule } from '@angular/material/card'; import { MatProgressSpinnerModule } from '@angular/material/progress-spinner'; import { DialogComponent } from './components/dialog/dialog.component'; +import { NewUserComponent } from './components/new-user/new-user.component'; +import { NewUserPharmacistComponent } from './components/new-user-pharmacist/new-user-pharmacist.component'; +import { MatSelectModule } from '@angular/material/select'; +import {MatDatepickerModule} from '@angular/material/datepicker'; +import { NgxTurnstileFormsModule } from '../shared/ngx-turnstile/ngx-turnstile-forms.module'; + @NgModule({ declarations: [ routingComponents, + NewUserComponent, + NewUserPharmacistComponent, ], imports: [ CommonModule, ReactiveFormsModule, AuthRoutingModule, BrowserModule, + NgxTurnstileModule, + NgxTurnstileFormsModule, HttpClientModule, FlexLayoutModule, MatFormFieldModule, @@ -35,7 +46,9 @@ import { DialogComponent } from './components/dialog/dialog.component'; MatIconModule, MatButtonModule, MatCardModule, - MatProgressSpinnerModule + MatProgressSpinnerModule, + MatSelectModule, + MatDatepickerModule ], providers: [ AuthService, diff --git a/src/app/auth/components/dialog/dialog.component.spec.ts b/src/app/auth/components/dialog/dialog.component.spec.ts index a6bce8db..7a5ff84a 100644 --- a/src/app/auth/components/dialog/dialog.component.spec.ts +++ b/src/app/auth/components/dialog/dialog.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { DialogComponent } from './dialog.component'; @@ -6,7 +6,7 @@ describe('DialogComponent', () => { let component: DialogComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ DialogComponent ] }) diff --git a/src/app/auth/components/forgot/forgot.component.html b/src/app/auth/components/forgot/forgot.component.html new file mode 100644 index 00000000..2aaf3e1e --- /dev/null +++ b/src/app/auth/components/forgot/forgot.component.html @@ -0,0 +1,51 @@ + + + + +
+ + +
+ +

Restablecer contraseña

+ + Por favor, ingrese su usuario. Recibirá un correo electrónico con instrucciones para restablecer su contraseña. + + + Hemos enviado un e-mail para regenerar su contraseña. + + +
+
+ + + + Usuario es requerido + + + +
+ + +
+
+ + +
+ + +
+
+
+
+
+
diff --git a/src/app/auth/components/forgot/forgot.component.sass b/src/app/auth/components/forgot/forgot.component.sass new file mode 100644 index 00000000..b7720c51 --- /dev/null +++ b/src/app/auth/components/forgot/forgot.component.sass @@ -0,0 +1,66 @@ +// component selector +@import 'styles/_variables' + +$panels-height: 294px +$panels-height-xl: 325px + +:host + display: block + width: 100% + height: 100% + +.cards-container + margin-bottom: 4em + + + .form-panel + width: calc(100% / 3) + mat-card + box-sizing: content-box!important + height: 18.21rem + height: calc(#{$panels-height} - 32px) + // @media (min-width: $larger-devices) and (max-width: $x-larger-devices) + // height: calc(#{$panels-height-xl} - 32px) + + @media (min-width: $x-small-devices) and (max-width: $larger-devices) + height: auto + mat-card-title, mat-card-content + margin: 0!important + .login-action + margin-top: 20px + @media (min-width: $larger-devices) and (max-width: $x-larger-devices) + margin-top: 40px + + @media (min-width: $larger-devices) and (max-width: $xx-larger-devices) + .login-error + margin-bottom: -15px!important + + mat-card-actions + padding: 0!important + margin: 0!important + @media (min-width: $x-small-devices) and (max-width: $larger-devices) + flex-direction: column!important + a.btn-link + max-width: 100%!important + margin: 10px 0!important + + @media (min-width: $medium-devices) and (max-width: $larger-devices) + width: 310px + @media (min-width: $small-devices) and (max-width: $medium-devices) + width: 310px + @media (min-width: $x-small-devices) and (max-width: $small-devices) + width: 480px + max-width: calc(100% - 10px) + margin: 10px auto!important + + +.logo + margin-bottom: 2em + @media (min-width: $x-small-devices) and (max-width: $small-devices) + margin-bottom: 1em + .icon-login + width: 100px + height: 100px + .title-login + color: white + font-family: roboto \ No newline at end of file diff --git a/src/app/auth/components/forgot/forgot.component.ts b/src/app/auth/components/forgot/forgot.component.ts new file mode 100644 index 00000000..eda0fdbe --- /dev/null +++ b/src/app/auth/components/forgot/forgot.component.ts @@ -0,0 +1,82 @@ +import { Component, OnInit } from '@angular/core'; +import { FormBuilder, FormGroup, Validators, AbstractControl, FormGroupDirective } from '@angular/forms'; +import { AuthService } from '@auth/services/auth.service'; +import { Router } from '@angular/router'; +import { ThemePalette } from '@angular/material/core'; +import { DialogComponent } from '@auth/components/dialog/dialog.component'; +// Material +import { MatDialog } from '@angular/material/dialog'; +import { MatSnackBar } from '@angular/material/snack-bar'; + +@Component({ + selector: 'app-forgot', + templateUrl: './forgot.component.html', + styleUrls: ['./forgot.component.sass'] +}) +export class ForgotComponent implements OnInit { + + forgotForm: FormGroup; + hide: boolean = true; + error: string; + readonly spinnerColor: ThemePalette = 'primary'; + readonly spinnerDiameter: number = 30; + showSubmit: boolean = false; + mailEnviado: boolean; + + constructor( + private fBuilder: FormBuilder, + private authService: AuthService, + private router: Router, + private _snackBar: MatSnackBar, + public dialog: MatDialog + ) { } + + ngOnInit(): void { + this.initforgotForm(); + } + + initforgotForm(): void { + this.forgotForm = this.fBuilder.group({ + usuario: ['', [ + Validators.required + ]] + }); + } + + cancelar() { + this.router.navigate(['/auth/login']); + } + + onSubmitEvent(resetForm: FormGroup, resetNgForm: FormGroupDirective): void { + if (this.forgotForm.valid) { + this.showSubmit = true; + this.authService.setValidationTokenAndNotify(this.forgotForm.value).subscribe( + data => { + if (data.status === 'ok') { + this.mailEnviado = true; + this.openSnackBar(data.msg, "Cerrar"); + } else { + this.openSnackBar(data.msg, "Cerrar"); + } + this.showSubmit = false; + }, + err => { + resetNgForm.resetForm(); + resetForm.reset(); + this.error = err; + this.showSubmit = false; + }) + } + } + + // Show a notification + openSnackBar(message: string, action: string) { + this._snackBar.open(message, action, { + duration: 5000 + }); + } + + get usuario(): AbstractControl { + return this.forgotForm.get('usuario'); + } +} diff --git a/src/app/auth/components/login/login.component.html b/src/app/auth/components/login/login.component.html index f653f4f9..3206cb43 100644 --- a/src/app/auth/components/login/login.component.html +++ b/src/app/auth/components/login/login.component.html @@ -1,102 +1,101 @@ + + - - +
+

error Error

+
+

No se ha podido dispensar la receta de {{data.text}}. Inténtelo de nuevo más tarde.

+
+
+ +
+

error_outline Atención

diff --git a/src/app/pharmacists/components/dialog/dialog.component.spec.ts b/src/app/pharmacists/components/dialog/dialog.component.spec.ts index a6bce8db..7a5ff84a 100644 --- a/src/app/pharmacists/components/dialog/dialog.component.spec.ts +++ b/src/app/pharmacists/components/dialog/dialog.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { DialogComponent } from './dialog.component'; @@ -6,7 +6,7 @@ describe('DialogComponent', () => { let component: DialogComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ DialogComponent ] }) diff --git a/src/app/pharmacists/components/dialog/dialog.component.ts b/src/app/pharmacists/components/dialog/dialog.component.ts index 0037bed0..4a7eb711 100644 --- a/src/app/pharmacists/components/dialog/dialog.component.ts +++ b/src/app/pharmacists/components/dialog/dialog.component.ts @@ -4,7 +4,7 @@ import { fadeInOnEnterAnimation, fadeOutOnLeaveAnimation } from 'angular-animati import { Prescriptions } from '@interfaces/prescriptions'; import {MatIconModule} from '@angular/material/icon'; import { animate, state, style, transition, trigger } from '@angular/animations'; -import { PrescriptionPrinterComponent } from '../prescription-printer/prescription-printer.component'; +import { UnifiedPrinterComponent } from '@shared/components/unified-printer/unified-printer.component'; @Component({ @@ -14,15 +14,14 @@ import { PrescriptionPrinterComponent } from '../prescription-printer/prescripti animations: [ fadeInOnEnterAnimation(), fadeOutOnLeaveAnimation() - ], - providers: [PrescriptionPrinterComponent] + ] }) export class DialogComponent implements OnInit { constructor( public dialogRef: MatDialogRef, @Inject(MAT_DIALOG_DATA) public data: DialogData, - private prescriptionPrinter: PrescriptionPrinterComponent + private unifiedPrinter: UnifiedPrinterComponent ) {} ngOnInit(): void { @@ -32,9 +31,6 @@ export class DialogComponent implements OnInit { this.dialogRef.close(); } - printPrescription(prescription: Prescriptions){ - this.prescriptionPrinter.print(prescription); - } } export interface DialogData { diff --git a/src/app/pharmacists/components/pharmacists-form/pharmacists-form.component.html b/src/app/pharmacists/components/pharmacists-form/pharmacists-form.component.html index fb3c3d86..5dbcbd3f 100644 --- a/src/app/pharmacists/components/pharmacists-form/pharmacists-form.component.html +++ b/src/app/pharmacists/components/pharmacists-form/pharmacists-form.component.html @@ -31,7 +31,19 @@

- Debe ingresar 8 digitos + Debe ingresar al menos 7 dígitos + + + + + + Sexo paciente + + Masculino + Femenino + + + Debe seleccionar el sexo del paciente @@ -51,6 +63,11 @@

+ + +

diff --git a/src/app/pharmacists/components/pharmacists-form/pharmacists-form.component.spec.ts b/src/app/pharmacists/components/pharmacists-form/pharmacists-form.component.spec.ts index 39de25e7..08028243 100644 --- a/src/app/pharmacists/components/pharmacists-form/pharmacists-form.component.spec.ts +++ b/src/app/pharmacists/components/pharmacists-form/pharmacists-form.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { PharmacistsFormComponent } from './pharmacists-form.component'; @@ -6,7 +6,7 @@ describe('PharmacistsFormComponent', () => { let component: PharmacistsFormComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ PharmacistsFormComponent ] }) diff --git a/src/app/pharmacists/components/pharmacists-form/pharmacists-form.component.ts b/src/app/pharmacists/components/pharmacists-form/pharmacists-form.component.ts index 6cfd4ca6..5177b5f9 100644 --- a/src/app/pharmacists/components/pharmacists-form/pharmacists-form.component.ts +++ b/src/app/pharmacists/components/pharmacists-form/pharmacists-form.component.ts @@ -1,10 +1,12 @@ import { Component, OnInit, ViewChild } from '@angular/core'; import { FormBuilder, FormGroup, AbstractControl, Validators } from '@angular/forms'; -import { Observable } from 'rxjs'; +import { catchError } from 'rxjs/operators'; +import { Observable, combineLatest, forkJoin, of } from 'rxjs'; // Services import { PrescriptionsService } from '@services/prescriptions.service'; import { InsurancesService } from '@services/insurance.service'; +import { AndesPrescriptionsService } from '@services/andesPrescription.service'; // Interfaces import { Patient } from '@interfaces/patients'; @@ -39,60 +41,60 @@ export class PharmacistsFormComponent implements OnInit { dniShowSpinner: boolean = false; dateShowSpinner: boolean = false; private lastDni: string; + private lastSexo: string; private lastDate: string; constructor( private fBuilder: FormBuilder, private apiPrescriptions: PrescriptionsService, + private apiAndesPrescriptions: AndesPrescriptionsService, private apiInsurances: InsurancesService, public dialog: MatDialog, ){} - ngOnInit(): void{ + ngOnInit(): void { this.initFilterPrescriptionForm(); + } - this.prescriptionForm.valueChanges.subscribe( - values => { - const digestDate = typeof(values.dateFilter) !== 'undefined' && values.dateFilter != null && values.dateFilter !== '' ? values.dateFilter.format('YYYY-MM-DD') : ''; - - if(typeof(values.patient_dni) !== 'undefined' && values.patient_dni.length === 8){ - - this.dniShowSpinner = this.lastDni != values.patient_dni; - this.dateShowSpinner = this.lastDate != digestDate; - - this.apiPrescriptions.getFromDniAndDate({patient_dni: values.patient_dni, dateFilter: digestDate}).subscribe( - success => { - this.lastDni = values.patient_dni; - this.lastDate = digestDate; - - this.dniShowSpinner = false; - this.dateShowSpinner = false; - - if(!success){ - this.openDialog("noPrescriptions"); - } - } - ); - - if(values.patient_dni !== this.lastDniConsult){ - this.lastDniConsult = values.patient_dni; - this.apiInsurances.getInsuranceByPatientDni(values.patient_dni).subscribe( - res => { - this.insurances = res; - }); - } - + searchPrescriptions(): void { + const values = this.prescriptionForm.value; + const digestDate = typeof(values.dateFilter) !== 'undefined' && values.dateFilter != null && values.dateFilter !== '' ? values.dateFilter.format('YYYY-MM-DD') : ''; + + if (typeof(values.patient_dni) !== 'undefined' && values.patient_dni.length >= 7) { + this.dniShowSpinner = this.lastDni != values.patient_dni; + this.dateShowSpinner = this.lastDate != digestDate; + + forkJoin([ + this.apiPrescriptions.getFromDniAndDate({ patient_dni: values.patient_dni, dateFilter: digestDate }).pipe(catchError(() => of(false))), + this.apiAndesPrescriptions.getPrescriptionsFromAndes({ patient_dni: values.patient_dni, patient_sex: values.patient_sexo }).pipe(catchError(() => of(false))) + ]).subscribe(([prescriptionsSuccess, andesPrescriptionsSuccess]) => { + this.lastDni = values.patient_dni; + this.lastDate = digestDate; + this.dniShowSpinner = false; + this.dateShowSpinner = false; + if (!prescriptionsSuccess && !andesPrescriptionsSuccess) { + this.openDialog("noPrescriptions"); } - } - ) + }); + + // if (values.patient_dni !== this.lastDniConsult) { + // this.lastDniConsult = values.patient_dni; + // this.apiInsurances.getInsuranceByPatientDni(values.patient_dni).subscribe( + // res => { + // this.insurances = res; + // } + // ); + // } + } } initFilterPrescriptionForm(){ this.prescriptionForm = this.fBuilder.group({ patient_dni: ['', [ Validators.required, - Validators.minLength(8) + Validators.minLength(7) ]], + patient_sexo: [''], dateFilter: ['', [ ]], }); @@ -120,6 +122,10 @@ export class PharmacistsFormComponent implements OnInit { return this.prescriptionForm.get('patient_dni'); } + get patient_sexo(): AbstractControl{ + return this.prescriptionForm.get('patient_sexo'); + } + get dateFilter(): AbstractControl{ return this.prescriptionForm.get('dateFilter'); } diff --git a/src/app/pharmacists/components/prescription-list/prescription-list.component.html b/src/app/pharmacists/components/prescription-list/prescription-list.component.html index 7aa6d0b8..746aebc8 100644 --- a/src/app/pharmacists/components/prescription-list/prescription-list.component.html +++ b/src/app/pharmacists/components/prescription-list/prescription-list.component.html @@ -1,122 +1,198 @@ - -

- gesture - - Recetas de {{dataSource.data[0].patient.lastName}}, {{dataSource.data[0].patient.firstName}} DNI {{dataSource.data[0].patient.dni}} - -

-
- - - - - - - -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Profesional {{ element.professional.businessName.toUpperCase() }} Fecha {{element.date | date : 'dd/MM/yyyy' }} Estado {{ element.status }} Insumos {{element.supplies.length}} Acción - - - - - - - -
- - - - -
-
- - -
-
-
-
- {{ supp.supply.name }} {{ supp.quantity }} -
-
-
Diagnóstico: {{element.diagnostic}}
-
Observaciones: {{element.observation}}
-
+ +

+ gesture + + Recetas de + {{dataSource.data[0].patient.lastName}}, + {{dataSource.data[0].patient.firstName}} DNI {{dataSource.data[0].patient.dni}} + de + {{dataSource.data[0].paciente.apellido}}, + {{dataSource.data[0].paciente.nombre}} DNI {{dataSource.data[0].paciente.documento}} + + +

+
+ + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Medicamento + {{ element.medicamento?.concepto?.term || (element.supplies?.length ? + element.supplies[0]?.supply?.name : '') }} + Fecha + {{element.date | date : 'dd/MM/yyyy'}} + + {{(element.fechaRegistro || element.fechaPrestacion)| date : 'dd/MM/yyyy'}} + + Estado {{ + element.estadoActual?.tipo?.toUpperCase() || + (element.status === 'pendiente' ? 'VIGENTE' : (element.status === 'finalizada' ? + 'DISPENSADA' : element.status?.toUpperCase())) }} + Insumos + {{element.supplies?.length || element.medicamento?.cantidad}} envases Acción + + + + + + + +
+ + + + +
+
+ + +
+
+
+
+ + {{ supp.supply.name }} x {{supp.quantityPresentation}} + + {{ supp.supply.name }} x + {{supp.quantity}} +
+
+
+ + Cantidad de envases: {{supp.quantity}} +
+
+ Diagnóstico: {{element.supplies[0]?.diagnostic}} +
+
Observaciones: {{element.observation}} +
+
+ Profesional: + {{ element.professional?.businessName}} +
+
+ Duplicado + Triplicado +
+
+
+
+
+
+
+ {{ element.medicamento?.concepto?.term }} x {{ + element.medicamento?.cantidad }} +
+
+
+ + Cantidad de envases: {{ element.medicamento?.cantEnvases }} +
+
+ Diagnóstico: {{element.diagnostico?.term|| + element.diagnostico.descripcion}} +
+
Observaciones: + {{element.medicamento?.dosisDiaria?.notaMedica}} +
+
+ Profesional: + {{ element.profesional?.nombre }} +
+
+
+
-
-
-
- -
- -
- - +
+ +
+ +
- - + + \ No newline at end of file diff --git a/src/app/pharmacists/components/prescription-list/prescription-list.component.spec.ts b/src/app/pharmacists/components/prescription-list/prescription-list.component.spec.ts index 08da58d0..746cbe2f 100644 --- a/src/app/pharmacists/components/prescription-list/prescription-list.component.spec.ts +++ b/src/app/pharmacists/components/prescription-list/prescription-list.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { PrescriptionListComponent } from './prescription-list.component'; @@ -6,7 +6,7 @@ describe('PrescriptionListComponent', () => { let component: PrescriptionListComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ PrescriptionListComponent ] }) diff --git a/src/app/pharmacists/components/prescription-list/prescription-list.component.ts b/src/app/pharmacists/components/prescription-list/prescription-list.component.ts index db899663..319b9a55 100644 --- a/src/app/pharmacists/components/prescription-list/prescription-list.component.ts +++ b/src/app/pharmacists/components/prescription-list/prescription-list.component.ts @@ -1,166 +1,334 @@ -import { Component, OnInit, Input, AfterContentInit, ViewChild } from '@angular/core'; +import { Component, OnInit, AfterContentInit, ViewChild, OnDestroy } from '@angular/core'; import { Prescriptions } from '@interfaces/prescriptions'; +import AndesPrescriptions from '@interfaces/andesPrescriptions'; import { PrescriptionsService } from '@services/prescriptions.service'; +import { AndesPrescriptionsService } from '@services/andesPrescription.service'; import { MatDialog } from '@angular/material/dialog'; -import {MatTableDataSource} from '@angular/material/table'; -import {MatPaginator} from '@angular/material/paginator'; -import {MatSort} from '@angular/material/sort'; +import { MatTableDataSource } from '@angular/material/table'; +import { MatPaginator } from '@angular/material/paginator'; +import { MatSort } from '@angular/material/sort'; import * as moment from 'moment'; import { DialogComponent } from '@pharmacists/components/dialog/dialog.component'; import { AuthService } from '@auth/services/auth.service'; -import { PrescriptionPrinterComponent } from '@pharmacists/components/prescription-printer/prescription-printer.component'; import { detailExpand, arrowDirection } from '@animations/animations.template'; +import { DialogReportComponent } from '../dialog-report/dialog-report.component'; +import { combineLatest, Subject } from 'rxjs'; +import { takeUntil } from 'rxjs/operators'; +import { UnifiedPrinterComponent } from '@shared/components/unified-printer/unified-printer.component'; @Component({ - selector: 'app-prescription-list', - templateUrl: './prescription-list.component.html', - styleUrls: ['./prescription-list.component.sass'], - animations: [ - detailExpand, - arrowDirection - ], - providers: [PrescriptionPrinterComponent] + selector: 'app-prescription-list', + templateUrl: './prescription-list.component.html', + styleUrls: ['./prescription-list.component.sass'], + animations: [ + detailExpand, + arrowDirection + ], + }) -export class PrescriptionListComponent implements OnInit, AfterContentInit { - - @Input() prescriptions: Prescriptions[]; - - displayedColumns: string[] = ['professional', 'date', 'status', 'supplies', 'action', 'arrow']; - dataSource = new MatTableDataSource([]); - expandedElement: Prescriptions | null; - loadingPrescriptions: boolean; - lapseTime: number = 2; // lapse of time that a dispensed prescription can been undo action, and put it back as "pendiente" - pharmacistId: string; - - @ViewChild(MatPaginator, {static: true}) paginator: MatPaginator; - @ViewChild(MatSort, {static: true}) sort: MatSort; - - constructor( - private authService: AuthService, - private prescriptionService: PrescriptionsService, - private prescriptionPrinter: PrescriptionPrinterComponent, - public dialog: MatDialog ) { }; - - ngOnInit(): void { - this.loadingPrescriptions = true; - this.prescriptionService.prescriptions.subscribe((prescriptions: Prescriptions[]) => { - this.dataSource = new MatTableDataSource(prescriptions); - // sort after populate dataSource - this.dataSource.sortingDataAccessor = (item, property) => { - switch(property) { - case 'patient': return item.patient.lastName + item.patient.firstName; - case 'prescription_date': return new Date(item.date).getTime(); - default: return item[property]; +export class PrescriptionListComponent implements OnInit, AfterContentInit, OnDestroy { + private destroy$ = new Subject(); + + displayedColumns: string[] = ['medicamento', 'date', 'status', 'action', 'arrow']; + dataSource = new MatTableDataSource([]); + expandedElement: Prescriptions | null; + loadingPrescriptions: boolean; + lapseTime = 2; + pharmacistId: string; + isAdmin = false; + fechaDesde: Date; + fechaHasta: Date; + + canDispenseMap = new Map(); + isStatusMap = new Map(); + canCounterMap = new Map(); + + @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator; + @ViewChild(MatSort, { static: true }) sort: MatSort; + + constructor( + private authService: AuthService, + private prescriptionService: PrescriptionsService, + private andesPrescriptionService: AndesPrescriptionsService, + private unifiedPrinter: UnifiedPrinterComponent, + public dialog: MatDialog) { }; + + ngOnInit(): void { + this.pharmacistId = this.authService.getLoggedUserId(); + this.isAdmin = this.authService.isAdminRole(); + this.initDataSource(); + this.loadPrescriptions(); + } + + private initDataSource(): void { + this.dataSource.sortingDataAccessor = (item, property) => { + switch (property) { + case 'patient': return item.patient?.lastName + item.patient?.firstName; + case 'prescription_date': return new Date(item.date || item.fechaPrestacion).getTime(); + default: return item[property]; + } + }; + this.dataSource.sort = this.sort; + } + + private loadPrescriptions(offset: number = 0, limit: number = 10): void { + this.loadingPrescriptions = true; + + combineLatest([ + this.andesPrescriptionService.prescriptions, + this.prescriptionService.prescriptions + ]).pipe( + takeUntil(this.destroy$) + ).subscribe(([andesPrescriptions, prescriptions]) => { + const previousDataLength = this.dataSource.data.length; + const newData = [...andesPrescriptions, ...prescriptions]; + + this.dataSource.data = newData; + this.updateMaps(); + + if (previousDataLength !== newData.length || previousDataLength === 0) { + setTimeout(() => { + if (this.paginator) { + this.dataSource.paginator = this.paginator; + this.paginator.page.pipe( + takeUntil(this.destroy$) + ).subscribe((pageEvent) => { + }); + } + }); + } + + this.loadingPrescriptions = false; + }); + } + + ngOnDestroy(): void { + this.destroy$.next(); + this.destroy$.complete(); + } + + /** + * Refresca las prescripciones desde los servicios + */ + refreshPrescriptions(): void { + this.loadingPrescriptions = true; + this.updateMaps(); + this.loadingPrescriptions = false; + } + + ngAfterContentInit() { + this.paginator._intl.itemsPerPageLabel = 'Prescripciones por página'; + this.paginator._intl.firstPageLabel = 'Primer página'; + this.paginator._intl.lastPageLabel = 'Última página'; + this.paginator._intl.nextPageLabel = 'Siguiente'; + this.paginator._intl.previousPageLabel = 'Anterior'; + this.paginator._intl.getRangeLabel = (page: number, pageSize: number, length: number): string => { + if (length === 0 || pageSize === 0) { + return `0 de ${length}`; + } + length = Math.max(length, 0); + const startIndex = page * pageSize; + const endIndex = startIndex < length ? Math.min(startIndex + pageSize, length) : startIndex + pageSize; + return `${startIndex + 1} – ${endIndex} de ${length}`; + }; + } + + applyFilter(filterValue: string) { + this.dataSource.filterPredicate = (data: Prescriptions, filter: string) => { + const accumulator = (currentTerm, key) => { + // enable filter by lastName / firstName / date + return currentTerm + data.status + moment(data.date, 'YYYY-MM-DD').format('DD/MM/YYY').toString(); + }; + + const dataStr = Object.keys(data).reduce(accumulator, '').toLowerCase(); + // Transform the filter by converting it to lowercase and removing whitespace. + const transformedFilter = filter.trim().toLowerCase(); + return dataStr.indexOf(transformedFilter) !== -1; + }; + this.dataSource.filter = filterValue.trim().toLowerCase(); + if (this.dataSource.paginator) { + this.dataSource.paginator.firstPage(); + } + } + + dispense(prescription: Prescriptions | AndesPrescriptions) { + if ('status' in prescription) { + this.prescriptionService.dispense(prescription._id, this.pharmacistId).subscribe( + success => { + if (success) { + // Actualizar los mapas después de la operación exitosa + this.updateMaps(); + this.openDialog('dispensed', prescription, prescription.professional.businessName); + } + }, + error => { + this.openDialog('error-dispensed', prescription, error.message || 'Error al dispensar la prescripción'); + } + ); + } else if ('estadoActual' in prescription) { + this.andesPrescriptionService.dispense(prescription, this.pharmacistId).subscribe( + success => { + if (success) { + // Actualizar los mapas después de la operación exitosa + this.updateMaps(); + this.openDialog('dispensed', prescription, prescription.profesional.nombre); + } + }, + error => { + this.openDialog('error-dispensed', prescription, error.message || 'Error al dispensar la prescripción'); + } + ); + } + } + + cancelDispense(prescription: Prescriptions | AndesPrescriptions) { + if ('status' in prescription) { + this.prescriptionService.cancelDispense(prescription._id, this.pharmacistId).subscribe( + success => { + if (success) { + this.updateMaps(); + this.openDialog('cancel-dispensed', prescription); + } + }, + error => { + this.openDialog('error-cancel-dispensed', prescription, error.message || 'Error al cancelar la dispensación'); + } + ); + } else if ('estadoActual' in prescription) { + this.andesPrescriptionService.cancelDispense(prescription._id, this.pharmacistId).subscribe( + success => { + if (success) { + this.updateMaps(); + this.openDialog('cancel-dispensed', prescription); + } + }, + error => { + this.openDialog('error-cancel-dispensed', prescription, error.message || 'Error al cancelar la dispensación'); + } + ); + } + } + + // Show a dialog + openDialog(aDialogType: string, aPrescription?: Prescriptions | AndesPrescriptions, aText?: string): void { + const dialogRef = this.dialog.open(DialogComponent, { + width: '400px', + data: { dialogType: aDialogType, prescription: aPrescription, text: aText } + }); + + dialogRef.afterClosed().subscribe(result => { + // eslint-disable-next-line no-console + console.log('The dialog was closed'); + }); + } + + canPrint(prescription: Prescriptions): boolean { + return (prescription.status === 'Dispensada') && (prescription.dispensedBy?.userId === this.authService.getLoggedUserId()); + } + + canDispense(prescription: Prescriptions | AndesPrescriptions): boolean { + const canDispenseFromMap = this.canDispenseMap.get(prescription._id); + if (canDispenseFromMap !== undefined) { + return canDispenseFromMap; + } + return this.calculateCanDispense(prescription); + } + + async printPrescription(prescription: Prescriptions | AndesPrescriptions) { + if ('status' in prescription) { + await this.unifiedPrinter.printPrescription(prescription); + } else if ('estadoActual' in prescription) { + await this.unifiedPrinter.printAndesPrescription(prescription); } - }; - this.dataSource.sort = this.sort; - this.dataSource.paginator = this.paginator; - this.loadingPrescriptions = false; - }); - this.pharmacistId = this.authService.getLoggedUserId(); - } - - ngAfterContentInit(){ - this.paginator._intl.itemsPerPageLabel = "Prescripciones por página"; - this.paginator._intl.firstPageLabel = "Primer página"; - this.paginator._intl.lastPageLabel = "Última página"; - this.paginator._intl.nextPageLabel = "Siguiente"; - this.paginator._intl.previousPageLabel = "Anterior"; - this.paginator._intl.getRangeLabel = (page: number, pageSize: number, length: number): string => { - if (length == 0 || pageSize == 0) - { - return `0 de ${length}`; - } - length = Math.max(length, 0); - const startIndex = page * pageSize; - const endIndex = startIndex < length ? Math.min(startIndex + pageSize, length) : startIndex + pageSize; - return `${startIndex + 1} – ${endIndex} de ${length}`; - } - } - - applyFilter(filterValue: string) { - this.dataSource.filterPredicate = (data: Prescriptions, filter: string) => { - const accumulator = (currentTerm, key) => { - // enable filter by lastName / firstName / date - return currentTerm + data.status + moment(data.date, 'YYYY-MM-DD').format('DD/MM/YYY').toString() - }; - - const dataStr = Object.keys(data).reduce(accumulator, '').toLowerCase(); - // Transform the filter by converting it to lowercase and removing whitespace. - const transformedFilter = filter.trim().toLowerCase(); - return dataStr.indexOf(transformedFilter) !== -1; - }; - this.dataSource.filter = filterValue.trim().toLowerCase(); - if (this.dataSource.paginator) { - this.dataSource.paginator.firstPage(); - } - } - - // Dispense prescription, but if was, update table with the correct status. - dispense(prescription: Prescriptions){ - this.prescriptionService.dispense(prescription._id, this.pharmacistId).subscribe( - success => { - if(success){ - this.openDialog("dispensed", prescription, prescription.professional.businessName); + } + + isStatus(prescription: Prescriptions | AndesPrescriptions, status: string): boolean { + if (status === 'Vencida') { + const isExpiredFromMap = this.isStatusMap.get(prescription._id); + if (isExpiredFromMap !== undefined) { + return isExpiredFromMap; + } } - } - ); - } - - // Dispense prescription, but if was, update table with the correct status. - cancelDispense(e){ - this.prescriptionService.cancelDispense(e, this.pharmacistId).subscribe( - success => { - if(success){ - this.openDialog("cancel-dispensed"); + return this.calculateIsStatus(prescription, status); + } + + canCounter(prescription: Prescriptions | AndesPrescriptions): boolean { + const canCounterFromMap = this.canCounterMap.get(prescription._id); + if (canCounterFromMap !== undefined) { + return canCounterFromMap; } - } - ); - } - - - // Show a dialog - openDialog(aDialogType: string, aPrescription?: Prescriptions, aText?: string): void { - const dialogRef = this.dialog.open(DialogComponent, { - width: '400px', - data: {dialogType: aDialogType, prescription: aPrescription, text: aText } - }); - - dialogRef.afterClosed().subscribe(result => { - console.log('The dialog was closed'); - }); - } - - // Return true if was dispensed and is seeing who dispensed the prescription - canPrint(prescription: Prescriptions): boolean{ - return (prescription.status === "Dispensada") && (prescription.dispensedBy?.userId === this.authService.getLoggedUserId()); - } - - canDispense(prescription: Prescriptions): boolean{ - return prescription.status === "Pendiente"; - } - - printPrescription(prescription: Prescriptions){ - this.prescriptionPrinter.print(prescription); - } - - isStatus(prescritpion: Prescriptions, status: string): boolean{ - return prescritpion.status === status; - } - - // Return boolean, accordding with dispensed time plus 2 hours is greater than now - canCounter(prescription: Prescriptions): boolean{ - if(prescription.status === 'Dispensada' && - typeof prescription.dispensedAt !== 'undefined' && - prescription.dispensedBy?.userId === this.pharmacistId){ - - const dispensedAt = moment(prescription.dispensedAt); - const now = moment(); - // dispensedAt.add(10, 'seconds'); - dispensedAt.add(this.lapseTime, 'hours'); - return dispensedAt.isAfter(now); - - } - return false - } + return this.calculateCanCounter(prescription); + } + + generateReport() { + const dialogReport = this.dialog.open(DialogReportComponent, { + width: '400px', + data: { fechaDesde: this.fechaDesde, fechaHasta: this.fechaHasta, pharmacistId: this.pharmacistId } + }); + + dialogReport.afterClosed().subscribe(result => { + if (result) { + this.prescriptionService.getCsv(result).subscribe(); + } + }); + } + + updateMaps() { + // Limpiar mapas existentes + this.isStatusMap.clear(); + this.canDispenseMap.clear(); + this.canCounterMap.clear(); + + // Recalcular todos los valores para las prescripciones actuales + this.dataSource.data.forEach(prescription => { + if (prescription && prescription._id) { + this.isStatusMap.set(prescription._id, this.calculateIsStatus(prescription, 'Vencida')); + this.canDispenseMap.set(prescription._id, this.calculateCanDispense(prescription)); + this.canCounterMap.set(prescription._id, this.calculateCanCounter(prescription)); + } + }); + } + + calculateCanDispense(prescription: Prescriptions | AndesPrescriptions): boolean { + if ('status' in prescription) { + return prescription.status === 'Pendiente' && moment() >= moment(prescription.date); + } else if ('estadoActual' in prescription) { + return prescription.estadoActual.tipo === 'vigente'; + } + return false; + } + + calculateIsStatus(prescription: Prescriptions | AndesPrescriptions, status: string): boolean { + if ('estadoActual' in prescription) { + return prescription.estadoActual.tipo.toLowerCase() === status.toLowerCase(); + } else if ('status' in prescription) { + return prescription.status.toLowerCase() === status.toLowerCase(); + } + return false; + } + + calculateCanCounter(prescription: Prescriptions | AndesPrescriptions): boolean { + if ('status' in prescription) { + if (prescription.status === 'Dispensada' && + typeof prescription.dispensedAt !== 'undefined' && + prescription.dispensedBy?.userId === this.pharmacistId) { + + const dispensedAt = moment(prescription.dispensedAt); + const now = moment(); + dispensedAt.add(this.lapseTime, 'hours'); + return dispensedAt.isAfter(now); + } + } else if ('estadoActual' in prescription) { + if (prescription.estadoActual.tipo === 'finalizada' && prescription.estadoDispensaActual.tipo === 'dispensada' && + typeof prescription.estadoDispensaActual.fecha !== 'undefined' && + prescription.dispensa[0].organizacion.id === this.pharmacistId) { + + const dispensedAt = moment(prescription.estadoDispensaActual.fecha); + const now = moment(); + dispensedAt.add(this.lapseTime, 'hours'); + return dispensedAt.isAfter(now); + } + } + return false; + } } diff --git a/src/app/pharmacists/components/prescription-printer/prescription-printer.component.spec.ts b/src/app/pharmacists/components/prescription-printer/prescription-printer.component.spec.ts index dd9470fa..dd6b98da 100644 --- a/src/app/pharmacists/components/prescription-printer/prescription-printer.component.spec.ts +++ b/src/app/pharmacists/components/prescription-printer/prescription-printer.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { PrescriptionPrinterComponent } from './prescription-printer.component'; @@ -6,7 +6,7 @@ describe('PrescriptionPrinterComponent', () => { let component: PrescriptionPrinterComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ PrescriptionPrinterComponent ] }) diff --git a/src/app/pharmacists/components/prescription-printer/prescription-printer.component.ts b/src/app/pharmacists/components/prescription-printer/prescription-printer.component.ts index 2abf9340..935eadbe 100644 --- a/src/app/pharmacists/components/prescription-printer/prescription-printer.component.ts +++ b/src/app/pharmacists/components/prescription-printer/prescription-printer.component.ts @@ -1,73 +1,224 @@ import { Component, OnInit } from '@angular/core'; -import { PdfMakeWrapper, Txt, Canvas, Line, Img, Table, Columns } from 'pdfmake-wrapper'; +import { PdfMakeWrapper, Txt, Canvas, Line, Img, Table, Columns, Stack } from 'pdfmake-wrapper'; import * as pdfFontsX from 'pdfmake-unicode/dist/pdfmake-unicode.js'; import { DatePipe } from '@angular/common'; import { Prescriptions } from '@interfaces/prescriptions'; +import { BarcodeService } from '@services/barcode.service'; PdfMakeWrapper.setFonts(pdfFontsX); @Component({ - selector: 'app-prescription-printer', - templateUrl: './prescription-printer.component.html', - styleUrls: ['./prescription-printer.component.sass'] + selector: 'app-prescription-printer', + templateUrl: './prescription-printer.component.html', + styleUrls: ['./prescription-printer.component.sass'] }) export class PrescriptionPrinterComponent implements OnInit { - prescription: Prescriptions; - - constructor( - private datePipe: DatePipe - ){} - - ngOnInit(): void { - } - - // Print a prescription as PDF - async print(prescription: Prescriptions){ - const pdf: PdfMakeWrapper = new PdfMakeWrapper(); - pdf.info({ - title: "Receta digital "+prescription.professional.businessName, - author: 'RecetAR' - }); - // Header - pdf.add(await new Img('assets/img/LogoPdf.jpg').fit([60, 60]).build()); - pdf.add(new Txt('RECETA DIGITAL').bold().alignment('center').end); - pdf.add(pdf.ln(2)); - pdf.add(new Txt(""+this.datePipe.transform(prescription.date, 'dd/MM/yyyy')).alignment('right').end); - // Professional - pdf.add(new Columns([ new Txt("Profesional").bold().end, new Txt("Matrícula").bold().end ]).end); - pdf.add(new Columns([ new Txt(""+prescription.professional.businessName).end, new Txt(""+prescription.professional.enrollment).end ]).end); - pdf.add(pdf.ln(2)); - // Patient - pdf.add(new Columns([ new Txt("Paciente").bold().end, new Txt("DNI").bold().end ]).end); - pdf.add(new Columns([ new Txt(""+prescription.patient.lastName.toUpperCase()+", "+prescription.patient.firstName.toUpperCase()).end, new Txt(""+prescription.patient.dni) .end ]).end); - pdf.add(new Canvas([ new Line(10, [500, 10]).end ]).end); - // Supplies - pdf.add(pdf.ln(1)); - prescription.supplies.forEach(supply => { - pdf.add(new Txt(""+supply.supply.name+", cantidad: "+supply.quantity).end); // Marca error pero funciona bien - pdf.add(pdf.ln(1)); - }); - pdf.add(new Canvas([ new Line(10, [500, 10]).end]).end); - if(prescription.diagnostic){ - pdf.add(pdf.ln(1)); - pdf.add(new Txt("Diagnóstico").bold().end); - pdf.add(new Txt(""+prescription.diagnostic).end); + prescription: Prescriptions; + + constructor( + private datePipe: DatePipe, + private barcodeService: BarcodeService + ) { } + + ngOnInit(): void { } - if(prescription.observation){ - pdf.add(pdf.ln(1)); - pdf.add(new Txt("Observaciones").bold().end); - pdf.add(new Txt(""+prescription.observation).end); + + // Print a prescription as PDF + async print(prescription: Prescriptions) { + const pdf: PdfMakeWrapper = new PdfMakeWrapper(); + + // Primera página + await this.addPage(pdf, prescription); + + // Duplicado + if (prescription.supplies.some(s => s.duplicate)) { + pdf.add({ text: '', pageBreak: 'after' }); + await this.addPage(pdf, prescription, 'DUPLICADO'); + } + + pdf.create().open(); } - pdf.add(pdf.ln(2)); - // Pharmacy - pdf.add(new Columns([ new Txt("Dispensado por").bold().end, new Txt("CUIL").bold().end ]).end); - pdf.add(new Columns([ new Txt(""+prescription.dispensedBy.businessName.toUpperCase()).end, new Txt(""+prescription.dispensedBy.cuil).end ]).end); + private async addPage(pdf: PdfMakeWrapper, prescription: Prescriptions, label?: string) { + + if (prescription.status === 'Vencida') { + pdf.watermark({ + text: 'Receta no valida para dispensa', + color: 'grey', + opacity: 0.3, + bold: true, + fontSize: 60 + }); + } + if (prescription.status === 'Dispensada') { + pdf.watermark({ + text: 'DISPENSADA', + color: 'grey', + opacity: 0.3, + bold: true, + fontSize: 100 + }); + } + + const barcodeBase64 = await this.barcodeService.generateBarcodeBase64(prescription._id); + const barcodeImg = await new Img(barcodeBase64).fit([230, 60]).alignment('center').margin([0, 20]).build(); + + // Segundo código de barras para prescriptionId + let prescriptionIdBarcodeImg = null; + let prescriptionIdLabel = null; + if (prescription.prescriptionId) { + const prescriptionIdBarcodeBase64 = await this.barcodeService.generateBarcodeBase64(prescription.prescriptionId); + prescriptionIdLabel = new Txt('Número de receta:').fontSize(9).bold().alignment('center').margin([0, 5, 0, 0]).end; + prescriptionIdBarcodeImg = await new Img(prescriptionIdBarcodeBase64).fit([230, 60]).alignment('center').margin([0, 5]).build(); + } + pdf.info({ + title: 'Receta digital ' + prescription.professional.businessName, + author: 'RecetAR' + }); + // Header + pdf.add(new Columns([ + await new Img('assets/img/LogoPdf.jpg').fit([60, 60]).build(), + new Txt('RECETA').bold().fontSize(20).alignment('center').end, + new Txt(label ? `${label}` : '').bold().italics().fontSize(20).alignment('right').opacity(0.6).end]).end); + pdf.add(new Txt('\n').end); + pdf.add(new Columns([new Txt('RECETAR').bold().alignment('left').end, new Txt(`Fecha prescripción: ${this.datePipe.transform(prescription.date, 'dd/MM/yyyy')}`).alignment('right').end]).end); + pdf.add(new Canvas([new Line(1, [515, 1]).end]).end); + pdf.add(new Txt('\n').end); - pdf.footer(new Txt("Esta receta se registró en recetar.andes.gob.ar").italics().alignment('center').end); + // Patient + pdf.add(new Txt([ + { text: 'Paciente: ' }, + { text: `${prescription.patient.lastName.toUpperCase()} ${prescription.patient.firstName.toUpperCase()}`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); - pdf.create().open(); - } + pdf.add(new Txt([ + { text: 'DNI: ' }, + { text: `${prescription.patient.dni}`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + if (prescription.patient.fechaNac) { + pdf.add(new Txt([ + { text: 'Fecha Nacimiento: ' }, + { text: `${this.datePipe.transform(prescription.patient.fechaNac, 'dd/MM/yyyy')}`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + } + pdf.add(new Txt([ + { text: 'Sexo: ' }, + { text: `${prescription.patient.sex}`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + let obraSocial = ''; + let numeroAfiliado = ''; + if (prescription.patient.obraSocial?.nombre) { + obraSocial = prescription.patient.obraSocial.nombre; + numeroAfiliado = prescription.patient.obraSocial.numeroAfiliado || ''; + } + pdf.add(new Txt([ + { text: 'Obra Social / Plan de salud : ' }, { text: `${(obraSocial)}`, bold: true } + ]).end); + if (obraSocial) { + pdf.add(new Txt([ + { text: 'Número de afiliado: ' }, { text: `${numeroAfiliado || 'No informado'}`, bold: true } + ]).end); + } + pdf.add(new Txt('\n').end); + + pdf.add(new Canvas([new Line(1, [515, 1]).end]).end); + pdf.add(new Txt('\n').end); + pdf.add(new Columns([new Txt('Medicamento').end, new Columns([new Txt('').end]).end]).end); + pdf.add(new Canvas([new Line(1, [515, 1]).end]).end); + // Supplies + pdf.add(new Txt('\n').end); + + prescription.supplies.forEach(supply => { + const cant = supply.quantityPresentation ? `${supply.quantity} envase(s) de ${supply.quantityPresentation} unidades` : `x ${supply.quantity}`; + pdf.add(new Columns([new Txt('' + supply.supply.name).bold().end, + new Txt(' ').end, + new Columns([new Txt(`${cant} `).bold().end]).end]).end); + pdf.add(new Txt('\n').end); + + if (supply.diagnostic) { + pdf.add(new Txt('\n').end); + pdf.add(new Txt('Diagnóstico').bold().end); + pdf.add(new Txt('' + supply.diagnostic ? supply.diagnostic : 'Sin datos registrados').end); + } + }); + if (prescription.observation) { + pdf.add(new Txt('\n').end); + pdf.add(new Txt('Observaciones').bold().end); + pdf.add(new Txt('' + prescription.observation).end); + } + pdf.add(new Txt('\n').end); + pdf.add(new Txt('\n').end); + pdf.add(new Txt('\n').end); + pdf.add(new Txt('\n').end); + pdf.add(new Txt('\n').end); + pdf.add(new Txt('\n').end); + pdf.add(new Txt('\n').end); + + + // Barcode + if (prescriptionIdBarcodeImg) { + // Si hay prescriptionId, mostrar ambos códigos en columnas + pdf.add(new Columns([ + { + stack: [barcodeImg], + alignment: 'left', + width: '55%' + }, + { + stack: [prescriptionIdLabel, prescriptionIdBarcodeImg], + alignment: 'right', + width: '45%' + } + ]).alignment('center').width('100%').end); + + // Firma del profesional debajo cuando hay prescriptionId + pdf.add(new Txt([ + { text: 'Este documento ha sido firmado \n electrónicamente por Dr.:', fontSize: 9, bold: true, italics: true }, + { text: '\n', fontSize: 3 }, + { text: `\n ${prescription.professional.businessName}`, fontSize: 14, bold: true }, + { text: `\n MP ${prescription.professional.enrollment}`, bold: true, fontSize: 9 } + ]).alignment('center').margin([0, 25, 0, 0]).end); + } else { + // Si no hay prescriptionId, mostrar código de barras y firma en columnas + pdf.add(new Columns([ + { + stack: [barcodeImg], + alignment: 'center', + width: '50%' + }, + { + stack: [ + new Txt([ + { text: 'Este documento ha sido firmado \n electrónicamente por Dr.:', fontSize: 9, bold: true, italics: true }, + { text: '\n', fontSize: 3 }, + { text: `\n ${prescription.professional.businessName}`, fontSize: 14, bold: true }, + { text: `\n MP ${prescription.professional.enrollment}`, bold: true, fontSize: 9 } + ]).alignment('center').margin([0, 25, 0, 0]).end + ], + alignment: 'center', + width: '50%' + } + ]).alignment('center').width('100%').end); + } + + // Pharmacy + if (prescription.status === 'Dispensada') { + pdf.add(new Txt('\n').margin([0, 10]).end); + pdf.add(new Columns([new Txt('Dispensado por').bold().alignment('center').end, new Txt('CUIL').bold().alignment('center').end]).alignment('center').end); + pdf.add(new Columns([new Txt('' + prescription.dispensedBy.businessName.toUpperCase()).alignment('center').end, new Txt('' + prescription.dispensedBy.cuil).alignment('center').end]).alignment('center').end); + pdf.add(new Txt('\n').margin([0, 5]).end); + pdf.add(new Txt(`Fecha dispensación: ${this.datePipe.transform(prescription.dispensedAt, 'dd/MM/yyyy')}`).alignment('center').end); + } + + pdf.footer(new Txt([ + { text: ' Esta receta fue creada por emisor inscripto y válido en el Registro de Recetarios Electrónicos \n del Ministerio de Salud de la Nación - ', italics: true }, + { text: 'RL-2025-63212094-APN-SSVEIYES#MS ', bold: true } + ]).fontSize(11).alignment('center').end); + } } diff --git a/src/app/pharmacists/components/prescription-undo/prescription-undo.component.html b/src/app/pharmacists/components/prescription-undo/prescription-undo.component.html index d3a4869e..9b3870a6 100644 --- a/src/app/pharmacists/components/prescription-undo/prescription-undo.component.html +++ b/src/app/pharmacists/components/prescription-undo/prescription-undo.component.html @@ -1,5 +1,5 @@ - diff --git a/src/app/pharmacists/components/prescription-undo/prescription-undo.component.spec.ts b/src/app/pharmacists/components/prescription-undo/prescription-undo.component.spec.ts index a5a43343..61602960 100644 --- a/src/app/pharmacists/components/prescription-undo/prescription-undo.component.spec.ts +++ b/src/app/pharmacists/components/prescription-undo/prescription-undo.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { PrescriptionUndoComponent } from './prescription-undo.component'; @@ -6,7 +6,7 @@ describe('PrescriptionUndoComponent', () => { let component: PrescriptionUndoComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ PrescriptionUndoComponent ] }) diff --git a/src/app/pharmacists/components/prescription-undo/prescription-undo.component.ts b/src/app/pharmacists/components/prescription-undo/prescription-undo.component.ts index 766fa1b0..13a97ffa 100644 --- a/src/app/pharmacists/components/prescription-undo/prescription-undo.component.ts +++ b/src/app/pharmacists/components/prescription-undo/prescription-undo.component.ts @@ -1,69 +1,73 @@ import { Component, OnInit, OnDestroy, Input, Injectable, EventEmitter, Output } from '@angular/core'; import { timer, Subscription } from 'rxjs'; import * as moment from 'moment'; -import {showCancelDispense, hideTimer} from '@animations/animations.template'; - +import { showCancelDispense, hideTimer } from '@animations/animations.template'; +import { AuthService } from '@auth/services/auth.service'; +import { Prescriptions } from '@interfaces/prescriptions'; +import AndesPrescriptions from '@interfaces/andesPrescriptions'; @Injectable() export class CounterDownService { - getCounter(tick) { - return timer(0, tick); - } + getCounter(tick) { + return timer(0, tick); + } } @Component({ - selector: 'app-prescription-undo', - templateUrl: './prescription-undo.component.html', - styleUrls: ['./prescription-undo.component.sass'], - animations:[ - showCancelDispense, - hideTimer - ], - providers: [CounterDownService] + selector: 'app-prescription-undo', + templateUrl: './prescription-undo.component.html', + styleUrls: ['./prescription-undo.component.sass'], + animations:[ + showCancelDispense, + hideTimer + ], + providers: [CounterDownService] }) export class PrescriptionUndoComponent implements OnInit, OnDestroy { - @Output() cancelDispenseEvent = new EventEmitter(); - @Input() dispensedAt: Date; - @Input() prescriptionId: string; - @Input() lapseTime: number; - subscriptions: Subscription = new Subscription(); - tick: number = 1000; - maxCounter: number = 7200; - progress: number = 100; - typeTime: string; - counter: number; - showtimes: boolean = true; + @Output() cancelDispenseEvent = new EventEmitter(); + @Input() dispensedAt: Date; + @Input() prescription: Prescriptions | AndesPrescriptions; + @Input() lapseTime: number; + subscriptions: Subscription = new Subscription(); + tick = 1000; + maxCounter: number; + progress = 100; + typeTime: string; + counter: number; + showtimes = true; + isAdmin = false; - constructor(private counterDownService: CounterDownService) {} + constructor(private counterDownService: CounterDownService, private authService: AuthService) {} - ngOnInit() { - this.counter = this.getTimeeDiffInSeconds(); + ngOnInit() { + this.maxCounter = this.lapseTime * 3600; + this.counter = this.getTimeeDiffInSeconds(); - this.subscriptions.add(this.counterDownService - .getCounter(this.tick) - .subscribe(() => { - this.progress = parseFloat((this.counter * 100 / this.maxCounter).toFixed(2)); - this.counter--; - if(this.counter > 3600) this.typeTime = 'h'; - if(this.counter < 3600) this.typeTime = 'm'; - if(this.counter < 60) this.typeTime = 's'; - })); - } + this.subscriptions.add(this.counterDownService + .getCounter(this.tick) + .subscribe(() => { + this.progress = parseFloat((this.counter * 100 / this.maxCounter).toFixed(2)); + this.counter--; + if (this.counter > 3600) {this.typeTime = 'h';} + if (this.counter < 3600) {this.typeTime = 'm';} + if (this.counter < 60) {this.typeTime = 's';} + })); - ngOnDestroy() { - this.subscriptions.unsubscribe(); // on complete timer, destroy this component and it subscriptions - } + this.isAdmin = this.authService.isAdminRole(); + } - cancelDispense(prescriptionId: string){ - this.cancelDispenseEvent.emit(prescriptionId); - } + ngOnDestroy() { + this.subscriptions.unsubscribe(); // on complete timer, destroy this component and it subscriptions + } - getTimeeDiffInSeconds():number{ - const dispensedAt = moment(this.dispensedAt); - dispensedAt.add(this.lapseTime, 'hours'); - // dispensedAt.add(10, 'seconds'); - const now = moment(); - const diff = dispensedAt.diff((now), 'seconds'); - return diff; - } + cancelDispense(prescription: Prescriptions | AndesPrescriptions) { + this.cancelDispenseEvent.emit(prescription); + } + getTimeeDiffInSeconds(): number { + const dispensedAt = moment(this.dispensedAt); + dispensedAt.add(this.lapseTime, 'hours'); + const now = moment(); + const diff = dispensedAt.diff((now), 'seconds'); + return diff; + } } diff --git a/src/app/pharmacists/pharmacists-routing.module.ts b/src/app/pharmacists/pharmacists-routing.module.ts index 88f9d5e6..18405947 100644 --- a/src/app/pharmacists/pharmacists-routing.module.ts +++ b/src/app/pharmacists/pharmacists-routing.module.ts @@ -7,6 +7,7 @@ import { PharmacistsFormComponent } from '@pharmacists/components/pharmacists-fo import { DialogComponent } from '@pharmacists/components/dialog/dialog.component'; import { RolePharmacistGuard } from '@auth/guards/role-pharmacist.guard'; import { PrescriptionPrinterComponent } from '@pharmacists/components/prescription-printer/prescription-printer.component'; +import { AndesPrescriptionPrinterComponent } from './components/andes-prescription-printer/andes-prescription-printer.component'; const routes: Routes = [ { @@ -32,5 +33,6 @@ export const routingComponent = [ PharmacistsComponent, PharmacistsFormComponent, DialogComponent, - PrescriptionPrinterComponent + PrescriptionPrinterComponent, + AndesPrescriptionPrinterComponent ] diff --git a/src/app/pharmacists/pharmacists.component.spec.ts b/src/app/pharmacists/pharmacists.component.spec.ts index 53a16186..f42a7a9c 100644 --- a/src/app/pharmacists/pharmacists.component.spec.ts +++ b/src/app/pharmacists/pharmacists.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { PharmacistsComponent } from './pharmacists.component'; @@ -6,7 +6,7 @@ describe('PharmacistsComponent', () => { let component: PharmacistsComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ PharmacistsComponent ] }) diff --git a/src/app/pharmacists/pharmacists.module.ts b/src/app/pharmacists/pharmacists.module.ts index 82c32152..b8fa8ba3 100644 --- a/src/app/pharmacists/pharmacists.module.ts +++ b/src/app/pharmacists/pharmacists.module.ts @@ -3,6 +3,7 @@ import { NgModule } from '@angular/core'; import { CommonModule } from '@angular/common'; import { ReactiveFormsModule } from '@angular/forms'; import { HttpClientModule } from '@angular/common/http'; +import { FormsModule } from '@angular/forms'; import { PharmacistsRoutingModule, routingComponent } from './pharmacists-routing.module'; // flex-layout @@ -20,8 +21,8 @@ import { MatNativeDateModule } from '@angular/material/core'; import { MatListModule } from '@angular/material/list'; import { MatTableModule } from '@angular/material/table'; import { MatIconModule } from '@angular/material/icon'; -import {MatPaginatorModule} from '@angular/material/paginator'; -import {MatSortModule} from '@angular/material/sort'; +import { MatPaginatorModule } from '@angular/material/paginator'; +import { MatSortModule } from '@angular/material/sort'; import { MatTooltipModule } from '@angular/material/tooltip'; import { MatChipsModule } from '@angular/material/chips'; import { MatSnackBarModule } from '@angular/material/snack-bar'; @@ -29,20 +30,25 @@ import { MatDialogModule } from '@angular/material/dialog'; import { MatProgressSpinnerModule } from '@angular/material/progress-spinner'; import { PrescriptionListComponent } from './components/prescription-list/prescription-list.component'; import { PrescriptionUndoComponent } from './components/prescription-undo/prescription-undo.component'; +import { AndesPrescriptionPrinterComponent } from './components/andes-prescription-printer/andes-prescription-printer.component'; import { FormatTimePipe } from './pipes/format-time.pipe'; +import { DialogReportComponent } from './components/dialog-report/dialog-report.component'; @NgModule({ declarations: [ routingComponent, PrescriptionListComponent, PrescriptionUndoComponent, + AndesPrescriptionPrinterComponent, FormatTimePipe, + DialogReportComponent ], imports: [ BrowserModule, CommonModule, PharmacistsRoutingModule, ReactiveFormsModule, + FormsModule, HttpClientModule, FlexLayoutModule, MatCardModule, @@ -64,6 +70,9 @@ import { FormatTimePipe } from './pipes/format-time.pipe'; MatProgressSpinnerModule, MatSortModule, MatPaginatorModule + ], + exports: [ + AndesPrescriptionPrinterComponent ] }) export class PharmacistsModule { } diff --git a/src/app/professionals/components/certificate-form/certificate-form.component.html b/src/app/professionals/components/certificate-form/certificate-form.component.html new file mode 100644 index 00000000..a6ac7a74 --- /dev/null +++ b/src/app/professionals/components/certificate-form/certificate-form.component.html @@ -0,0 +1,158 @@ + + +

+{{ "description" }} + {{ anulateCertificate ? "Anular certificado" : "Crear certificado" }} +

+
+ +
+
+
+
+ + Fecha inicio + + + + + La fecha de inicio es requerida + + + La fecha de inicio no puede ser superior a 15 días antes de hoy + + + + + Cantidad de días de vigencia + + + La cantidad de días es requerida + + + La cantidad de días debe ser al menos 1 + + {{ getEndDateHint() }} + +
+ +
+
+ + + DNI paciente + + + + + + + + {{patient.lastName}} {{patient.firstName}} DNI {{patient.dni}} + + + + {{dni.value.length}} / 8 + + + Debe ingresar el dni del paciente + + + + El dni debe contener {{patientDni.errors?.minlength.requiredLength}} + digitos + + + + El dni debe contener solo números. + + + + + + Sexo + + Femenino + Masculino + Otro + + + + Debe seleccionar el tipo de sexo + + + + + + Apellido paciente + + + + Debe ingresar el apellido del paciente + + + + + + Nombre paciente + + + + Debe ingresar el nombre del paciente + + +
+
+ + +
+ + + + + Debe ingresar una descripción + + + La descripción no puede contener sólo espacios en blanco + + + +
+ + +
+ + + + +
+ + + +
+ + +
+
+
+
+
+
\ No newline at end of file diff --git a/src/app/professionals/components/certificate-form/certificate-form.component.sass b/src/app/professionals/components/certificate-form/certificate-form.component.sass new file mode 100644 index 00000000..023ecddf --- /dev/null +++ b/src/app/professionals/components/certificate-form/certificate-form.component.sass @@ -0,0 +1,112 @@ +@import 'styles/_variables' + +:host + display: block + width: 100% + height: 100% + +.custom-tab-link-bar + width: 100% + justify-content: space-between + display: flex + button + width: calc(100% / 2) + margin: 0px!important + border-radius: 0px!important + +.link-bar-indicator-container + width: 100% + height: 3px + background-color: #fff + padding-bottom: 10px + position: relative + display: block + + .indicator + width: 50% + height: 3px + position: absolute + top: 0 + background-color: #4056b5 + + +.pf-container + max-width: 100vw + position: relative + overflow: hidden + +.cards-container + display: flex + flex-direction: row + width: 100% + position: relative + top: 0 + + .prescription-panel, + .my-prescriptions-panel + flex: 1 1 100% + max-width: 100% + margin-bottom: 20px + background-color: #ffffff + overflow: auto + +.mat-form-field, button + margin: 5px 0 + +.patient-container, .nested-supplies + mat-form-field + width: 100% + button[type="button"] + margin: 0 + +.nested-supplies + mat-form-field + width: 100% + + div[formGroupName] + display: flex + flex-direction: row + gap: 10px + margin-bottom: 10px + +.sub-container + width: 100% + +.custom-error-container + position: relative + +.element-row + position: relative + + +.element-row:not(.expanded) + cursor: pointer + + +.element-row:not(.expanded):hover + background: #f5f5f5 + + +.element-row.expanded + border-bottom-color: transparent + +.cdk-column-expandedDetail + border-left-style: solid + border-color:#c9c9ca + border-width: 1px + margin-left: 24px + outline: 1px + outline-offset: -2px + +.check + margin-bottom: 10px + +.supply-card + margin-bottom: 10px + +.mat-option + white-space: nowrap !important + overflow: visible !important + +.btnDelete + justify-content: end \ No newline at end of file diff --git a/src/app/professionals/components/certificate-form/certificate-form.component.spec.ts b/src/app/professionals/components/certificate-form/certificate-form.component.spec.ts new file mode 100644 index 00000000..040fa519 --- /dev/null +++ b/src/app/professionals/components/certificate-form/certificate-form.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; + +import { CertificateFormComponent } from './certificate-form.component'; + +describe('CertificateFormComponent', () => { + let component: CertificateFormComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [CertificateFormComponent] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(CertificateFormComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/professionals/components/certificate-form/certificate-form.component.ts b/src/app/professionals/components/certificate-form/certificate-form.component.ts new file mode 100644 index 00000000..7d6ee607 --- /dev/null +++ b/src/app/professionals/components/certificate-form/certificate-form.component.ts @@ -0,0 +1,357 @@ +import { Component, EventEmitter, OnInit, Output, ViewChild } from '@angular/core'; +import { Observable, Subscription } from 'rxjs'; +import { FormBuilder, FormGroup, AbstractControl, Validators, FormGroupDirective, FormControl, ValidatorFn } from '@angular/forms'; +import { PatientsService } from '@root/app/services/patients.service'; +import { AuthService } from '@auth/services/auth.service'; +import { Patient } from '@interfaces/patients'; +import { ThemePalette } from '@angular/material/core'; +import { Prescriptions } from '@interfaces/prescriptions'; +import { ProfessionalDialogComponent } from '@professionals/components/professional-dialog/professional-dialog.component'; +import { MatDialog } from '@angular/material/dialog'; +import { step, stepLink } from '@animations/animations.template'; +import { debounce, debounceTime, map, startWith } from 'rxjs/operators'; +import { CertificatesService } from '@services/certificates.service'; +import { Certificate } from '@interfaces/certificate'; +import { MatTableDataSource } from '@angular/material/table'; +import { MatPaginator } from '@angular/material/paginator'; +import { MatSort } from '@angular/material/sort'; + +function noWhitespaceValidator(): ValidatorFn { + return (control: AbstractControl): { [key: string]: any } | null => { + if (!control.value) { + return null; + } + + const isWhitespace = (control.value || '').trim().length === 0; + return isWhitespace ? { 'whitespace': { value: control.value } } : null; + }; +} + +@Component({ + selector: 'app-certificate-form', + templateUrl: './certificate-form.component.html', + styleUrls: ['./certificate-form.component.sass'], + animations: [ + step, + stepLink + ] +}) +export class CertificateFormComponent implements OnInit { + @Output() anulateCertificateEvent = new EventEmitter(); + @Output() certificateCreatedEvent = new EventEmitter(); + + startDateValidator(control: AbstractControl) { + if (!control.value) { + return null; + } + + const selectedDate = new Date(control.value); + const today = new Date(); + const minDate = new Date(today); + minDate.setDate(today.getDate() - 15); + + // Reset time part to compare only dates + selectedDate.setHours(0, 0, 0, 0); + minDate.setHours(0, 0, 0, 0); + today.setHours(0, 0, 0, 0); + + if (selectedDate < minDate) { + return { tooOld: true }; + } + + return null; + } + + @ViewChild('dni', { static: true }) dni: any; + + certificateForm: FormGroup; + loadingCertificates: boolean; + patientSearch: Patient[]; + today = new Date(); + professionalData: any; + readonly spinnerColor: ThemePalette = 'primary'; + isSubmit = false; + dniShowSpinner = false; + isFormShown = true; + isCertificateShown = false; + anulateCertificate = false; + isListShown = false; + dataCertificates = new MatTableDataSource([]); + private anulateCertificateSubscription: Subscription; + public certificate: Certificate; + cantDias = new FormControl('', [Validators.required, Validators.min(1)]); + + @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator; + @ViewChild(MatSort, { static: true }) sort: MatSort; + + constructor( + private fBuilder: FormBuilder, + private apiPatients: PatientsService, + private certificateService: CertificatesService, + private authService: AuthService, + public dialog: MatDialog + ) { } + + ngOnInit(): void { + this.loadingCertificates = true; + this.certificateService.certificates.subscribe((certificates: Certificate[]) => { + this.dataCertificates = new MatTableDataSource(certificates); + this.dataCertificates.sortingDataAccessor = (item, property) => { + switch (property) { + case 'patient': return item.patient.lastName + item.patient.firstName; + case 'prescription_date': return new Date(item.createdAt).getTime(); + default: return item[property]; + } + }; + this.dataCertificates.sort = this.sort; + this.dataCertificates.paginator = this.paginator; + this.loadingCertificates = false; + }); + this.initProfessionalForm(); + + // on DNI changes + this.patientDni.valueChanges.pipe( + debounceTime(1000) + ).subscribe( + dniValue => { + this.getPatientByDni(dniValue); + } + ); + + this.certificateService.certificate$.subscribe( + certificate => { + if (certificate) { + this.certificateForm.reset({ + date: { value: certificate.createdAt, disabled: true }, + patient: { + dni: { value: certificate.patient.dni, disabled: true }, + sex: { value: certificate.patient.sex, disabled: true }, + lastName: { value: certificate.patient.lastName, disabled: true }, + firstName: { value: certificate.patient.firstName, disabled: true } + }, + certificate: { value: certificate.certificate, disabled: true }, + }); + this.anulateCertificate = true; + this.certificate = certificate; + } else { + this.anulateCertificate = false; + } + } + ); + } + + // eslint-disable-next-line @angular-eslint/use-lifecycle-interface + ngOnDestroy() { + if (this.anulateCertificateSubscription) { + this.anulateCertificateSubscription.unsubscribe(); + } + } + + initProfessionalForm() { + this.today = new Date((new Date())); + this.professionalData = this.authService.getLoggedUserId(); + this.certificateForm = this.fBuilder.group({ + _id: [''], + professional: [this.professionalData], + patient: this.fBuilder.group({ + dni: ['', [ + Validators.required, + Validators.minLength(7), + Validators.pattern('^[0-9]*$') + ]], + lastName: ['', [ + Validators.required + ]], + firstName: ['', [ + Validators.required + ]], + sex: ['', [ + Validators.required + ]], + }), + certificate: ['', [Validators.required, noWhitespaceValidator()]], + anulateReason: [''], + startDate: [this.today, [ + Validators.required, + this.startDateValidator.bind(this) + ]], + cantDias: [''], + }); + + } + + getPatientByDni(dniValue: string | null): void { + if (dniValue !== null && ( dniValue.length === 7 || dniValue.length === 8)) { + this.dniShowSpinner = true; + this.apiPatients.getPatientByDni(dniValue).subscribe( + res => { + if (res.length) { + this.patientSearch = res; + } else { + this.patientSearch = []; + this.patientLastName.setValue(''); + this.patientFirstName.setValue(''); + this.patientSex.setValue(''); + } + this.dniShowSpinner = false; + }); + } else { + this.dniShowSpinner = false; + } + } + + completePatientInputs(patient: Patient): void {// TODO: REC-38 + this.patientLastName.setValue(patient.lastName); + this.patientFirstName.setValue(patient.firstName); + this.patientSex.setValue(patient.sex); + } + + onSubmitCertificateForm(professionalNgForm: FormGroupDirective): void { + if (!this.anulateCertificate) { + if (this.certificateForm.valid && this.cantDias.valid) { + const startDate = new Date(this.certificateForm.get('startDate').value); + startDate.setHours(0, 0, 0, 0); + this.certificateForm.get('startDate').setValue(startDate); + const newPrescription = { + ...this.certificateForm.value, + cantDias: this.cantDias.value + }; + this.isSubmit = true; + this.certificateService.newCertificate(newPrescription).subscribe( + success => { + if (success) { this.formReset(professionalNgForm); } + }); + } + } else { + this.certificate['anulateReason'] = this.certificateForm.value.anulateReason; + this.certificate['anulateDate'] = new Date(); + this.certificateService.anulateCertificate(this.certificate).subscribe( + (success) => { + if (success) { + this.formReset(professionalNgForm); + this.anulateCertificateEvent.emit(); + } + } + ); + } + } + + private formReset(professionalNgForm: FormGroupDirective) { + const wasAnulate = this.anulateCertificate; + this.clearForm(professionalNgForm); + this.isSubmit = false; + if (wasAnulate) { + this.openDialog('anulate_certificate'); + } else { + this.openDialog('created_certificate'); + this.certificateCreatedEvent.emit(); + } + } + + // Show a dialog + openDialog(aDialogType: string, aPrescription?: Prescriptions, aText?: string): void { + const dialogRef = this.dialog.open(ProfessionalDialogComponent, { + width: '400px', + data: { dialogType: aDialogType, prescription: aPrescription, text: aText } + }); + } + + get professional(): AbstractControl { + return this.certificateForm.get('professional'); + } + + + + get startDate(): AbstractControl { + return this.certificateForm.get('startDate'); + } + + + get cantDiasControl(): AbstractControl { + return this.cantDias; + } + get patientDni(): AbstractControl { + const patient = this.certificateForm.get('patient'); + return patient.get('dni'); + } + + get patientLastName(): AbstractControl { + const patient = this.certificateForm.get('patient'); + return patient.get('lastName'); + } + + get patientFirstName(): AbstractControl { + const patient = this.certificateForm.get('patient'); + return patient.get('firstName'); + } + + get patientSex(): AbstractControl { + const patient = this.certificateForm.get('patient'); + return patient.get('sex'); + } + + get patientCertificate(): AbstractControl { + const patient = this.certificateForm.get('certificate'); + return patient.get('certificate'); + } + + get patientReason(): AbstractControl { + const patient = this.certificateForm.get('anulateReason'); + return patient.get('anulateReason'); + } + + getEndDateHint(): string { + const startDate = this.certificateForm.get('startDate')?.value; + const cantDias = this.cantDias.value; + + if (!startDate || !cantDias) { + return ''; + } + + const endDate = new Date(startDate); + endDate.setDate(endDate.getDate() + cantDias - 1); + endDate.setHours(23, 59, 59, 999); + return `Fecha de fin: ${endDate.toLocaleString('es-AR', { day: '2-digit', month: '2-digit', year: 'numeric', hour: '2-digit', minute: '2-digit', timeZone: 'America/Argentina/Buenos_Aires' })}`; + } + + displayFn(supply): string { + return supply ? supply : ''; + } + + // reset the form as intial values + clearForm(professionalNgForm: FormGroupDirective) { + professionalNgForm.resetForm(); + this.patientSearch = []; + this.certificateForm.reset({ + _id: '', + professional: this.professionalData, + startDate: this.today, + cantDias: '', + patient: { + dni: { value: '', disabled: false }, + sex: { value: '', disabled: false }, + lastName: { value: '', disabled: false }, + firstName: { value: '', disabled: false }, + }, + certificate: '', + anulateReason: '' + }); + this.certificateService.setCertificate(null); + this.anulateCertificateEvent.emit(); + } + + showForm(): void { + this.isFormShown = true; + this.isCertificateShown = false; + } + + showList(): void { + this.isFormShown = false; + this.isListShown = false; + } + + showCertificados(): void { + this.isFormShown = false; + this.isCertificateShown = true; + } +} diff --git a/src/app/professionals/components/certificate-practice-printer/certificate-practice-printer.component.ts b/src/app/professionals/components/certificate-practice-printer/certificate-practice-printer.component.ts new file mode 100644 index 00000000..0ad78f9d --- /dev/null +++ b/src/app/professionals/components/certificate-practice-printer/certificate-practice-printer.component.ts @@ -0,0 +1,27 @@ +import { Component, OnInit } from '@angular/core'; +import { Certificate } from '@interfaces/certificate'; +import { Practice } from '@interfaces/practices'; +import { UnifiedPrinterComponent } from '@shared/components/unified-printer/unified-printer.component'; + +@Component({ + selector: 'app-certificate-practice-printer', + templateUrl: './certificate-practice-printer.html' +}) +export class CertificatePracticePrinterComponent implements OnInit { + + constructor( + private unifiedPrinter: UnifiedPrinterComponent + ) { } + + ngOnInit(): void { + } + + async printCertificate(certificate: Certificate) { + await this.unifiedPrinter.printCertificate(certificate); + } + + async printPractice(practice: Practice) { + await this.unifiedPrinter.printPractice(practice); + } + +} diff --git a/src/app/professionals/components/certificate-practice-printer/certificate-practice-printer.html b/src/app/professionals/components/certificate-practice-printer/certificate-practice-printer.html new file mode 100644 index 00000000..e69de29b diff --git a/src/app/professionals/components/practices-form/practices-form.component.html b/src/app/professionals/components/practices-form/practices-form.component.html new file mode 100644 index 00000000..6dfafbe1 --- /dev/null +++ b/src/app/professionals/components/practices-form/practices-form.component.html @@ -0,0 +1,187 @@ +
+
+ +
+ +

+ assignment + Nueva Práctica +

+
+ + +
+
+ +
+
+ + + Fecha práctica + + + + + Debe ingresar la fecha de la práctica + + +
+ +
+ +
+ + DNI paciente + + + + + + {{patient.lastName}} {{patient.firstName}} DNI {{patient.dni}} + + + + {{dniPractice.value.length}} / 8 + + + Debe ingresar el DNI del paciente + + + El DNI debe tener al menos 7 dígitos + + + El DNI debe contener solo números. + + + + + + Sexo + + + {{ sex }} + + + + Debe seleccionar el sexo del paciente + + +
+ + +
+ + Apellido paciente + + + Debe ingresar el apellido del paciente + + + + + Nombre paciente + + + Debe ingresar el nombre del paciente + + +
+ + + Elegir otra cobertura + social + +
+ + + + Obra Social + + + Sin obras sociales del paciente + + + + {{ os?.nombre }} + + + + + + + + Obra Social + + + + {{ os?.nombre }} + + + + + + + Numero de Afiliado + + + Debe ingresar el número de afiliado. + + + Sólo se admiten números + + +
+
+ + +
+ + Indique Práctica + + + + + Indique Diagnóstico + + + + + Indicaciones + + +
+
+ + +
+ + +
+
+ +
+
+
+
+
+
+
+
\ No newline at end of file diff --git a/src/app/professionals/components/practices-form/practices-form.component.sass b/src/app/professionals/components/practices-form/practices-form.component.sass new file mode 100644 index 00000000..cb65667c --- /dev/null +++ b/src/app/professionals/components/practices-form/practices-form.component.sass @@ -0,0 +1,36 @@ +.new-practice + width: 100% + margin: 0 auto + +mat-form-field + width: 100% + margin-bottom: 10px + +mat-card-title + h2 + color: #333 + font-weight: 500 + +textarea + min-height: 80px + resize: vertical + +mat-checkbox + margin: 15px 0 + +.mat-raised-button + min-width: 120px + margin: 0 10px + +.mat-spinner + margin: 0 auto + +@media (max-width: 768px) + .new-practice + min-height: auto + + .sub-container + padding: 15px + + mat-form-field + margin-bottom: 15px \ No newline at end of file diff --git a/src/app/professionals/components/practices-form/practices-form.component.spec.ts b/src/app/professionals/components/practices-form/practices-form.component.spec.ts new file mode 100644 index 00000000..a78eb673 --- /dev/null +++ b/src/app/professionals/components/practices-form/practices-form.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { PracticesFormComponent } from './practices-form.component'; + +describe('PracticesFormComponent', () => { + let component: PracticesFormComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [ PracticesFormComponent ] + }) + .compileComponents(); + }); + + beforeEach(() => { + fixture = TestBed.createComponent(PracticesFormComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); \ No newline at end of file diff --git a/src/app/professionals/components/practices-form/practices-form.component.ts b/src/app/professionals/components/practices-form/practices-form.component.ts new file mode 100644 index 00000000..d0acea1b --- /dev/null +++ b/src/app/professionals/components/practices-form/practices-form.component.ts @@ -0,0 +1,248 @@ +import { Component, OnInit } from '@angular/core'; +import { AbstractControl, FormBuilder, FormControl, FormGroup, FormGroupDirective, Validators } from '@angular/forms'; +import { MatDialog } from '@angular/material/dialog'; +import { AuthService } from '@auth/services/auth.service'; +import { Patient } from '@interfaces/patients'; +import { Practice } from '@interfaces/practices'; +import { ProfessionalDialogComponent } from '@professionals/components/professional-dialog/professional-dialog.component'; +import { PatientsService } from '@root/app/services/patients.service'; +import { PracticesService } from '@services/practices.service'; +import { Observable } from 'rxjs'; +import { debounceTime, map, startWith } from 'rxjs/operators'; + +@Component({ + selector: 'app-practices-form', + templateUrl: './practices-form.component.html', + styleUrls: ['./practices-form.component.sass'] +}) +export class PracticesFormComponent implements OnInit { + obraSocialControl = new FormControl(''); + filteredObrasSociales: Observable; + + practicesForm: FormGroup; + practiceDate = new FormControl(new Date(), [Validators.required]); + isSubmitPractice: boolean = false; + patientSearch: Patient[]; + sex_options: string[] = ["Femenino", "Masculino", "Otro"]; + obraSocial: any[]; + obrasSociales: any[]; + dniShowSpinner: boolean = false; + professionalData: any; + + constructor( + private fBuilder: FormBuilder, + private apiPatients: PatientsService, + private practicesService: PracticesService, + private authService: AuthService, + public dialog: MatDialog + ) { } + + ngOnInit(): void { + this.professionalData = this.authService.getLoggedUserId(); + this.initPracticesForm(); + + // on DNI changes + this.practicePatientDni.valueChanges.pipe( + debounceTime(400) + ).subscribe( + dniValue => { + this.getPatientByDni(dniValue); + } + ); + + this.practicesForm.get('patient.otraOS')?.valueChanges.subscribe(() => { + const osGroup = this.practicesForm.get('patient.obraSocial') as FormGroup; + osGroup.reset(); + osGroup.get('numeroAfiliado').disable(); + }); + + this.filteredObrasSociales = this.obraSocialControl.valueChanges.pipe( + startWith(''), + map(value => { + const name = typeof value === 'string' ? value : value?.nombre; + return name ? this._filter(name) : this.obrasSociales.slice(); + }) + ); + } + + private _filter(value: string): any[] { + const filterValue = value.toLowerCase(); + return this.obrasSociales.filter(os => + os.nombre.toLowerCase().includes(filterValue) + ); + } + + + + initPracticesForm(): void { + this.practicesForm = this.fBuilder.group({ + professional: [this.professionalData], + date: [new Date(), [Validators.required]], + patient: this.fBuilder.group({ + dni: ['', [Validators.required, Validators.minLength(7), Validators.pattern("^[0-9]*$")]], + sex: ['', [Validators.required]], + lastName: ['', [Validators.required]], + firstName: ['', [Validators.required]], + otraOS: [{ value: false, disabled: true }], + obraSocial: this.fBuilder.group({ + nombre: '', + codigoPuco: '', + numeroAfiliado: [{ value: '', disabled: true }, [Validators.required, Validators.pattern('^[0-9]*$')]] + }) + }), + practice: [''], + diagnostic: [''], + indications: [''] + }); + } + + getPatientByDni(dniValue: string | null): void { + if (dniValue !== null && (dniValue.length == 7 || dniValue.length == 8)) { + this.dniShowSpinner = true; + this.apiPatients.getPatientByDni(dniValue).subscribe( + res => { + if (res.length) { + this.patientSearch = res; + // Habilitar el checkbox otraOS cuando se encuentra un paciente + this.patientOtraOS.enable(); + } else { + this.patientSearch = []; + this.practicePatientLastName.setValue(''); + this.practicePatientFirstName.setValue(''); + this.practicePatientSex.setValue(''); + this.patientOtraOS.setValue(false); + // Deshabilitar el checkbox otraOS cuando no se encuentra un paciente + this.patientOtraOS.disable(); + } + this.dniShowSpinner = false; + }); + this.apiPatients.getPatientOSByDni(dniValue, this.practicePatientSex.value).subscribe( + res => { + if (Array.isArray(res)) { + this.obraSocial = res; + } else { + this.obraSocial = []; + } + }); + this.apiPatients.getOS().subscribe( + res => { + this.obrasSociales = (res as Array); + } + ); + } else { + this.dniShowSpinner = false; + } + } + + completePatientInputsPractices(patient: Patient): void { + this.practicePatientLastName.setValue(patient.lastName); + this.practicePatientFirstName.setValue(patient.firstName); + this.practicePatientSex.setValue(patient.sex); + } + + onOsSelected(selectedOs: any): void { + const osGroup = this.practicesForm.get('patient.obraSocial') as FormGroup; + if (osGroup && selectedOs) { + osGroup.patchValue({ + nombre: selectedOs.nombre, + codigoPuco: selectedOs.codigoPuco + }); + const numeroAfiliadoControl = osGroup.get('numeroAfiliado'); + if (numeroAfiliadoControl) { + numeroAfiliadoControl.enable(); + } + } + } + + displayOs(os: any): string { + return os && os.nombre ? os.nombre : ''; + } + + onSubmitPracticesForm(practicesNgForm: FormGroupDirective): void { + if (this.practicesForm.valid) { + this.isSubmitPractice = true; + + const practiceData = this.practicesForm.value; + + this.practicesService.newPractice(practiceData).subscribe( + success => { + this.isSubmitPractice = false; + + if (success) { + this.openDialog('practiceSuccess'); + this.clearPracticesForm(practicesNgForm); + } + }, + error => { + this.isSubmitPractice = false; + console.error('Error al crear la práctica:', error); + this.openDialog('practiceError'); + } + ); + } + } + + clearPracticesForm(practicesNgForm: FormGroupDirective): void { + practicesNgForm.resetForm(); + this.patientSearch = []; + this.practicesForm.reset({ + professional: this.professionalData, + date: new Date(), + patient: { + dni: '', + sex: '', + lastName: '', + firstName: '', + otraOS: { value: false, disabled: true }, + obraSocial: { + nombre: '', + codigoPuco: '', + numeroAfiliado: { value: '', disabled: true } + } + }, + practice: '', + diagnostic: '', + indications: '' + }); + this.practiceDate.setValue(new Date()); + } + + openDialog(aDialogType: string): void { + const dialogRef = this.dialog.open(ProfessionalDialogComponent, { + width: '400px', + data: { dialogType: aDialogType } + }); + + dialogRef.afterClosed().subscribe(result => { + console.log('The dialog was closed'); + }); + } + + // Getters + get practicePatientDni(): AbstractControl { + return this.practicesForm.get('patient.dni'); + } + + get practicePatientSex(): AbstractControl { + return this.practicesForm.get('patient.sex'); + } + + get practicePatientLastName(): AbstractControl { + return this.practicesForm.get('patient.lastName'); + } + + get practicePatientFirstName(): AbstractControl { + return this.practicesForm.get('patient.firstName'); + } + + get patientOtraOS(): AbstractControl { + const patient = this.practicesForm.get('patient'); + return patient.get('otraOS'); + } + existenObrasSociales(array: any[]): boolean { + if (!array || array.length === 0) { + return false; + } + return !array.every(item => item === null || item === undefined); + } +} \ No newline at end of file diff --git a/src/app/professionals/components/prescription-printer/prescription-printer.component.spec.ts b/src/app/professionals/components/prescription-printer/prescription-printer.component.spec.ts index dd9470fa..dd6b98da 100644 --- a/src/app/professionals/components/prescription-printer/prescription-printer.component.spec.ts +++ b/src/app/professionals/components/prescription-printer/prescription-printer.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { PrescriptionPrinterComponent } from './prescription-printer.component'; @@ -6,7 +6,7 @@ describe('PrescriptionPrinterComponent', () => { let component: PrescriptionPrinterComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ PrescriptionPrinterComponent ] }) diff --git a/src/app/professionals/components/prescription-printer/prescription-printer.component.ts b/src/app/professionals/components/prescription-printer/prescription-printer.component.ts index 8ba69182..6433e96b 100644 --- a/src/app/professionals/components/prescription-printer/prescription-printer.component.ts +++ b/src/app/professionals/components/prescription-printer/prescription-printer.component.ts @@ -1,64 +1,220 @@ import { Component, OnInit } from '@angular/core'; -import { PdfMakeWrapper, Txt, Canvas, Line, Img, Columns } from 'pdfmake-wrapper'; +import { PdfMakeWrapper, Txt, Canvas, Line, Img, Columns, Table, Stack } from 'pdfmake-wrapper'; import { DatePipe } from '@angular/common'; import { Prescriptions } from '@interfaces/prescriptions'; +import { BarcodeService } from '@services/barcode.service'; @Component({ - selector: 'app-prescription-printer', - templateUrl: './prescription-printer.component.html', - styleUrls: ['./prescription-printer.component.sass'] + selector: 'app-prescription-printer', + templateUrl: './prescription-printer.component.html', + styleUrls: ['./prescription-printer.component.sass'] }) export class PrescriptionPrinterComponent implements OnInit { - constructor( - private datePipe: DatePipe - ){} - - ngOnInit(): void { - } - - // Print a prescription as PDF - async print(prescription: Prescriptions){ - const pdf: PdfMakeWrapper = new PdfMakeWrapper(); - pdf.info({ - title: "Receta digital "+prescription.professional.businessName, - author: 'RecetAR' - }); - // Header - pdf.add(await new Img('assets/img/LogoPdf.jpg').fit([60, 60]).build()); - pdf.add(new Txt('RECETA DIGITAL').bold().alignment('center').end); - pdf.add(pdf.ln(2)); - pdf.add(new Txt(""+this.datePipe.transform(prescription.date, 'dd/MM/yyyy')).alignment('right').end); - // Professional - pdf.add(new Columns([ new Txt("Profesional").bold().end, new Txt("Matrícula").bold().end ]).end); - pdf.add(new Columns([ new Txt(""+prescription.professional.businessName).end, new Txt(""+prescription.professional.enrollment).end ]).end); - pdf.add(pdf.ln(2)); - // Patient - pdf.add(new Columns([ new Txt("Paciente").bold().end, new Txt("DNI").bold().end ]).end); - pdf.add(new Columns([ new Txt(""+prescription.patient.lastName.toUpperCase()+", "+prescription.patient.firstName.toUpperCase()).end, new Txt(""+prescription.patient.dni) .end ]).end); - pdf.add(new Canvas([ new Line(10, [500, 10]).end ]).end); - // Supplies - pdf.add(pdf.ln(1)); - prescription.supplies.forEach(supply => { - pdf.add(new Txt(""+supply.supply.name+", cantidad: "+supply.quantity).end); // Marca error pero funciona bien - pdf.add(pdf.ln(1)); - }); - pdf.add(new Canvas([ new Line(10, [500, 10]).end]).end); - if(prescription.diagnostic){ - pdf.add(pdf.ln(1)); - pdf.add(new Txt("Diagnóstico").bold().end); - pdf.add(new Txt(""+prescription.diagnostic).end); + constructor( + private datePipe: DatePipe, + private barcodeService: BarcodeService + ) { } + + ngOnInit(): void { } - if(prescription.observation){ - pdf.add(pdf.ln(1)); - pdf.add(new Txt("Observaciones").bold().end); - pdf.add(new Txt(""+prescription.observation).end); + + // Print a prescription as PDF + async print(prescription: Prescriptions) { + const pdf: PdfMakeWrapper = new PdfMakeWrapper(); + + // Primera página + await this.addPage(pdf, prescription); + + // Duplicado + if (prescription.supplies.some(s => s.duplicate)) { + pdf.add({ text: '', pageBreak: 'after' }); + await this.addPage(pdf, prescription, 'DUPLICADO'); + } + + pdf.create().open(); } - pdf.add(pdf.ln(2)); - pdf.footer(new Txt("Esta receta se registró en recetar.andes.gob.ar").italics().alignment('center').end); + private async addPage(pdf: PdfMakeWrapper, prescription: Prescriptions, label?: string) { + + if (prescription.status === 'Vencida') { + pdf.watermark({ + text: 'Receta no valida para dispensa', + color: 'grey', + opacity: 0.3, + bold: true, + fontSize: 60 + }); + } + if (prescription.status === 'Dispensada') { + pdf.watermark({ + text: 'DISPENSADA', + color: 'grey', + opacity: 0.3, + bold: true, + fontSize: 100 + }); + } + + + // Generar código de barras principal usando _id + const barcodeBase64 = await this.barcodeService.generateBarcodeBase64(prescription._id); + const barcodeImg = await new Img(barcodeBase64).fit([230, 60]).alignment('center').margin([0, 20]).build(); + + // Segundo código de barras para prescriptionId + let prescriptionIdBarcodeImg = null; + let prescriptionIdLabel = null; + if (prescription.prescriptionId) { + const prescriptionIdBarcodeBase64 = await this.barcodeService.generateBarcodeBase64(prescription.prescriptionId); + prescriptionIdLabel = new Txt('Número de receta:').fontSize(9).bold().alignment('center').margin([0, 5, 0, 0]).end; + prescriptionIdBarcodeImg = await new Img(prescriptionIdBarcodeBase64).fit([230, 60]).alignment('center').margin([0, 5]).build(); + } + pdf.info({ + title: 'Receta digital ' + prescription.professional.businessName, + author: 'RecetAR' + }); + // Header + pdf.add(new Columns([ + await new Img('assets/img/LogoPdf.jpg').fit([60, 60]).build(), + new Txt('RECETA').bold().fontSize(20).alignment('center').end, + new Txt(label ? `${label}` : '').bold().italics().fontSize(20).alignment('right').opacity(0.6).end]).end); + pdf.add(new Txt('\n').end); + pdf.add(new Columns([new Txt('RecetAR').bold().alignment('left').fontSize(15).end, new Txt(`3 - Fecha prescripción: ${this.datePipe.transform(prescription.date, 'dd/MM/yyyy')}`).alignment('right').end]).end); + pdf.add(new Canvas([new Line(1, [515, 1]).end]).end); + pdf.add(new Txt('\n').end); - pdf.create().open(); - } + // Patient + pdf.add(new Txt([ + { text: 'Paciente: ' }, + { text: `${prescription.patient.lastName.toUpperCase()} ${prescription.patient.firstName.toUpperCase()}`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + pdf.add(new Txt([ + { text: 'DNI: ' }, + { text: `${prescription.patient.dni}`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + if (prescription.patient.fechaNac) { + pdf.add(new Txt([ + { text: 'Fecha Nacimiento: ' }, + { text: `${this.datePipe.transform(prescription.patient.fechaNac, 'dd/MM/yyyy')}`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + } + pdf.add(new Txt([ + { text: 'Sexo: ' }, + { text: `${prescription.patient.sex}`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + + let obraSocial = ''; + let numeroAfiliado = ''; + if (prescription.patient.obraSocial?.nombre) { + obraSocial = prescription.patient.obraSocial.nombre; + numeroAfiliado = prescription.patient.obraSocial.numeroAfiliado || ''; + } + pdf.add(new Txt([ + { text: 'Obra Social / Plan de salud : ' }, { text: `${(obraSocial)}`, bold: true } + ]).end); + if (obraSocial) { + pdf.add(new Txt([ + { text: 'Número de afiliado: ' }, { text: `${numeroAfiliado || 'No informado'}`, bold: true } + ]).end); + } + pdf.add(new Txt('\n').end); + + pdf.add(new Canvas([new Line(1, [515, 1]).end]).end); + pdf.add(new Txt('\n').end); + pdf.add(new Columns([new Txt('Medicamento').end, new Columns([new Txt('').end]).end]).end); + pdf.add(new Canvas([new Line(1, [515, 1]).end]).end); + // Supplies + pdf.add(new Txt('\n').end); + prescription.supplies.forEach(supply => { + const cant = supply.quantityPresentation ? `${supply.quantity} envase(s) de ${supply.quantityPresentation} unidades` : `x ${supply.quantity}`; + pdf.add(new Columns([new Txt('' + supply.supply.name).bold().end, new Columns([new Txt(`${cant} `).bold().end]).end]).end); + pdf.add(new Txt('\n').end); + }); + + pdf.add(new Canvas([new Line(1, [515, 1]).end]).end); + pdf.add(new Txt('\n').end); + + if (prescription.supplies[0].diagnostic) { + pdf.add(new Txt('\n').end); + pdf.add(new Txt('Diagnóstico').bold().end); + pdf.add(new Txt('' + prescription.supplies[0].diagnostic).end); + } + if (prescription.supplies[0].indication) { + pdf.add(new Txt('\n').end); + pdf.add(new Txt('Observaciones').bold().end); + pdf.add(new Txt('' + prescription.supplies[0].indication).end); + } + pdf.add(new Txt('\n').end); + pdf.add(new Txt('\n').end); + pdf.add(new Txt('\n').end); + pdf.add(new Txt('\n').end); + pdf.add(new Txt('\n').end); + pdf.add(new Txt('\n').end); + pdf.add(new Txt('\n').end); + + // Barcode + if (prescriptionIdBarcodeImg) { + // Si hay prescriptionId, mostrar ambos códigos en columnas + pdf.add(new Columns([ + { + stack: [barcodeImg], + alignment: 'left', + width: '55%' + }, + { + stack: [prescriptionIdLabel, prescriptionIdBarcodeImg], + alignment: 'right', + width: '45%' + } + ]).alignment('center').width('100%').end); + + // Firma del profesional debajo cuando hay prescriptionId + pdf.add(new Txt([ + { text: 'Este documento ha sido firmado \n electrónicamente por Dr.:', fontSize: 9, bold: true, italics: true }, + { text: '\n', fontSize: 3 }, + { text: `\n ${prescription.professional.businessName}`, fontSize: 14, bold: true }, + { text: `\n MP ${prescription.professional.enrollment}`, bold: true, fontSize: 9 } + ]).alignment('center').margin([0, 25, 0, 0]).end); + } else { + // Si no hay prescriptionId, mostrar código de barras y firma en columnas + pdf.add(new Columns([ + { + stack: [barcodeImg], + alignment: 'center', + width: '50%' + }, + { + stack: [ + new Txt([ + { text: 'Este documento ha sido firmado \n electrónicamente por Dr.:', fontSize: 9, bold: true, italics: true }, + { text: '\n', fontSize: 3 }, + { text: `\n ${prescription.professional.businessName}`, fontSize: 14, bold: true }, + { text: `\n MP ${prescription.professional.enrollment}`, bold: true, fontSize: 9 } + ]).alignment('center').margin([0, 25, 0, 0]).end + ], + alignment: 'center', + width: '50%' + } + ]).alignment('center').width('100%').end); + } + + // Pharmacy + if (prescription.status === 'Dispensada') { + pdf.add(new Txt('\n').margin([0, 10]).end); + pdf.add(new Columns([new Txt('Dispensado por').bold().alignment('center').end, new Txt('CUIL').bold().alignment('center').end]).alignment('center').end); + pdf.add(new Columns([new Txt('' + prescription.dispensedBy.businessName.toUpperCase()).alignment('center').end, new Txt('' + prescription.dispensedBy.cuil).alignment('center').end]).alignment('center').end); + pdf.add(new Txt('\n').margin([0, 5]).end); + pdf.add(new Txt(`Fecha dispensación: ${this.datePipe.transform(prescription.dispensedAt, 'dd/MM/yyyy')}`).alignment('center').end); + } + + pdf.footer(new Txt([ + { text: 'Esta receta fue creada por emisor inscripto y válido en el Registro de Recetarios Electrónicos \n del Ministerio de Salud de la Nación - ', italics: true }, + { text: 'RL-2025-63212094-APN-SSVEIYES#MS', bold: true } + ]).fontSize(11).alignment('center').end); + } } diff --git a/src/app/professionals/components/prescriptions-list/prescriptions-list.component.html b/src/app/professionals/components/prescriptions-list/prescriptions-list.component.html index 1cd984bb..9ba28b68 100644 --- a/src/app/professionals/components/prescriptions-list/prescriptions-list.component.html +++ b/src/app/professionals/components/prescriptions-list/prescriptions-list.component.html @@ -1,120 +1,486 @@ - -

list_alt Mis recetas

-
- - - - - - -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Paciente {{ element.patient.lastName.toUpperCase() }}, {{ element.patient.firstName.toUpperCase() }} Fecha {{element.date | date : 'dd/MM/yyyy' }} Estado {{ element.status }} Insumos {{element.supplies.length}} Acción - - - - - - - - -
- - - -
-
- - -
-
-
-
- {{ supp.supply.name }} {{ supp.quantity }} -
+ +

list_alt Buscar + documentos

+
+ + + + Medicamentos + Prácticas + Certificados + + + + + + + + +
+ + +
+ info +
Seleccione una tipo de registro para mostrar resultados +
+
+
+
+
+ +
+

list_alt + Recetas +

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Origen + +
+ ANDES +
+ +
+ RECETAR +
+
Paciente {{ + getPatientName(element).toUpperCase() }} + DNI {{ + getPatientDni(element) }} + Fecha + {{getPrescriptionDate(element) | date : + 'dd/MM/yyyy' }} Estado {{ + getPrescriptionStatus(element) }} + Acción + + + + + + + +
+ + +
+
+ + +
+
+ +
+
+
+ + {{ supp.supply.name }} x {{supp.quantityPresentation}} + + {{ supp.supply.name }} x + {{supp.quantity}} +
+
+
+ + Cantidad de envases: {{supp.quantity}} +
+
+ Diagnóstico: {{element.diagnostic}}
+
Observaciones: + {{element.observation}} +
+
+ + +
+
+
+ {{ element.medicamento.concepto.term }} x + {{element.medicamento.cantidad}} {{element.medicamento.unidades}} +
+
+
+ Presentación: + {{element.medicamento.presentacion}} +
+
+ Envases: + {{element.medicamento.cantEnvases}} +
+
+ Diagnóstico: + {{element.diagnostico?.term|| element.diagnostico.descripcion}} +
+
+ Posología: + {{element.medicamento.dosisDiaria.dosis}} - + {{element.medicamento.dosisDiaria.dias}} días +
+
+ Organización: + {{element.organizacion.nombre}} +
+
+ Profesional: + {{element.profesional.apellido}}, {{element.profesional.nombre}} (Mat: + {{element.profesional.matricula}}) +
+
+
+
+
+
+
+
-
Diagnóstico: {{element.diagnostic}}
-
Observaciones: {{element.observation}}
-
+
-
-
-
- -
- -
- - -
-
+
+ +
+

list_alt + Certificados +

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Paciente {{ + element.patient.lastName.toUpperCase() }}, {{ element.patient.firstName.toUpperCase() }} + DNI {{ + element.patient.dni }} + Inicio {{ + element.startDate | date :'dd/MM/yyyy HH:mm':'-0300'}} Fin {{ + element.endDate | date :'dd/MM/yyyy HH:mm':'-0300'}} Estado {{getCertificateStatus(element) | + uppercase}} Acción + + + + + + + + +
+ + +
+
+ + +
+
+
+ Descripción: {{ element.certificate }} +
+
+ Cantidad de días: {{ + element.cantDias }} +
+
+ Motivo: {{ element.anulateReason }} +
+
+
+
+
+
+ +
+ +
+
+ +
+

list_alt + Prácticas +

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Paciente {{ + element.patient.lastName.toUpperCase() }}, {{ element.patient.firstName.toUpperCase() }} + DNI {{ + element.patient.dni }} + Fecha {{ + element.date | date :'dd/MM/yyyy'}} Acción + + + + + + + +
+ +
+
+ + +
+
+
+
+ + Práctica: {{ element.practice }} + +
+ + Diagnóstico: {{ element.diagnostic }} + +
+ + Indicaciones: {{ element.indications }} + +
+
+
+
+
+
+
+ +
+ +
+
+ + + \ No newline at end of file diff --git a/src/app/professionals/components/prescriptions-list/prescriptions-list.component.sass b/src/app/professionals/components/prescriptions-list/prescriptions-list.component.sass index f1c1579a..ed31a573 100644 --- a/src/app/professionals/components/prescriptions-list/prescriptions-list.component.sass +++ b/src/app/professionals/components/prescriptions-list/prescriptions-list.component.sass @@ -4,6 +4,15 @@ mat-card-content .loading-prescriptions padding: 30px + .no-selection-message + margin: 20px 0 + + .message-card + border: 1px solid #e0e0e0 + + mat-card-content + padding: 40px 20px + table width: 100% @@ -65,6 +74,10 @@ table background-color: #e9f3ff th.mat-column-supply_count, td.mat-column-supply_count, td.mat-column-arrow text-align: center + th.mat-column-quantity, td.mat-column-quantity, td.mat-column-arrow + text-align: center + th.mat-column-quantityPresentation, td.mat-column-quantityPresentation, td.mat-column-arrow + text-align: center th.mat-column-action text-align: center td.mat-column-arrow @@ -116,6 +129,13 @@ table td.mat-column-supply_count text-align: start!important + + td.mat-colum-quantity + text-align: start!important + + td.mat-colum-quantityPresentation + text-align: start!important + td.mat-column-action .menu-collapse display: flex!important @@ -212,4 +232,34 @@ table &:before display: none +.centered-header + display: block + text-align: center + +// Estilos para la columna de origen (reducir ancho) +.source-column-header, +.source-column + width: 80px !important + max-width: 80px !important + min-width: 80px !important + + .source-icon + display: flex + justify-content: center + align-items: center + width: 100% + height: 32px + + img + object-fit: contain + + &.andes-icon + img + width: 40px + height: 20px + + &.recetar-icon + img + width: 32px + height: 32px diff --git a/src/app/professionals/components/prescriptions-list/prescriptions-list.component.spec.ts b/src/app/professionals/components/prescriptions-list/prescriptions-list.component.spec.ts index fcff5713..eeedaae3 100644 --- a/src/app/professionals/components/prescriptions-list/prescriptions-list.component.spec.ts +++ b/src/app/professionals/components/prescriptions-list/prescriptions-list.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { PrescriptionsListComponent } from './prescriptions-list.component'; @@ -6,7 +6,7 @@ describe('PrescriptionsListComponent', () => { let component: PrescriptionsListComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ PrescriptionsListComponent ] }) diff --git a/src/app/professionals/components/prescriptions-list/prescriptions-list.component.ts b/src/app/professionals/components/prescriptions-list/prescriptions-list.component.ts index c66bb65a..2ac8728d 100644 --- a/src/app/professionals/components/prescriptions-list/prescriptions-list.component.ts +++ b/src/app/professionals/components/prescriptions-list/prescriptions-list.component.ts @@ -1,138 +1,602 @@ -import { Component, OnInit, ViewChild, AfterContentInit, Output, EventEmitter} from '@angular/core'; -import {MatTableDataSource} from '@angular/material/table'; -import {MatPaginator} from '@angular/material/paginator'; -import {MatSort} from '@angular/material/sort'; +import { Component, OnInit, ViewChild, Output, EventEmitter, OnDestroy, AfterContentInit, Input } from '@angular/core'; +import { MatTableDataSource } from '@angular/material/table'; +import { MatPaginator } from '@angular/material/paginator'; +import { MatSort } from '@angular/material/sort'; import { PrescriptionsService } from '@services/prescriptions.service'; +import { AndesPrescriptionsService } from '@services/andesPrescription.service'; import { Prescriptions } from '@interfaces/prescriptions'; +import AndesPrescriptions from '@interfaces/andesPrescriptions'; +import { AndesPrescriptionPrinterComponent } from '@pharmacists/components/andes-prescription-printer/andes-prescription-printer.component'; import * as moment from 'moment'; import { AuthService } from '@auth/services/auth.service'; -import { PrescriptionPrinterComponent } from '@professionals/components/prescription-printer/prescription-printer.component'; +import { UnifiedPrinterComponent } from '@shared/components/unified-printer/unified-printer.component'; import { ProfessionalDialogComponent } from '@professionals/components/professional-dialog/professional-dialog.component'; import { MatDialog } from '@angular/material/dialog'; import { rowsAnimation, detailExpand, arrowDirection } from '@animations/animations.template'; +import { CertificatesService } from '@services/certificates.service'; +import { PracticesService } from '@services/practices.service'; +import { Certificate } from '@interfaces/certificate'; +import { Practice } from '@interfaces/practices'; +import { Subject } from 'rxjs'; +import { takeUntil } from 'rxjs/operators'; +import { InteractionService } from '@professionals/interaction.service'; +import { AmbitoService } from '@auth/services/ambito.service'; + +// Tipo union para manejar prescripciones mixtas +type MixedPrescription = Prescriptions | AndesPrescriptions; @Component({ - selector: 'app-prescriptions-list', - templateUrl: './prescriptions-list.component.html', - styleUrls: ['./prescriptions-list.component.sass'], - animations: [ - rowsAnimation, - detailExpand, - arrowDirection - ], - providers: [PrescriptionPrinterComponent] + selector: 'app-prescriptions-list', + templateUrl: './prescriptions-list.component.html', + styleUrls: ['./prescriptions-list.component.sass'], + animations: [ + rowsAnimation, + detailExpand, + arrowDirection + ], + }) -export class PrescriptionsListComponent implements OnInit, AfterContentInit { - @Output() editPrescriptionEvent = new EventEmitter(); - - displayedColumns: string[] = ['patient', 'prescription_date', 'status', 'supply_count', 'action', 'arrow']; - dataSource = new MatTableDataSource([]); - expandedElement: Prescriptions | null; - loadingPrescriptions: boolean; - - @ViewChild(MatPaginator, {static: true}) paginator: MatPaginator; - @ViewChild(MatSort, {static: true}) sort: MatSort; - - constructor( - private prescriptionService: PrescriptionsService, - private authService: AuthService, - private prescriptionPrinter: PrescriptionPrinterComponent, - public dialog: MatDialog){} - - - ngOnInit() { - this.loadingPrescriptions = true; - this.prescriptionService.prescriptions.subscribe((prescriptions: Prescriptions[]) => { - this.dataSource = new MatTableDataSource(prescriptions); - // sort after populate dataSource - this.dataSource.sortingDataAccessor = (item, property) => { - switch(property) { - case 'patient': return item.patient.lastName + item.patient.firstName; - case 'prescription_date': return new Date(item.date).getTime(); - default: return item[property]; - } - }; - this.dataSource.sort = this.sort; - this.dataSource.paginator = this.paginator; - this.loadingPrescriptions = false; - }); - } - - ngAfterContentInit(){ - this.paginator._intl.itemsPerPageLabel = "Prescripciones por página"; - this.paginator._intl.firstPageLabel = "Primer página"; - this.paginator._intl.lastPageLabel = "Última página"; - this.paginator._intl.nextPageLabel = "Siguiente"; - this.paginator._intl.previousPageLabel = "Anterior"; - this.paginator._intl.getRangeLabel = (page: number, pageSize: number, length: number): string => { - if (length == 0 || pageSize == 0) - { - return `0 de ${length}`; - } - length = Math.max(length, 0); - const startIndex = page * pageSize; - const endIndex = startIndex < length ? Math.min(startIndex + pageSize, length) : startIndex + pageSize; - return `${startIndex + 1} – ${endIndex} de ${length}`; - } - } - - - applyFilter(filterValue: string) { - this.dataSource.filterPredicate = (data: Prescriptions, filter: string) => { - const accumulator = (currentTerm, key) => { - // enable filter by lastName / firstName / date - return currentTerm + data.patient.lastName + data.patient.firstName + moment(data.date, 'YYYY-MM-DD').format('DD/MM/YYY').toString() - }; - - const dataStr = Object.keys(data).reduce(accumulator, '').toLowerCase(); - // Transform the filter by converting it to lowercase and removing whitespace. - const transformedFilter = filter.trim().toLowerCase(); - return dataStr.indexOf(transformedFilter) !== -1; - }; - this.dataSource.filter = filterValue.trim().toLowerCase(); - if (this.dataSource.paginator) { - this.dataSource.paginator.firstPage(); - } - } - - canPrint(prescription: Prescriptions): boolean{ - return (prescription.professional.userId === this.authService.getLoggedUserId()) && prescription.status !== 'Vencida'; - } - - canEdit(prescription: Prescriptions): boolean{ - return prescription.status === "Pendiente"; - } - - canDelete(prescription: Prescriptions): boolean{ - return (prescription.professional.userId === this.authService.getLoggedUserId() && prescription.status === "Pendiente"); - } - - printPrescription(prescription: Prescriptions){ - this.prescriptionPrinter.print(prescription); - } - - editPrescription(prescription: Prescriptions){ - this.editPrescriptionEvent.emit(prescription); - } - - isStatus(prescritpion: Prescriptions, status: string): boolean{ - return prescritpion.status === status; - } - - deleteDialogPrescription(prescription: Prescriptions){ - this.openDialog("delete", prescription); - } - - // Show a dialog - private openDialog(aDialogType: string, aPrescription?: Prescriptions, aText?: string): void { - const dialogRef = this.dialog.open(ProfessionalDialogComponent, { - width: '400px', - data: {dialogType: aDialogType, prescription: aPrescription, text: aText } - }); - - dialogRef.afterClosed().subscribe(result => { - console.log('The dialog was closed'); - }); - } +export class PrescriptionsListComponent implements OnInit, AfterContentInit, OnDestroy { + private destroy$ = new Subject(); + @Output() anulateCertificateEvent = new EventEmitter(); + @Input() tipo: any; + + displayedColumns: string[] = ['source', 'patient', 'dni', 'prescription_date', 'status', 'action', 'arrow']; + certificatesColumns: string[] = ['patient', 'dni', 'certificate_date', 'end_date', 'status', 'action', 'arrow']; + practicesColumns: string[] = ['patient', 'dni', 'practice_date', 'action', 'arrow']; + dataSource = new MatTableDataSource([]); + expandedElement: MixedPrescription | null; + loadingPrescriptions: boolean; + loadingCertificates: boolean; + loadingPractices: boolean; + selectedType: string = null; // No default selection + dataCertificates = new MatTableDataSource([]); + dataPractices = new MatTableDataSource([]); + + // Totales para paginación + totalPrescriptions = 0; + totalCertificates = 0; + totalPractices = 0; + + // Configuración de paginadores + prescriptionsPageSize = 10; + certificatesPageSize = 10; + practicesPageSize = 10; + prescriptionsPageIndex = 0; + certificatesPageIndex = 0; + practicesPageIndex = 0; + pageSizeOptions = [10, 20, 30]; + + // Variable para almacenar el término de búsqueda + currentSearchTerm = ''; + ambito: 'publico' | 'privado' | null = null; + + private paginatorsInitialized = false; + + @ViewChild('prescriptionsPaginator') prescriptionsPaginator: MatPaginator; + @ViewChild('certificatesPaginator') certificatesPaginator: MatPaginator; + @ViewChild('practicesPaginator') practicesPaginator: MatPaginator; + @ViewChild(MatSort, { static: true }) sort: MatSort; + + constructor( + private prescriptionService: PrescriptionsService, + private andesPrescriptionsService: AndesPrescriptionsService, + private certificateService: CertificatesService, + private practicesService: PracticesService, + private authService: AuthService, + private unifiedPrinter: UnifiedPrinterComponent, + public dialog: MatDialog, + private interactionService: InteractionService, + private ambitoService: AmbitoService) { } + + + ngOnInit() { + this.initDataSource(); + // No cargar datos inicialmente + + this.ambitoService.getAmbitoSeleccionado + .pipe(takeUntil(this.destroy$)) + .subscribe(ambito => { + this.ambito = ambito; + }); + + // Suscribirse a eventos de eliminación de prescripciones + this.interactionService.deletePrescription$ + .pipe(takeUntil(this.destroy$)) + .subscribe(prescription => { + // Recargar los datos si estamos viendo prescripciones + if (this.selectedType === 'receta') { + this.loadPrescriptions(); + } + }); + } + + // Cargar datos según el tipo seleccionado + loadDataForSelectedType() { + if (!this.selectedType) { + return; // No cargar si no hay selección + } + + switch (this.selectedType) { + case 'receta': + this.loadPrescriptions(); + break; + case 'certificados': + this.loadCertificates(); + break; + case 'practicas': + this.loadPractices(); + break; + } + } + + // Cargar prescripciones + private loadPrescriptions(offset: number = 0, limit: number = 10) { + this.loadingPrescriptions = true; + const userId = this.authService.getLoggedUserId(); + + const serviceCall = this.currentSearchTerm ? + this.prescriptionService.searchByTerm(userId, { searchTerm: this.currentSearchTerm, offset, limit }) : + this.prescriptionService.getByUserId(userId, { offset, limit }); + + serviceCall.pipe( + takeUntil(this.destroy$) + ).subscribe((response) => { + // Capturar el total de la respuesta del servidor + this.totalPrescriptions = response.total || 0; + + // Usar directamente los datos de la respuesta + this.dataSource.data = response.prescriptions; + this.loadingPrescriptions = false; + + // Configurar paginator después de que los datos estén cargados + setTimeout(() => { + this.setupPrescriptionsPaginator(); + }, 100); + }); + } + + // Expose loadCertificates method to be called from outside + loadCertificates(offset: number = 0, limit: number = 10) { + this.loadingCertificates = true; + const userId = this.authService.getLoggedUserId(); + + const serviceCall = this.currentSearchTerm ? + this.certificateService.searchByTerm(userId, { searchTerm: this.currentSearchTerm, offset, limit }) : + this.certificateService.getByUserId(userId, { offset, limit }); + + serviceCall.pipe( + takeUntil(this.destroy$) + ).subscribe((response) => { + // Capturar el total de la respuesta del servidor + this.totalCertificates = response.total || 0; + + // Usar directamente los datos de la respuesta + this.dataCertificates.data = response.certificates; + this.loadingCertificates = false; + + // Configurar paginator después de que los datos estén cargados + setTimeout(() => { + this.setupCertificatesPaginator(); + }, 100); + }); + } + + // Cargar prácticas + private loadPractices(offset: number = 0, limit: number = 10) { + this.loadingPractices = true; + const userId = this.authService.getLoggedUserId(); + + const serviceCall = this.currentSearchTerm ? + this.practicesService.searchByTerm(userId, { searchTerm: this.currentSearchTerm, offset, limit }) : + this.practicesService.getByUserId(userId, { offset, limit }); + + serviceCall.pipe( + takeUntil(this.destroy$) + ).subscribe((response) => { + // Capturar el total de la respuesta del servidor + this.totalPractices = response.total || 0; + + // Usar directamente los datos de la respuesta + this.dataPractices.data = response.practices; + this.loadingPractices = false; + + // Configurar paginator después de que los datos estén cargados + setTimeout(() => { + this.setupPracticesPaginator(); + }, 100); + }); + } + + ngAfterContentInit() { + // Configurar paginators después de que la vista esté inicializada + this.initializePaginators(); + } + + private initializePaginators() { + this.configurePaginatorLabels(this.prescriptionsPaginator); + this.configurePaginatorLabels(this.certificatesPaginator); + this.configurePaginatorLabels(this.practicesPaginator); + this.setupPaginationEvents(); + this.assignPaginatorsToDataSources(); + this.paginatorsInitialized = true; + } + + private setupPaginationEvents() { + // Los eventos de paginación ahora se manejan directamente desde el HTML + // Este método se mantiene para compatibilidad pero ya no es necesario + } + + private assignPaginatorsToDataSources() { + if (this.dataSource.data.length > 0 && this.prescriptionsPaginator) { + this.dataSource.paginator = this.prescriptionsPaginator; + } + if (this.dataCertificates.data.length > 0 && this.certificatesPaginator) { + this.dataCertificates.paginator = this.certificatesPaginator; + } + if (this.dataPractices.data.length > 0 && this.practicesPaginator) { + this.dataPractices.paginator = this.practicesPaginator; + } + } + + private setupPrescriptionsPaginator() { + if (this.prescriptionsPaginator) { + this.configurePaginatorLabels(this.prescriptionsPaginator); + } + } + + private setupCertificatesPaginator() { + if (this.certificatesPaginator) { + this.configurePaginatorLabels(this.certificatesPaginator); + } + } + + private setupPracticesPaginator() { + if (this.practicesPaginator) { + this.configurePaginatorLabels(this.practicesPaginator); + } + } + + private configurePaginatorLabels(paginator: MatPaginator) { + if (paginator) { + paginator._intl.itemsPerPageLabel = 'Elementos por página'; + paginator._intl.firstPageLabel = 'Primera página'; + paginator._intl.lastPageLabel = 'Última página'; + paginator._intl.nextPageLabel = 'Siguiente'; + paginator._intl.previousPageLabel = 'Anterior'; + paginator._intl.getRangeLabel = (page: number, pageSize: number, length: number): string => { + if (length === 0 || pageSize === 0) { + return `0 de ${length}`; + } + + length = Math.max(length, 0); + const startIndex = page * pageSize; + const endIndex = startIndex < length ? Math.min(startIndex + pageSize, length) : startIndex + pageSize; + return `${startIndex + 1} – ${endIndex} de ${length}`; + }; + } + } + + initDataSource() { + // Inicializar DataSources vacíos + this.dataSource = new MatTableDataSource([]); + this.dataSource.sortingDataAccessor = (item, property) => { + switch (property) { + case 'patient': return this.getPatientName(item); + case 'prescription_date': return this.getPrescriptionDate(item).getTime(); + default: return item[property]; + } + }; + this.dataSource.sort = this.sort; + + this.dataCertificates = new MatTableDataSource([]); + this.dataCertificates.sortingDataAccessor = (item, property) => { + switch (property) { + case 'patient': return item.patient.lastName + item.patient.firstName; + case 'certificate_date': return new Date(item.createdAt).getTime(); + default: return item[property]; + } + }; + this.dataCertificates.sort = this.sort; + + this.dataPractices = new MatTableDataSource([]); + this.dataPractices.sortingDataAccessor = (item, property) => { + switch (property) { + case 'patient': return item.patient.lastName + item.patient.firstName; + case 'practice_date': return new Date(item.date).getTime(); + default: return item[property]; + } + }; + this.dataPractices.sort = this.sort; + } + + // Métodos auxiliares para trabajar con prescripciones mixtas + isAndesPrescription(item: MixedPrescription): item is AndesPrescriptions { + return 'idAndes' in item || 'paciente' in item; + } + + isLocalPrescription(item: MixedPrescription): item is Prescriptions { + return 'patient' in item && '_id' in item; + } + + getPatientName(item: MixedPrescription): string { + if (this.isAndesPrescription(item)) { + return `${item.paciente.apellido} ${item.paciente.nombre}`; + } else { + return `${item.patient.lastName} ${item.patient.firstName}`; + } + } + + getPatientDni(item: MixedPrescription): string { + if (this.isAndesPrescription(item)) { + return item.paciente.documento; + } else { + return item.patient.dni; + } + } + + getPrescriptionDate(item: MixedPrescription): Date { + if (this.isAndesPrescription(item)) { + return new Date(item.fechaPrestacion); + } else { + return new Date(item.date); + } + } + + getPrescriptionStatus(item: MixedPrescription): string { + if (this.isAndesPrescription(item)) { + return this.normalizeStatus(item.estadoActual.tipo); + } else { + return this.normalizeStatus(item.status); + } + } + + // Método para normalizar los estados y mostrarlos en mayúsculas con equivalencias de Andes + private normalizeStatus(status: string): string { + if (!status) { + return ''; + } + + const statusLower = status.toLowerCase(); + + // Mapeo de estados: Todo se normaliza a la nomenclatura de Andes en mayúsculas + const statusMap: { [key: string]: string } = { + // Estados de Andes (ya normalizados) + 'vigente': 'VIGENTE', + 'finalizada': 'FINALIZADA', + 'vencida': 'VENCIDA', + 'suspendida': 'SUSPENDIDA', + 'rechazada': 'RECHAZADA', + + // Estados locales mapear a equivalentes de Andes + 'pendiente': 'VIGENTE', + 'dispensada': 'FINALIZADA' + }; + + return statusMap[statusLower] || status.toUpperCase(); + } + + getPrescriptionId(item: MixedPrescription): string { + if (this.isAndesPrescription(item)) { + return item.idAndes || item._id; + } else { + return item._id; + } + } + + isExpanded(element: MixedPrescription): boolean { + if (!this.expandedElement) { + return false; + } + return this.getPrescriptionId(element) === this.getPrescriptionId(this.expandedElement); + } + + applyFilter(filterValue: string) { + // Actualizar el término de búsqueda + this.currentSearchTerm = filterValue.trim(); + + // Resetear índices de página + this.prescriptionsPageIndex = 0; + this.certificatesPageIndex = 0; + this.practicesPageIndex = 0; + + // Recargar datos según el tipo seleccionado + if (this.selectedType === 'receta') { + this.loadPrescriptions(0, this.prescriptionsPageSize); + } else if (this.selectedType === 'certificados') { + this.loadCertificates(0, this.certificatesPageSize); + } else if (this.selectedType === 'practicas') { + this.loadPractices(0, this.practicesPageSize); + } + } + + canPrint(prescription: MixedPrescription): boolean { + if (this.isAndesPrescription(prescription)) { + // Las prescripciones de ANDES se pueden imprimir si no están vencidas + return !['VENCIDA', 'SUSPENDIDA', 'FINALIZADA'].includes(this.normalizeStatus(prescription.estadoActual.tipo)); + } else { + return (prescription.professional.userId === this.authService.getLoggedUserId()) && this.normalizeStatus(prescription.status) !== 'VENCIDA' && this.normalizeStatus(prescription.status) !== 'SUSPENDIDA'; + } + } + canDelete(prescription: MixedPrescription): boolean { + if (this.isAndesPrescription(prescription)) { + // Las prescripciones de ANDES se pueden suspender si están vigentes y el profesional es el autor + return this.canSuspendAndesPrescription(prescription); + } else { + return (prescription.professional.userId === this.authService.getLoggedUserId() && this.normalizeStatus(prescription.status) === 'VIGENTE'); + } + } + + canSuspendAndesPrescription(prescription: AndesPrescriptions): boolean { + // Solo verificar si el estado actual es vigente + const isVigente = this.normalizeStatus(prescription.estadoActual?.tipo) === 'VIGENTE'; + + return isVigente; + } + + async printPrescription(prescription: MixedPrescription) { + if (this.isLocalPrescription(prescription)) { + await this.unifiedPrinter.printPrescription(prescription); + } else if (this.isAndesPrescription(prescription)) { + await this.unifiedPrinter.printAndesPrescription(prescription); + } + } + anulateCertificate(certificate: Certificate) { + this.certificateService.setCertificate(certificate); + this.anulateCertificateEvent.emit(certificate); + } + + isStatus(prescription: MixedPrescription, status: string): boolean { + const currentStatus = this.getPrescriptionStatus(prescription); + return currentStatus === status.toUpperCase(); + } + + deleteDialogPrescription(prescription: MixedPrescription) { + if (this.isLocalPrescription(prescription)) { + this.openDialog('delete', prescription); + } else if (this.isAndesPrescription(prescription)) { + this.openDialog('suspend_andes', prescription); + } + } + + suspendAndesPrescription(prescription: AndesPrescriptions) { + const profesionalId = this.authService.getLoggedUserId(); + const recetaId = prescription._id; + this.andesPrescriptionsService.suspendPrescription(recetaId, profesionalId) + .pipe(takeUntil(this.destroy$)) + .subscribe({ + next: () => { + this.openSuccessDialog('suspend_andes_success'); + // Recargar los datos si estamos viendo prescripciones + if (this.selectedType === 'receta') { + this.loadPrescriptions( + this.prescriptionsPageIndex * this.prescriptionsPageSize, + this.prescriptionsPageSize + ); + } + }, + error: (error) => { + this.openSuccessDialog('suspend_andes_error'); + } + }); + } + + anulateDialogCertificate(certificate: Certificate) { + this.openDialog('anulate_certificate', certificate); + } + + + deleteDialogPractice(practice: Practice) { + this.openDialog('delete_practice', practice); + } + + async printCertificate(certificate: Certificate) { + await this.unifiedPrinter.printCertificate(certificate); + } + + async printPractice(practice: Practice) { + await this.unifiedPrinter.printPractice(practice); + } + + // Show a dialog + private openDialog(aDialogType: string, aItem?: any, aText?: string): void { + const dialogRef = this.dialog.open(ProfessionalDialogComponent, { + width: '400px', + data: { dialogType: aDialogType, item: aItem, text: aText } + }); + + // Manejar el resultado del dialog + dialogRef.afterClosed().subscribe(result => { + if (result === 'deleted') { + // Mostrar mensaje de éxito + this.openSuccessDialog('deleted'); + } else if (result === 'error') { + // Mostrar mensaje de error + this.openSuccessDialog('error-dispensed'); + } else if (result === 'suspend_andes') { + // Suspender prescripción de ANDES + this.suspendAndesPrescription(aItem as AndesPrescriptions); + } + }); + } + + // Método para mostrar mensajes de éxito o error + private openSuccessDialog(dialogType: string): void { + this.dialog.open(ProfessionalDialogComponent, { + width: '400px', + data: { dialogType: dialogType } + }); + } + + // Métodos para manejar eventos de paginación + onPrescriptionsPageChange(event: any) { + this.prescriptionsPageIndex = event.pageIndex; + this.prescriptionsPageSize = event.pageSize; + this.loadPrescriptions(event.pageIndex * event.pageSize, event.pageSize); + } + + onCertificatesPageChange(event: any) { + this.certificatesPageIndex = event.pageIndex; + this.certificatesPageSize = event.pageSize; + this.loadCertificates(event.pageIndex * event.pageSize, event.pageSize); + } + + onPracticesPageChange(event: any) { + this.practicesPageIndex = event.pageIndex; + this.practicesPageSize = event.pageSize; + this.loadPractices(event.pageIndex * event.pageSize, event.pageSize); + } + + // Método para manejar el cambio de tipo de selector + onSelectedTypeChange() { + // Resetear índices de página cuando cambia el tipo + this.prescriptionsPageIndex = 0; + this.certificatesPageIndex = 0; + this.practicesPageIndex = 0; + + // Limpiar el término de búsqueda + this.currentSearchTerm = ''; + + // Cargar datos para el tipo seleccionado + this.loadDataForSelectedType(); + + // Reinicializar paginators cuando cambia el tipo + setTimeout(() => { + this.initializePaginators(); + }, 100); + } + + ngOnDestroy() { + this.destroy$.next(); + this.destroy$.complete(); + } + + getCertificateStatus(certificate: Certificate): string { + if (certificate.anulateDate) { + return 'anulado'; + } + const currentDate = new Date(); + const endDate = new Date(certificate.endDate); + + if (currentDate > endDate) { + return 'expirado'; + } + return 'vigente'; + } + + getCertificateStatusColor(certificate: Certificate): string { + const status = this.getCertificateStatus(certificate); + + switch (status) { + case 'vigente': + return 'green'; + case 'expirado': + return 'orange'; + case 'anulado': + return 'red'; + default: + return '#000000de'; + } + } } diff --git a/src/app/professionals/components/professional-dialog/professional-dialog.component.html b/src/app/professionals/components/professional-dialog/professional-dialog.component.html index 6c41abfa..95145b8f 100644 --- a/src/app/professionals/components/professional-dialog/professional-dialog.component.html +++ b/src/app/professionals/components/professional-dialog/professional-dialog.component.html @@ -1,55 +1,151 @@
-
-

check Creada

-
-

La receta se ha creado correctamente!

-
-
- -
-
+
+

check Creada

+
+

La receta se ha creado correctamente!

+
+
+ +
+
-
-

check Modificado

-
-

La receta se ha modificado correctamente!

-
-
- +
+

check Creado

+
+

El certificado se ha creado correctamente!

+
+
+ +
-
-
-

delete Desea eliminar la receta?

-
-

Receta de {{data.prescription.patient.lastName}}, {{data.prescription.patient.firstName}}

-

Una vez eliminada no se podrá recuperar

+
+

check Modificado

+
+

La receta se ha modificado correctamente!

+
+
+ +
+
+ +
+

check Eliminada

+
+

La receta se ha eliminado correctamente!

+
+
+ +
+
+ +
+

delete Desea eliminar la receta?

+
+

Receta de {{getPatientName()}}

+

Una vez eliminada no se podrá recuperar

+
+
+ + +
+
+ +
+

check Anulado

+
+

¡El certificado se ha anulado correctamente!

+

Recuerde que, a partir de este momento, pierde toda validez.

+
-
- - +
+ +
-
+
+

check Creada

+
+

La práctica se ha creado correctamente!

+
+
+ +
+
-
-

error_outline Atención

-
-

La receta ya se ha dispensado y no es posible eliminarla

-
-
- +
+

error Error

+
+

Hubo un error al crear la práctica. Por favor, inténtelo nuevamente.

+
+
+ +
+
+ +
+

block ¿Desea suspender la receta?

+
+

Receta de {{getPatientName()}}

+

Una vez suspendida, la receta no podrá dispensarse

+
+
+ + +
-
-
-

error Error

-
-

{{data.text}}

+
+

check Suspendida

+
+

La receta se ha suspendido correctamente!

+
+
+ +
-
- + +
+

error Error

+
+

Hubo un error al suspender la receta. Por favor, inténtelo nuevamente.

+
+
+ +
-
-
+
+

error Error

+
+

{{data.text}}

+
+ +
+

error_outline Atención

+
+

La receta ya se ha dispensado y no es posible eliminarla

+
+
+ +
+
+ +
+

error Error

+
+

{{data.text}}

+
+
+ +
+
+
\ No newline at end of file diff --git a/src/app/professionals/components/professional-dialog/professional-dialog.component.spec.ts b/src/app/professionals/components/professional-dialog/professional-dialog.component.spec.ts index 17965e49..a3237523 100644 --- a/src/app/professionals/components/professional-dialog/professional-dialog.component.spec.ts +++ b/src/app/professionals/components/professional-dialog/professional-dialog.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { ProfessionalDialogComponent } from './professional-dialog.component'; @@ -6,7 +6,7 @@ describe('ProfessionalDialogComponent', () => { let component: ProfessionalDialogComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ ProfessionalDialogComponent ] }) diff --git a/src/app/professionals/components/professional-dialog/professional-dialog.component.ts b/src/app/professionals/components/professional-dialog/professional-dialog.component.ts index 9a372cc4..697cbaf9 100644 --- a/src/app/professionals/components/professional-dialog/professional-dialog.component.ts +++ b/src/app/professionals/components/professional-dialog/professional-dialog.component.ts @@ -1,41 +1,77 @@ -import { Component, OnInit, Inject, } from '@angular/core'; -import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog'; -import { fadeInOnEnterAnimation, fadeOutOnLeaveAnimation } from 'angular-animations'; +import { Component, Inject, OnInit, } from '@angular/core'; +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog'; import { Prescriptions } from '@interfaces/prescriptions'; -import { InteractionService } from "@professionals/interaction.service"; +import AndesPrescriptions from '@interfaces/andesPrescriptions'; +import { InteractionService } from '@professionals/interaction.service'; +import { Certificate } from '@interfaces/certificate'; +import { fadeInOnEnterAnimation, fadeOutOnLeaveAnimation } from 'angular-animations'; @Component({ - selector: 'app-professional-dialog', - templateUrl: './professional-dialog.component.html', - styleUrls: ['./professional-dialog.component.sass'], - animations: [ - fadeInOnEnterAnimation(), - fadeOutOnLeaveAnimation() - ], + selector: 'app-professional-dialog', + templateUrl: './professional-dialog.component.html', + styleUrls: ['./professional-dialog.component.sass'], + animations: [ + fadeInOnEnterAnimation(), + fadeOutOnLeaveAnimation() + ], }) export class ProfessionalDialogComponent implements OnInit { + prescription: Prescriptions; + constructor( + public dialogRef: MatDialogRef, + @Inject(MAT_DIALOG_DATA) public data: DialogData, + private _interactionService: InteractionService + ) { } + + ngOnInit(): void { + } - constructor( - public dialogRef: MatDialogRef, - @Inject(MAT_DIALOG_DATA) public data: DialogData, - private _interactionService: InteractionService - ) {} + onNoClick(): void { + this.dialogRef.close(); + } - ngOnInit(): void { - } + deletePrescription(prescription: Prescriptions | AndesPrescriptions) { + // Solo procesar si es una prescripción local + if (!this.isAndesPrescription(prescription)) { + const localPrescription = prescription as Prescriptions; + this._interactionService.deletePrescription(localPrescription).subscribe( + success => { + if (success) { + // Emitir evento para actualizar listas + this._interactionService.emitPrescriptionDeleted(localPrescription); + this.dialogRef.close('deleted'); + } else { + this.dialogRef.close('error'); + } + }, + error => { + this.dialogRef.close('error-dispensed'); + } + ); + } + } - onNoClick(): void { - this.dialogRef.close(); - } + confirmSuspendAndes() { + this.dialogRef.close('suspend_andes'); + } - deletePrescription(prescription: Prescriptions){ - this._interactionService.deletePrescription(prescription); - this.dialogRef.close(); - } + isAndesPrescription(item: any): item is AndesPrescriptions { + return 'idAndes' in item || 'paciente' in item; + } + + getPatientName(): string { + if (this.isAndesPrescription(this.data.item)) { + const andesPrescription = this.data.item as AndesPrescriptions; + return `${andesPrescription.paciente?.apellido}, ${andesPrescription.paciente?.nombre}`; + } else { + const localPrescription = this.data.item as Prescriptions; + return `${localPrescription.patient?.lastName}, ${localPrescription.patient?.firstName}`; + } + } } export interface DialogData { - prescription: Prescriptions; - dialogType: string; - text: string; -} \ No newline at end of file + item: Prescriptions | AndesPrescriptions; + dialogType: string; + text: string; +} diff --git a/src/app/professionals/components/professional-form/professional-form.component.html b/src/app/professionals/components/professional-form/professional-form.component.html index e93f98f9..286c84d5 100644 --- a/src/app/professionals/components/professional-form/professional-form.component.html +++ b/src/app/professionals/components/professional-form/professional-form.component.html @@ -1,220 +1,392 @@ + + +
+
+ +
+ +
+ +

+ gesture + Registrar nueva receta +

+
- - + +
+
-
-
- -
- -
- -

- {{ isEdit ? "edit" : "gesture" }} {{ isEdit ? "Editar receta" : "Registrar nueva receta" }} -

-
- - - -
- -
- - - Fecha receta - - - - - - Debe ingresar una fecha válida - - - -
-
- - - DNI paciente - - - - - - - {{patient.lastName}} {{patient.firstName}} DNI {{patient.dni}} - - - - {{dni.value.length}} / 8 - - - Debe ingresar el dni del paciente - - - - El dni debe contener {{patientDni.errors?.minlength.requiredLength}} digitos - - - - El dni debe contener solo números. - - - - - - Apellido paciente - - - - Debe ingresar el apellido del paciente - - - -
-
- - - Sexo - - Femenino - Masculino - Otro - - - - Debe seleccionar el tipo de sexo - - - - - - Nombre paciente - - - - Debe ingresar el nombre del paciente - - -
-
+
+
+ + + Fecha receta + + + -
+ + Debe ingresar una fecha válida + + +
+ Generar receta trimestral + +
+
-
-
- - Debe seleccionar almenos un medicamento - -
- -
-
- - Medicamento - - - - - {{sup.name}} - - - - Debe seleccionar un insumo - - - {{ control.get('supply').getError('invalid') }} - - - - - Cantidad - - - Debe ingresar una cantidad - - - - Debe ingresar un mínimo de {{control.get('quantity').errors?.min.min}} - - -
-
-
+
+
+ + + DNI paciente + + + + + + + + {{patient.lastName}} {{patient.firstName}} DNI {{patient.dni}} + + + + {{dni.value.length}} / 8 + + + Debe ingresar el dni del paciente + + + + El dni debe contener {{patientDni.errors?.minlength.requiredLength}} + digitos + + + + El dni debe contener solo números. + + + + + + Sexo + + Femenino + Masculino + Otro + + + + Debe seleccionar el tipo de sexo + + + + + + Apellido paciente + + + + Debe ingresar el apellido del paciente + + + + + + Nombre paciente + - + + Debe ingresar el nombre del paciente + + - - Diagnóstico - - + + + Fecha de nacimiento + + + - - Observaciones - - + + Debe ingresar la fecha de nacimiento + + + Fecha inválida + + + La fecha de nacimiento no puede ser futura + + + La fecha de nacimiento debe ser posterior a 1900 + + +
+ Elegir otra + cobertura + social +
-
-
-
- + + Obra Social + + + Sin obras sociales del paciente + + + + {{ os?.nombre }} + + + + - + + Obra Social + + + + Sin obras sociales + + + + {{ os?.nombre }} + + + + + + + Numero de Afiliado + + + Debe ingresar el número de afiliado. + + + Sólo se permiten números. + + +
+
+
+
+
+ + Debe seleccionar al menos un medicamento + +
+ +
+ +
+ +
+
+ + Medicamento + + + + + + {{sup.term}} + + + + + Debe seleccionar un insumo + + + Debe seleccionar un medicamento de la lista desplegable + + + {{ control.get('supply').getError('invalid') }} + + + +
+ +
+ + + Cantidad + + + Debe ingresar una cantidad + + + Debe ingresar un mínimo de + {{control.get('quantityPresentation').errors?.min.min}} + + +
+ +
+ + + Cantidad de envases + + + Debe ingresar una cantidad + + + Debe ingresar un mínimo de + {{control.get('quantity').errors?.min.min}} + + +
+ +
+ Receta + por + duplicado + +
+
+ Receta + por + triplicado + +
+ + Serie + + + + Número + + +
+
+ + Recuerde que sigue + siendo + obligatoria la + entrega del formulario triplicado en papel + + + Diagnóstico + + + Debe ingresar un diagnóstico + + + El diagnóstico no puede contener solo espacios en blanco + + + + Indicaciones + + +
+
+
+ +
+ +
+
+ + + +
+ + + +
+ +
+ +
- -
- - + +
+
- -
-
- -
+
+ +
-
-
+
+ +
+
diff --git a/src/app/professionals/components/professional-form/professional-form.component.sass b/src/app/professionals/components/professional-form/professional-form.component.sass index 0bdebd78..d6d59f79 100644 --- a/src/app/professionals/components/professional-form/professional-form.component.sass +++ b/src/app/professionals/components/professional-form/professional-form.component.sass @@ -8,108 +8,63 @@ .custom-tab-link-bar width: 100% justify-content: space-between - display: none - @media (min-width: $x-small-devices) and (max-width: $small-devices) - display: flex + display: flex button - width: calc(100% / 2) + width: calc(100% / 4) margin: 0px!important border-radius: 0px!important + &.two-elements + button + width: calc(100% / 2) + .link-bar-indicator-container width: 100% height: 3px background-color: #fff padding-bottom: 10px position: relative - display: none - @media (min-width: $x-small-devices) and (max-width: $small-devices) - display: block + display: block .indicator - width: 50% + width: 25% height: 3px position: absolute top: 0 background-color: #4056b5 +.two-elements ~ .link-bar-indicator-container .indicator + width: 50% + .pf-container - @media (min-width: $x-small-devices) and (max-width: $small-devices) - max-width: 100vw - position: relative - overflow: hidden + max-width: 100vw + position: relative + overflow: hidden .cards-container - - .prescription-panel - .first-block - mat-form-field - width: 100% - .st-bk-patient, .nd-bk-patient - width: calc((100% - 10px) / 2) - - @media (min-width: $larger-devices) and (max-width: $xxx-larger-devices) - .prescription-panel - width: 35%!important - .my-prescriptions-panel - width: 65%!important - - @media (min-width: $small-devices) and (max-width: $larger-devices) - flex-direction: column!important - - .prescription-panel - width: 100%!important - margin-bottom: 20px - .first-block - display: flex - mat-form-field - width: calc((100% - 10px) / 5) - margin-right: 10px - .patient-container - width: calc(100% - ((100% - 10px) / 5)) - .st-bk-patient, .nd-bk-patient - display: flex - mat-form-field - width: calc((100% - 20px) / 2) - - .my-prescriptions-panel - width: 100%!important - - @media (min-width: $x-small-devices) and (max-width: $small-devices) - flex-direction: row!important - width: calc((100vw * 2) - (5px * 2) )!important - position: relative - top: 0 - .prescription-panel - // max-width: 100% - max-width: calc((100% / 2) - (10px / 2)) - width: 100% - height: 900px - margin-right: 10px!important - margin-bottom: 20px - background-color: #ffffff - .first-block - display: flex - flex-direction: column - mat-form-field - width: 100% - margin-left: 0px - .patient-container - flex-direction: column!important - width: 100% - .st-bk-patient, .nd-bk-patient - flex-direction: column - width: 100%!important - mat-form-field - width: 100%!important - .my-prescriptions-panel - max-width: calc((100% / 2) - (10px / 2)) - width: 100% - height: 900px - overflow: auto - background-color: #fff + display: flex + flex-direction: row + width: 100% + position: relative + top: 0 + + .prescription-panel, + .practices-panel, + .my-prescriptions-panel + flex: 1 1 100% + max-width: 100% + margin-bottom: 20px + background-color: #ffffff + overflow: auto + + .certificates-panel + flex: 1 1 100% + max-width: 100% + margin-bottom: 20px + background-color: #ffffff + overflow: auto .mat-form-field, button margin: 5px 0 @@ -120,6 +75,16 @@ button[type="button"] margin: 0 +.nested-supplies + mat-form-field + width: 100% + + div[formGroupName] + display: flex + flex-direction: row + gap: 10px + margin-bottom: 10px + .sub-container width: 100% @@ -149,3 +114,15 @@ outline: 1px outline-offset: -2px +.check + margin-bottom: 10px + +.supply-card + margin-bottom: 10px + +.mat-option + white-space: nowrap !important + overflow: visible !important + +.btnDelete + justify-content: end \ No newline at end of file diff --git a/src/app/professionals/components/professional-form/professional-form.component.spec.ts b/src/app/professionals/components/professional-form/professional-form.component.spec.ts index 99acb3a0..439ad9ec 100644 --- a/src/app/professionals/components/professional-form/professional-form.component.spec.ts +++ b/src/app/professionals/components/professional-form/professional-form.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { ProfessionalFormComponent } from './professional-form.component'; @@ -6,7 +6,7 @@ describe('ProfessionalFormComponent', () => { let component: ProfessionalFormComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ ProfessionalFormComponent ] }) diff --git a/src/app/professionals/components/professional-form/professional-form.component.ts b/src/app/professionals/components/professional-form/professional-form.component.ts index a19bfdc1..671805e1 100644 --- a/src/app/professionals/components/professional-form/professional-form.component.ts +++ b/src/app/professionals/components/professional-form/professional-form.component.ts @@ -1,370 +1,743 @@ -import { Component, OnInit, ViewChild } from '@angular/core'; -import { FormBuilder, FormGroup, AbstractControl, Validators, FormArray, FormGroupDirective } from '@angular/forms'; -import { Observable } from 'rxjs'; -import { SuppliesService } from '@services/supplies.service' -import Supplies from '@interfaces/supplies'; +import { Component, OnInit, OnDestroy, ViewChild, AfterViewInit } from '@angular/core'; +import { FormBuilder, FormGroup, AbstractControl, Validators, FormArray, FormGroupDirective, FormControl, ValidatorFn } from '@angular/forms'; +import { Observable, of, Subscription } from 'rxjs'; +// import { SuppliesService } from '@services/supplies.service'; +import { SnomedSuppliesService } from '@services/snomedSupplies.service'; import { PatientsService } from '@root/app/services/patients.service'; import { PrescriptionsService } from '@services/prescriptions.service'; import { AuthService } from '@auth/services/auth.service'; import { Patient } from '@interfaces/patients'; -import {ThemePalette} from '@angular/material/core'; +import { ThemePalette } from '@angular/material/core'; import { Prescriptions } from '@interfaces/prescriptions'; import { ProfessionalDialogComponent } from '@professionals/components/professional-dialog/professional-dialog.component'; import { MatDialog } from '@angular/material/dialog'; import { InteractionService } from '@professionals/interaction.service'; -import { step, stepLink} from '@animations/animations.template'; +import { step, stepLink } from '@animations/animations.template'; +import { map, startWith, catchError, debounceTime, distinctUntilChanged, filter, switchMap, takeUntil } from 'rxjs/operators'; +import { fadeOutCollapseOnLeaveAnimation } from 'angular-animations'; +import { CertificatesService } from '@services/certificates.service'; +import { PrescriptionsListComponent } from '@professionals/components/prescriptions-list/prescriptions-list.component'; +import { Subject } from 'rxjs'; +import { AmbitoService } from '@auth/services/ambito.service'; + +// Validador personalizado para fechas +function validDateValidator(): ValidatorFn { + return (control: AbstractControl): { [key: string]: any } | null => { + if (!control.value) { + return null; // Si no hay valor, no validamos (required se encarga) + } + + const date = new Date(control.value); + const isValidDate = date instanceof Date && !isNaN(date.getTime()); + + if (!isValidDate) { + return { 'invalidDate': { value: control.value } }; + } + + // Validar que la fecha no sea futura para fecha de nacimiento + const today = new Date(); + if (date > today) { + return { 'futureDate': { value: control.value } }; + } + + // Validar que la fecha sea razonable (no muy antigua) + const minDate = new Date('1900-01-01'); + if (date < minDate) { + return { 'tooOldDate': { value: control.value } }; + } + + return null; + }; +} + +function medicationSelectedValidator(): ValidatorFn { + return (control: AbstractControl): { [key: string]: any } | null => { + if (!control.value) { + return null; + } + + const supplyGroup = control.parent; + if (!supplyGroup) { + return null; + } + + const snomedConcept = supplyGroup.get('snomedConcept'); + if (!snomedConcept || !snomedConcept.value || !snomedConcept.value.conceptId) { + return { 'medicationNotSelected': { value: control.value } }; + } + + return null; + }; +} +function noWhitespaceValidator(): ValidatorFn { + return (control: AbstractControl): { [key: string]: any } | null => { + if (!control.value) { + return null; + } + + const isWhitespace = (control.value || '').trim().length === 0; + return isWhitespace ? { 'whitespace': { value: control.value } } : null; + }; +} @Component({ - selector: 'app-professional-form', - templateUrl: './professional-form.component.html', - styleUrls: ['./professional-form.component.sass'], - animations: [ - step, - stepLink - ] + selector: 'app-professional-form', + templateUrl: './professional-form.component.html', + styleUrls: ['./professional-form.component.sass'], + animations: [ + step, + stepLink + ] }) -export class ProfessionalFormComponent implements OnInit { - @ViewChild('dni', {static: true}) dni:any; - - private supplyRequest: any = null; - professionalForm: FormGroup; - - filteredOptions: Observable; - options: string[] = []; - storedSupplies: Supplies[] = []; - patientSearch: Patient[]; - sex_options: string[] = ["Femenino", "Masculino", "Otro"]; - today = new Date((new Date())); - professionalData: any; - readonly maxQSupplies: number = 2; - readonly spinnerColor: ThemePalette = 'primary'; - readonly spinnerDiameter: number = 30; - isSubmit: boolean = false; - dniShowSpinner: boolean = false; - supplySpinner: { show: boolean}[] = [{show: false}, {show: false}]; - myPrescriptions: Prescriptions[] = []; - isEdit: boolean = false; - isFormShown: boolean = true; - devices: any = { - mobile: false, - tablet: false, - desktop: false - } - - constructor( - private suppliesService: SuppliesService, - private fBuilder: FormBuilder, - private apiPatients: PatientsService, - private apiPrescriptions: PrescriptionsService, - private authService: AuthService, - public dialog: MatDialog, - private _interactionService: InteractionService - ){} - - ngOnInit(): void { - this.initProfessionalForm(); - - // On confirm delete prescription - this._interactionService.deletePrescription$ - .subscribe( - prescription => { - this.deletePrescription(prescription); +export class ProfessionalFormComponent implements OnInit, OnDestroy, AfterViewInit { + obraSocialControl = new FormControl(''); + filteredObrasSociales: Observable; + + // Suscripciones + private subscriptions: Subscription = new Subscription(); + + onOsSelected(selectedOs: any): void { + const osGroup = this.professionalForm.get('patient.os') as FormGroup; + if (osGroup && selectedOs) { + osGroup.patchValue({ + nombre: selectedOs.nombre, + codigoPuco: selectedOs.codigoPuco + }); + const numeroAfiliadoControl = osGroup.get('numeroAfiliado'); + if (numeroAfiliadoControl) { + numeroAfiliadoControl.enable(); + } } - ); - - // on DNI changes - this.patientDni.valueChanges.subscribe( - dniValue => { - this.getPatientByDni(dniValue); - } - ); - - // subscribe to each supply field changes - this.suppliesForm.controls.map((supplyControl, index) => { - supplyControl.get('supply').valueChanges.subscribe((supply: string | {_id: string, name: string}) => { - if(typeof(supply) === 'string' && supply.length > 3){ - if(this.supplyRequest !== null) this.supplyRequest.unsubscribe(); - - this.supplySpinner[index] = {show: true}; - this.supplyRequest = this.suppliesService.getSupplyByTerm(encodeURIComponent(supply)).subscribe( - res => { - this.storedSupplies = res as Supplies[]; - this.supplySpinner[index] = {show: false}; - }, - ); - }else if(typeof(supply) === 'object' || (typeof(supply) === 'string' && supply.length == 0)){ - this.storedSupplies = []; - }else{ - this.supplySpinner[index] = {show: false}; + } + existenObrasSociales(array: any[]): boolean { + if (!array || array.length === 0) { + return false; + } + return !array.every(item => item === null || item === undefined); + } + @ViewChild('dni', { static: true }) dni: any; + @ViewChild(PrescriptionsListComponent) prescriptionsList: PrescriptionsListComponent; + + private destroy$ = new Subject(); + professionalForm: FormGroup; + + filteredSupplies = []; + request; + storedSupplies = []; + patientSearch: Patient[]; + sex_options: string[] = ['Femenino', 'Masculino', 'Otro']; + genero_options: string[] = ['']; + today = new Date(); + professionalData: any; + readonly maxQSupplies: number = 10; + readonly spinnerColor: ThemePalette = 'primary'; + readonly spinnerDiameter: number = 30; + minDate = new Date('1900-01-01'); + maxDate = new Date(); + isSubmit = false; + dniShowSpinner = false; + supplySpinner: { show: boolean }[] = [{ show: false }, { show: false }]; + myPrescriptions: Prescriptions[] = []; + isEditCertificate = false; + isEdit = false; + isFormShown = true; + currentTab = 'form'; + isListShown = false; + isCertificateShown = false; + devices: any = { + mobile: false, + tablet: false, + desktop: false + }; + obraSocial: any[]; + obrasSociales: any[]; + otraOS = false; + selectType; + private certificateSubscription; + public certificate; + ambito: 'publico' | 'privado'; + showFechaNac = false; + + constructor( + // private suppliesService: SuppliesService, + private snomedSuppliesService: SnomedSuppliesService, + private fBuilder: FormBuilder, + private apiPatients: PatientsService, + private apiPrescriptions: PrescriptionsService, // privado + private authService: AuthService, + public dialog: MatDialog, + private _interactionService: InteractionService, + private certificateService: CertificatesService, + private ambitoService: AmbitoService + ) { } + + ngOnInit(): void { + // Suscribirse a los cambios del ámbito + const ambitoSubscription = this.ambitoService.getAmbitoSeleccionado.subscribe(ambito => { + this.ambito = ambito; + this.showFechaNac = this.isAmbitoPublico(); + // Actualizar el formulario si ya está inicializado + if (this.professionalForm) { + this.updateFechaNacValidators(); + this.professionalForm.patchValue({ ambito: this.ambito }); + } + }); + this.subscriptions.add(ambitoSubscription); + + this.initProfessionalForm(); + + // On confirm delete prescription + const deletePrescriptionSub = this._interactionService.deletePrescription$ + .pipe(takeUntil(this.destroy$)) + .subscribe( + prescription => { + // Solo actualizar la lista si está visible + if (this.prescriptionsList && this.currentTab === 'list') { + this.prescriptionsList.loadDataForSelectedType(); + } + } + ); + this.subscriptions.add(deletePrescriptionSub); + + // on DNI changes + const dniChangesSub = this.patientDni.valueChanges.pipe( + debounceTime(400) + ).subscribe( + dniValue => { + this.getPatientByDni(dniValue); + } + ); + this.subscriptions.add(dniChangesSub); + + // get prescriptions + const prescriptionsSub = this.apiPrescriptions.getByUserId(this.authService.getLoggedUserId()).subscribe(); + this.subscriptions.add(prescriptionsSub); + + this.professionalForm.get('trimestral')?.valueChanges.subscribe(isChecked => { + if (isChecked) { + this.suppliesForm.controls.forEach((supplyControl: FormGroup) => { + supplyControl.get('triplicate')?.setValue(false); + }); + } + }); + + const otraOSSub = this.professionalForm.get('patient.otraOS')?.valueChanges.subscribe(() => { + const osGroup = this.professionalForm.get('patient.os') as FormGroup; + osGroup.reset(); + osGroup.get('numeroAfiliado').disable(); + }); + if (otraOSSub) { + this.subscriptions.add(otraOSSub); + } + + // Configurar filtro de obras sociales + this.filteredObrasSociales = this.obraSocialControl.valueChanges.pipe( + startWith(''), + map(value => { + const name = typeof value === 'string' ? value : value?.nombre; + return name ? this._filter(name) : this.obrasSociales.slice(); + }) + ); + + // Suscribirse a cambios en editCertificate + this.certificateSubscription = this.certificateService.certificate$.subscribe( + certificate => { + if (certificate) { + this.isCertificateShown = true; + } + } + ); + } + + ngOnDestroy(): void { + this.destroy$.next(); + this.destroy$.complete(); + this.subscriptions.unsubscribe(); + if (this.certificateSubscription) { + this.certificateSubscription.unsubscribe(); } - // add or remove closest quantity validation - if(index > 0) this.onSuppliesAddControlQuantityValidators(index, ( - ((typeof(supply) === 'string' && supply.length > 0) || - (typeof(supply) === 'object')) && - (typeof(supply) !== 'undefined' && supply !== null)) + } + + ngAfterViewInit() { + // Implementation not needed for this case + } + + private _filter(value: string): any[] { + const filterValue = value.toLowerCase(); + return this.obrasSociales.filter(os => + os.nombre.toLowerCase().includes(filterValue) ); - }); - }); - - // get prescriptions - this.apiPrescriptions.getByUserId(this.authService.getLoggedUserId()).subscribe( - res => { - // this.myPrescriptions = res; - }, - ); - } - - initProfessionalForm(){ - this.today = new Date((new Date())); - this.professionalData = this.authService.getLoggedUserId(); - this.professionalForm = this.fBuilder.group({ - _id: [''], - professional: [this.professionalData], - patient: this.fBuilder.group({ - dni: ['', [ - Validators.required, - Validators.minLength(8), - Validators.pattern("^[0-9]*$") - ]], - lastName: ['', [ - Validators.required - ]], - firstName: ['', [ - Validators.required - ]], - sex: ['', [ - Validators.required - ]] - }), - date: [this.today, [ - Validators.required - ]], - diagnostic: [''], - observation: [''], - supplies: this.fBuilder.array([ - this.fBuilder.group({ - supply: ['', Validators.required], - quantity: ['', [ - Validators.required, - Validators.min(1) - ]] - }), - this.fBuilder.group({ - supply: [''], - quantity: [''] - }), - ]) - }); - this.dni.nativeElement.focus(); - } - - - onSuppliesAddControlQuantityValidators(index: number, add: boolean){ - const quantity = this.suppliesForm.controls[index].get('quantity'); - if(add && !quantity.validator){ - quantity.setValidators([ - Validators.required, - Validators.min(1) - ]); - }else if(!add && !!quantity.validator){ - quantity.clearValidators(); - } - quantity.updateValueAndValidity(); - } - - getPatientByDni(dniValue: string | null):void{ - if(dniValue !== null && dniValue.length == 8){ - this.dniShowSpinner = true; - this.apiPatients.getPatientByDni(dniValue).subscribe( - res => { - if(res.length){ - // with the new change on the api, andes MPI return an a array of patient, where more than 1 patient could has the same DNI - this.patientSearch = res; - }else{ - // clean fields - this.patientSearch = []; - this.patientLastName.setValue(''); - this.patientFirstName.setValue(''); - this.patientSex.setValue(''); - } - this.dniShowSpinner = false; - }); - }else{ - this.dniShowSpinner = false; - } - } - completePatientInputs(patient: Patient): void { - this.patientLastName.setValue(patient.lastName); - this.patientFirstName.setValue(patient.firstName); - this.patientSex.setValue(patient.sex); - } - - // Create patient if doesn't exist and create prescription - onSubmitProfessionalForm(professionalNgForm: FormGroupDirective): void { - - if(this.professionalForm.valid){ - const newPrescription = this.professionalForm.value; - this.isSubmit = true; - if(!this.isEdit){ - // create - this.apiPrescriptions.newPrescription(newPrescription).subscribe( - success => { - if(success) this.formReset(professionalNgForm); - }, - err => { - this.handleSupplyError(err); - }); - - } else { - // edit - this.apiPrescriptions.editPrescription(newPrescription).subscribe( - success => { - if(success) this.formReset(professionalNgForm); - }, - err => { - this.handleSupplyError(err); + } + + initProfessionalForm() { + this.today = new Date((new Date())); + this.professionalData = this.authService.getLoggedUserId(); + + // Obtener el ámbito actual del servicio + const currentAmbito = this.ambitoService.getAmbito(); + if (currentAmbito) { + this.ambito = currentAmbito; + } + + this.showFechaNac = this.isAmbitoPublico(); + + this.professionalForm = this.fBuilder.group({ + _id: [''], + professional: [this.professionalData], + patient: this.fBuilder.group({ + dni: ['', [ + Validators.required, + Validators.minLength(7), + Validators.pattern('^[0-9]*$') + ]], + lastName: ['', [ + Validators.required + ]], + firstName: ['', [ + Validators.required + ]], + sex: ['', [ + Validators.required + ]], + otraOS: [{ value: false, disabled: true }], + os: this.fBuilder.group({ + nombre: [''], + codigoPuco: [''], + numeroAfiliado: [{ value: '', disabled: true }, [Validators.required, Validators.pattern('^[0-9]*$')]] + }), + fechaNac: ['', this.isAmbitoPublico() ? [ + Validators.required, + validDateValidator() + ] : [validDateValidator()]] + }), + date: [this.today, [ + Validators.required + ]], + trimestral: [false], + supplies: this.fBuilder.array([]), + ambito: [this.ambito] }); - } - } - } - - private handleSupplyError(err){ - if(err.error.length > 0){ - err.error.map(err => { - // handle supplies error - this.suppliesForm.controls.map(control => { - if(control.get('supply').value == err.supply){ - control.get('supply').setErrors({ invalid: err.message}); - } + this.addSupply(); + } + + onSuppliesAddControlQuantityValidators(index: number, add: boolean) { + const quantity = this.suppliesForm.controls[index].get('quantity'); + if (add && !quantity.validator) { + quantity.setValidators([ + Validators.required, + Validators.min(1) + ]); + } else if (!add && !!quantity.validator) { + quantity.clearValidators(); + } + quantity.updateValueAndValidity(); + } + + getPatientByDni(dniValue: string | null): void { + if (dniValue !== null && (dniValue.length === 7 || dniValue.length === 8)) { + this.dniShowSpinner = true; + this.apiPatients.getPatientByDni(dniValue).subscribe( + res => { + if (res.length) { + this.patientSearch = res; + this.patientOtraOS.enable(); + } else { + this.patientSearch = []; + this.patientLastName.setValue(''); + this.patientFirstName.setValue(''); + this.patientSex.setValue(''); + this.patientOtraOS.setValue(false); + this.patientFechaNac.setValue(''); + // Resetear showFechaNac cuando no se encuentra paciente + this.showFechaNac = this.isAmbitoPublico(); + // Deshabilitar el checkbox otraOS cuando no se encuentra un paciente + this.patientOtraOS.disable(); + } + this.dniShowSpinner = false; + }); + this.apiPatients.getPatientOSByDni(dniValue, this.patientSex.value).subscribe( + res => { + if (Array.isArray(res)) { + this.obraSocial = res; + } else { + this.obraSocial = []; + } + }); + this.apiPatients.getOS().subscribe( + res => { + this.obrasSociales = (res as Array); + } + ); + } else { + this.dniShowSpinner = false; + } + } + + private updateFechaNacValidators(): void { + const fechaNacControl = this.patientFechaNac; + if (this.showFechaNac) { + fechaNacControl.setValidators([ + Validators.required, + validDateValidator() + ]); + } else { + fechaNacControl.setValidators([validDateValidator()]); + } + fechaNacControl.updateValueAndValidity(); + } + + completePatientInputs(patient: Patient): void {// TODO: REC-38 + this.patientLastName.setValue(patient.lastName); + this.patientFirstName.setValue(patient.firstName); + this.patientSex.setValue(patient.sex); + this.showFechaNac = this.isAmbitoPublico() && !patient.idMPI; + this.updateFechaNacValidators(); + this.patientFechaNac.setValue(patient.fechaNac); + } + + onSubmitProfessionalForm(professionalNgForm: FormGroupDirective): void { + if (this.professionalForm.valid) { + const newPrescription = this.professionalForm.value; + this.isSubmit = true; + if (!this.isEdit) { + this.apiPrescriptions.newPrescription(newPrescription).subscribe( + success => { + if (success) { this.formReset(professionalNgForm); } + }, + err => { + this.handleSupplyError(err); + }); + + } else { + // edit + this.apiPrescriptions.editPrescription(newPrescription).subscribe( + success => { + if (success) { this.formReset(professionalNgForm); } + }, + err => { + this.handleSupplyError(err); + }); + } + } + } + + private handleSupplyError(err) { + if (err.error.length > 0) { + err.error.map(err => { + // handle supplies error + this.suppliesForm.controls.map(control => { + if (control.get('supply').value === err.supply) { + control.get('supply').setErrors({ invalid: err.message }); + } + }); + }); + } + this.isSubmit = false; + } + + private formReset(professionalNgForm: FormGroupDirective) { + this.isEdit ? this.openDialog('updated') : this.openDialog('created'); + this.clearForm(professionalNgForm); + this.isSubmit = false; + } + + // Show a dialog + openDialog(aDialogType: string, aPrescription?: Prescriptions, aText?: string): void { + const dialogRef = this.dialog.open(ProfessionalDialogComponent, { + width: '400px', + data: { dialogType: aDialogType, prescription: aPrescription, text: aText } }); - }); - } - this.isSubmit = false; - } - - private formReset(professionalNgForm: FormGroupDirective){ - - this.isEdit ? this.openDialog("updated") : this.openDialog("created"); - this.clearForm(professionalNgForm); - this.isSubmit = false; - this.dni.nativeElement.focus(); - } - - deletePrescription(prescription: Prescriptions){ - this.apiPrescriptions.deletePrescription(prescription._id).subscribe( - success => { - if(success) console.log('removed'); - }, - err => { - this.openDialog("error-dispensed") - } - ); - } - - // Show a dialog - openDialog(aDialogType: string, aPrescription?: Prescriptions, aText?: string): void { - const dialogRef = this.dialog.open(ProfessionalDialogComponent, { - width: '400px', - data: {dialogType: aDialogType, prescription: aPrescription, text: aText } - }); - - dialogRef.afterClosed().subscribe(result => { - console.log('The dialog was closed'); - }); - } - - get professional(): AbstractControl{ - return this.professionalForm.get('professional'); - } - - get date(): AbstractControl{ - return this.professionalForm.get('date'); - } - - get suppliesForm(): FormArray{ - return this.professionalForm.get('supplies') as FormArray; - } - - get patientDni(): AbstractControl { - const patient = this.professionalForm.get('patient'); - return patient.get('dni'); - } - - get patientLastName(): AbstractControl{ - const patient = this.professionalForm.get('patient'); - return patient.get('lastName'); - } - - get patientFirstName(): AbstractControl{ - const patient = this.professionalForm.get('patient'); - return patient.get('firstName'); - } - - get patientSex(): AbstractControl{ - const patient = this.professionalForm.get('patient'); - return patient.get('sex'); - } - - displayFn(supply: Supplies): string { - return supply && supply.name ? supply.name : ''; - } - - addSupply() { - if(this.suppliesForm.length < 2){ - const supplies = this.fBuilder.group({ - supply: [''], - quantity: [''] - }); - this.suppliesForm.push(supplies); - } - } - - deleteSupply(i) { - this.suppliesForm.removeAt(i); - } - - // set form with prescriptions values and disabled npt editable fields - editPrescription(e){ - this.professionalForm.reset({ - _id: e._id, - date: e.date, - diagnostic: e.diagnostic, - observation: e.observation, - patient: { - dni: {value: e.patient.dni, disabled: true}, - sex: {value: e.patient.sex, disabled: true}, - lastName: {value: e.patient.lastName, disabled: true}, - firstName: {value: e.patient.firstName, disabled: true} - }, - supplies: e.supplies - }); - this.isEdit = true; - this.isFormShown = true; - } - - // reset the form as intial values - clearForm(professionalNgForm: FormGroupDirective){ - professionalNgForm.resetForm(); - this.professionalForm.reset({ - _id: '', - professional: this.professionalData, - date: this.today, - patient: { - dni: {value: '', disabled: false}, - sex: {value: '', disabled: false}, - lastName: {value: '', disabled: false}, - firstName: {value: '', disabled: false} - }, - }); - this.isEdit = false; - } - - showForm(): void{ - this.isFormShown = true; - } - - showList(): void{ - this.isFormShown = false; - } + + dialogRef.afterClosed().subscribe(result => { + // console.log('The dialog was closed'); + }); + } + + get professional(): AbstractControl { + return this.professionalForm.get('professional'); + } + + get date(): AbstractControl { + return this.professionalForm.get('date'); + } + + get suppliesForm(): FormArray { + return this.professionalForm.get('supplies') as FormArray; + } + + get patientDni(): AbstractControl { + const patient = this.professionalForm.get('patient'); + return patient.get('dni'); + } + + get patientLastName(): AbstractControl { + const patient = this.professionalForm.get('patient'); + return patient.get('lastName'); + } + + get patientFirstName(): AbstractControl { + const patient = this.professionalForm.get('patient'); + return patient.get('firstName'); + } + + get patientFechaNac(): AbstractControl { + const patient = this.professionalForm.get('patient'); + return patient.get('fechaNac'); + } + + get patientSex(): AbstractControl { + const patient = this.professionalForm.get('patient'); + return patient.get('sex'); + } + + get patientOtraOS(): AbstractControl { + const patient = this.professionalForm.get('patient'); + return patient.get('otraOS'); + } + + displayOs(os: any): string { + return os && os.nombre ? os.nombre : ''; + } + + displayFn(supply): string { + return supply ? supply : ''; + } + + onSupplySelected(supply, index: number) { + const control = this.suppliesForm.at(index); // Obtiene el FormGroup en la posición del array + const supplyControl = control.get('supply'); + + // Actualiza el valor del 'supply' con el 'term' en el 'name' + supplyControl.get('name').setValue(supply.term); // Actualiza solo el 'term' en 'name' + + // También actualizamos el 'snomedConcept' completo con todos los campos + supplyControl.setValue({ + name: supply.term, // Solo el 'term' va en 'name' + snomedConcept: { + term: supply.term, + fsn: supply.fsn, + conceptId: supply.conceptId, + semanticTag: supply.semanticTag + } + }); + + supplyControl.get('name').updateValueAndValidity(); + } + + addSupply() { + const supplies = this.fBuilder.group({ + supply: this.fBuilder.group({ + name: ['', [ + Validators.required, + medicationSelectedValidator() + ]], + snomedConcept: + this.fBuilder.group({ + term: [''], + fsn: [''], + conceptId: [''], + semanticTag: [''] + }), + }), + quantity: ['', [ + Validators.required, + Validators.min(1) + ]], + quantityPresentation: ['', [ + Validators.required, + Validators.min(1) + ]], + diagnostic: ['', [Validators.required, noWhitespaceValidator()]], + indication: [''], + duplicate: [false], + trimestral: [false], + triplicate: [false], + triplicateData: this.fBuilder.group({ + serie: ['', [Validators.required, Validators.maxLength(1), Validators.pattern('^[a-zA-Z]$')]], + numero: ['', Validators.required] + }), + }); + + const triplicateDataGroup = supplies.get('triplicateData') as FormGroup; + triplicateDataGroup.get('serie')?.disable(); + triplicateDataGroup.get('numero')?.disable(); + + this.suppliesForm.push(supplies); + this.supplySpinner.push({ show: false }); + this.subscribeToSupplyChanges(supplies, this.suppliesForm.length - 1); + this.subscribeToTriplicateChanges(supplies, this.suppliesForm.length - 1); + this.subscribeToDuplicateChanges(supplies, this.suppliesForm.length - 1); + } + + subscribeToSupplyChanges(control: FormGroup, index: number) { + control.get('supply.name').valueChanges.pipe( + debounceTime(300), + distinctUntilChanged() + ).subscribe((supply: string) => { + if (typeof supply === 'string') { + const snomedConcept = control.get('supply.snomedConcept'); + const currentConceptId = snomedConcept?.get('conceptId')?.value; + + if (currentConceptId && supply !== snomedConcept?.get('term')?.value) { + snomedConcept.reset(); + control.get('supply.name').updateValueAndValidity(); + } + + if (supply.length > 3) { + this.supplySpinner[index] = { show: true }; + this.snomedSuppliesService.get(supply).pipe( + catchError(() => { + this.supplySpinner[index] = { show: false }; + return of([]); + }) + ).subscribe((res) => { + this.supplySpinner[index] = { show: false }; + this.filteredSupplies = [...res]; + }); + } + } + }); + } + + subscribeToTriplicateChanges(control: FormGroup, index: number) { + const triplicateControl = control.get('triplicate'); + const triplicateDataGroup = control.get('triplicateData') as FormGroup; + const serieControl = triplicateDataGroup?.get('serie'); + const numeroControl = triplicateDataGroup?.get('numero'); + + if (triplicateControl && serieControl && numeroControl) { + if (triplicateControl.value) { + serieControl.enable(); + numeroControl.enable(); + } else { + serieControl.disable(); + numeroControl.disable(); + serieControl.reset(); + numeroControl.reset(); + } + + triplicateControl.valueChanges.subscribe(isChecked => { + if (isChecked) { + serieControl.enable(); + numeroControl.enable(); + control.get('duplicate')?.setValue(false); + this.professionalForm.get('trimestral')?.setValue(false); + } else { + serieControl.disable(); + numeroControl.disable(); + serieControl.reset(); + numeroControl.reset(); + } + }); + } + } + + subscribeToDuplicateChanges(control: FormGroup, index: number) { + const duplicateControl = control.get('duplicate'); + const triplicateControl = control.get('triplicate'); + + if (duplicateControl && triplicateControl) { + duplicateControl.valueChanges.subscribe(isChecked => { + if (isChecked) { + triplicateControl.setValue(false); + } + }); + } + } + + deleteSupply(index: number) { + this.suppliesForm.removeAt(index); + this.supplySpinner.splice(index, 1); + } + + // set form with prescriptions values and disabled npt editable fields + editPrescription(e) { + this.professionalForm.reset({ + _id: e._id, + date: e.date, + diagnostic: e.diagnostic, + observation: e.observation, + patient: { + dni: { value: e.patient.dni, disabled: true }, + sex: { value: e.patient.sex, disabled: true }, + lastName: { value: e.patient.lastName, disabled: true }, + firstName: { value: e.patient.firstName, disabled: true }, + fechaNac: { value: e.patient.fechaNac, disabled: true } + }, + supplies: e.supplies + }); + this.isEdit = true; + this.isFormShown = true; + } + + // reset the form as intial values + clearForm(professionalNgForm: FormGroupDirective) { + professionalNgForm.resetForm(); + const currentAmbito = this.ambitoService.getAmbito(); + this.patientSearch = []; + this.showFechaNac = currentAmbito === 'publico'; + this.professionalForm.reset({ + _id: '', + professional: this.professionalData, + date: this.today, + patient: { + dni: { value: '', disabled: false }, + sex: { value: '', disabled: false }, + lastName: { value: '', disabled: false }, + firstName: { value: '', disabled: false }, + fechaNac: { value: '', disabled: false }, + otraOS: { value: false, disabled: true }, + os: { + nombre: '', + codigoPuco: '', + numeroAfiliado: { value: '', disabled: true } + } + }, + ambito: currentAmbito + }); + // Actualizar las validaciones después de resetear el formulario + this.updateFechaNacValidators(); + } + + anulateCertificate() { + this.isCertificateShown = false; + this.isFormShown = false; + this.certificateService.setCertificate(null); + this.selectType = 'certificados'; + } + + onCertificateCreated() { + // Set the selected type to 'certificados' in the prescriptions list component + if (this.prescriptionsList) { + this.prescriptionsList.selectedType = 'certificados'; + this.prescriptionsList.onSelectedTypeChange(); + } + } + + showForm(): void { + this.isFormShown = true; + this.isCertificateShown = false; + this.currentTab = 'form'; + } + + showList(): void { + this.isFormShown = false; + this.isListShown = false; + this.currentTab = 'list'; + } + + showCertificados(): void { + this.isFormShown = false; + this.isCertificateShown = true; + this.currentTab = 'certificates'; + } + + showPractices(): void { + this.isFormShown = false; + this.currentTab = 'practices'; + } + isAmbitoPublico(): boolean { + return this.ambito === 'publico'; + } } diff --git a/src/app/professionals/components/selector-ambito/selector-ambito.component.html b/src/app/professionals/components/selector-ambito/selector-ambito.component.html new file mode 100644 index 00000000..0fde4050 --- /dev/null +++ b/src/app/professionals/components/selector-ambito/selector-ambito.component.html @@ -0,0 +1,24 @@ +
+ + + Selecciona el ámbito + Selecciona el ámbito de tu actividad profesional + + +
+ + +
+
+
+
\ No newline at end of file diff --git a/src/app/professionals/components/selector-ambito/selector-ambito.component.sass b/src/app/professionals/components/selector-ambito/selector-ambito.component.sass new file mode 100644 index 00000000..b09da913 --- /dev/null +++ b/src/app/professionals/components/selector-ambito/selector-ambito.component.sass @@ -0,0 +1,60 @@ +@import 'styles/_variables' + +:host + display: block + width: 100% + height: 100% + +.selector-ambito + display: flex + justify-content: center + align-items: center + + @media (min-width: $x-small-devices) and (max-width: $small-devices) + max-width: 100vw + position: relative + overflow: hidden + +.selector-ambito-card + background: #fff + border-radius: 12px + box-shadow: 0 2px 8px rgba(0,0,0,0.08) + padding: 2rem + max-width: 400px + margin: 2rem auto + text-align: center + +mat-card + display: flex + flex-direction: column + align-items: center + justify-content: center + min-width: 350px + min-height: 150px + +mat-card-content + display: flex + flex-direction: column + align-items: center + justify-content: center + +.ambito-buttons + display: flex + flex-direction: row + justify-content: center + align-items: center + gap: 1rem + margin-top: 1.5rem + padding: 0.5rem 0 // Espacio arriba y abajo, puedes ajustar + + button + padding: 0.75rem 2rem + border: none + border-radius: 6px + cursor: pointer + font-size: 1rem + transition: background 0.2s + + &.selected + background: #1976d2 + color: #fff diff --git a/src/app/professionals/components/selector-ambito/selector-ambito.component.ts b/src/app/professionals/components/selector-ambito/selector-ambito.component.ts new file mode 100644 index 00000000..b046a6ad --- /dev/null +++ b/src/app/professionals/components/selector-ambito/selector-ambito.component.ts @@ -0,0 +1,28 @@ +import { Component, OnInit } from "@angular/core"; +import { Router } from "@angular/router"; +import { AmbitoService } from "@auth/services/ambito.service"; + + +@Component({ + selector: 'app-selector-ambito', + templateUrl: './selector-ambito.component.html', + styleUrls: ['./selector-ambito.component.sass'] +}) +export class SelectorAmbitoComponent implements OnInit { + ambito: 'publico' | 'privado'; + + constructor( + private ambitoService: AmbitoService, + private router: Router, + ) { } + + ngOnInit(): void { + this.ambitoService.clearAmbito(); + } + + seleccionarAmbito(ambito: 'publico' | 'privado') { + this.ambito = ambito; + this.ambitoService.setAmbito(ambito); + this.router.navigate(['/profesionales/recetas/nueva']); + } +} \ No newline at end of file diff --git a/src/app/professionals/components/supply-dialog/supply-dialog.component.html b/src/app/professionals/components/supply-dialog/supply-dialog.component.html new file mode 100644 index 00000000..63a0b695 --- /dev/null +++ b/src/app/professionals/components/supply-dialog/supply-dialog.component.html @@ -0,0 +1,33 @@ +
+ +
+

check Creada

+
+

El producto se ha creado correctamente!

+
+
+ +
+
+ +
+

check Modificado

+
+

El producto se ha modificado correctamente!

+
+
+ +
+
+ +
+

error Error

+
+

{{data.text}}

+
+
+ +
+
+
\ No newline at end of file diff --git a/src/app/professionals/components/supply-dialog/supply-dialog.component.sass b/src/app/professionals/components/supply-dialog/supply-dialog.component.sass new file mode 100644 index 00000000..e69de29b diff --git a/src/app/professionals/components/supply-dialog/supply-dialog.component.ts b/src/app/professionals/components/supply-dialog/supply-dialog.component.ts new file mode 100644 index 00000000..ca1215d4 --- /dev/null +++ b/src/app/professionals/components/supply-dialog/supply-dialog.component.ts @@ -0,0 +1,32 @@ +import { Component, OnInit, Inject, } from '@angular/core'; +import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog'; +import { fadeInOnEnterAnimation, fadeOutOnLeaveAnimation } from 'angular-animations'; +// import { InteractionService } from "@professionals/interaction.service"; + +@Component({ + selector: 'app-supply-dialog', + templateUrl: './supply-dialog.component.html', + styleUrls: ['./supply-dialog.component.sass'], + animations: [ + fadeInOnEnterAnimation(), + fadeOutOnLeaveAnimation() + ], +}) +export class SupplyDialogComponent implements OnInit { + + constructor( + public dialogRef: MatDialogRef, + @Inject(MAT_DIALOG_DATA) public data: DialogData) {} + + ngOnInit(): void { + } + + onNoClick(): void { + this.dialogRef.close(); + } +} + +export interface DialogData { + dialogType: string; + text: string; +} \ No newline at end of file diff --git a/src/app/professionals/components/supply-list/supply-list.component.html b/src/app/professionals/components/supply-list/supply-list.component.html new file mode 100644 index 00000000..d77cf7f1 --- /dev/null +++ b/src/app/professionals/components/supply-list/supply-list.component.html @@ -0,0 +1,47 @@ + + +

Productos

+
+ + + + + + +
+
+ + + + + + + + + + + + + + + + + +
Nombre {{ element.name.toUpperCase() }} Acción + +
+
+
+ +
+ +
+ + +
+
diff --git a/src/app/professionals/components/supply-list/supply-list.component.sass b/src/app/professionals/components/supply-list/supply-list.component.sass new file mode 100644 index 00000000..f1c1579a --- /dev/null +++ b/src/app/professionals/components/supply-list/supply-list.component.sass @@ -0,0 +1,215 @@ +@import 'styles/_variables' + +mat-card-content + .loading-prescriptions + padding: 30px + +table + width: 100% + + tr.detail-row + height: 0 + + + tr.element-row:not(.expanded-row):hover + background: whitesmoke + + + tr.element-row:not(.expanded-row):active + background: #efefef + + .title-cell + width: 250px + + .element-row td + border-bottom-width: 0 + + + .element-detail + overflow: hidden + padding: 0px 5px + border-left: 1px solid #ccc + + .element-diagram + padding: 8px + font-weight: lighter + + .supplies-list + margin: 5px 0px + .supply-description + display: flex + border-bottom: 1px solid #ccc + justify-content: space-between + align-items: center + padding-bottom: 2px + margin-top: 5px + + span + margin-right: 20px + mat-chip + padding: 5px + width: 20px + border-radius: 50% + text-align: center + + .element-description + margin: 5px 0px + .description-title + font-weight: bold + + + + + .mat-row + &:hover + background-color: #e9f3ff + th.mat-column-supply_count, td.mat-column-supply_count, td.mat-column-arrow + text-align: center + th.mat-column-action + text-align: center + td.mat-column-arrow + width: 45px + button + width: auto + padding: 0px 5px + margin-right: 0px + mat-icon + padding: 0px + margin-right: 0px + td.mat-column-action + width: 100px + padding-right: 8px !important + button + width: auto + padding: 0px 5px + mat-icon + padding: 0px 5px + margin-right: 0px + color: #3e3e3e!important + + + .menu-collapse + display: none + + .mat-icon + color: #3e75ff + + + // @media (min-width: $x-small-devices) and (max-width: $small-devices) + +.mat-form-field + font-size: 14px + width: 100% + + +.mat-paginator + margin-top: 24px + +@media (min-width: $x-small-devices) and (max-width: $small-devices) + .mat-elevation-z8 + background: transparent + box-shadow: none + margin: 0px -16px + + .mat-header-row + display: none + + td.mat-column-supply_count + text-align: start!important + td.mat-column-action + .menu-collapse + display: flex!important + position: absolute + top: 0 + right: 10px + width: auto + margin: 0 + height: 44px!important + mat-icon + padding: 0!important + .action-buttons + display: none!important + td.mat-column-arrow + button + position: absolute + top: 0 + right: 44px + height: 44px!important + display: flex + + + tbody + display: block + width: 100% + + + .mat-table + background: transparent + * + box-sizing: border-box + + + .mat-row + display: block + overflow: hidden + height: auto + position: relative + clear: both + // box-shadow: 0 2px 1px -1px rgba(0,0,0,.2), 0 1px 1px 0 rgba(0,0,0,.14), 0 1px 3px 0 rgba(0,0,0,.12) + background-color: #fff + border-radius: 3px + + .mat-row + margin-top: 24px + + .detail-row + box-shadow: 0 2px 1px -1px rgba(0,0,0,.2), 0 1px 1px 0 rgba(0,0,0,.14), 0 1px 3px 0 rgba(0,0,0,.12) + margin-top: 0px!important + td.mat-column-expandedDetail + margin: 0px!important + padding: 0px 10px!important + mat-chip + width: 30px!important + + .mat-cell + display: block + width: 100% + padding: 0 16px + margin: 16px 0 + border: 0 none + &:first-child + padding: 0 48px 0 16px + a + font-size: 20px + // font-weight: 400 + color: inherit + + &:before + display: none + + + &.m-card-sub-title + margin-top: -8px + padding: 0 48px 0 16px + color: rgba(0,0,0,.54) + + + + .has_label_on_mobile + &:before + content: attr(data-label) + display: inline + font-weight: normal + + + + .mat-column-star + width: auto + padding: 8px 0 0 !important + margin: 0 + position: absolute + top: 0 + right: 0 + &:before + display: none + + diff --git a/src/app/professionals/components/supply-list/supply-list.component.ts b/src/app/professionals/components/supply-list/supply-list.component.ts new file mode 100644 index 00000000..9283887e --- /dev/null +++ b/src/app/professionals/components/supply-list/supply-list.component.ts @@ -0,0 +1,116 @@ +import { Component, OnInit, ViewChild, AfterContentInit, Output, EventEmitter} from '@angular/core'; +import {MatTableDataSource} from '@angular/material/table'; +import {MatPaginator} from '@angular/material/paginator'; +import {MatSort} from '@angular/material/sort'; +import { SuppliesService } from '@services/supplies.service'; +import { AuthService } from '@auth/services/auth.service'; +import { ProfessionalDialogComponent } from '@professionals/components/professional-dialog/professional-dialog.component'; +import { MatDialog } from '@angular/material/dialog'; +import { rowsAnimation, detailExpand, arrowDirection } from '@animations/animations.template'; + + + +@Component({ + selector: 'app-supply-list', + templateUrl: './supply-list.component.html', + styleUrls: ['./supply-list.component.sass'], + animations: [ + rowsAnimation, + detailExpand, + arrowDirection + ], +}) +export class SupplyListComponent implements OnInit, AfterContentInit { + @Output() editSupplyEvent = new EventEmitter(); + + // displayedColumns: string[] = ['patient', 'prescription_date', 'status', 'supply_count', 'action', 'arrow']; + displayedColumns: string[] = ['name', 'action']; + dataSource = new MatTableDataSource([]); + expandedElement: any | null; + loadingPrescriptions: boolean; + supplyName: string; + + @ViewChild(MatPaginator, {static: true}) paginator: MatPaginator; + @ViewChild(MatSort, {static: true}) sort: MatSort; + + constructor( + private supplyService: SuppliesService, + private authService: AuthService, + public dialog: MatDialog){} + + + ngOnInit() { + this.loadingPrescriptions = true; + this.searchSupplies(); + } + + searchSupplies() { + this.supplyService.get(this.supplyName).subscribe((supply: any[]) => { + this.dataSource = new MatTableDataSource(supply); + + this.dataSource.sort = this.sort; + this.dataSource.paginator = this.paginator; + this.loadingPrescriptions = false; + }); + } + + ngAfterContentInit(){ + this.paginator._intl.itemsPerPageLabel = "Prescripciones por página"; + this.paginator._intl.firstPageLabel = "Primer página"; + this.paginator._intl.lastPageLabel = "Última página"; + this.paginator._intl.nextPageLabel = "Siguiente"; + this.paginator._intl.previousPageLabel = "Anterior"; + this.paginator._intl.getRangeLabel = (page: number, pageSize: number, length: number): string => { + if (length == 0 || pageSize == 0) + { + return `0 de ${length}`; + } + length = Math.max(length, 0); + const startIndex = page * pageSize; + const endIndex = startIndex < length ? Math.min(startIndex + pageSize, length) : startIndex + pageSize; + return `${startIndex + 1} – ${endIndex} de ${length}`; + } + } + + + applyFilter(filterValue: string) { + this.supplyName = filterValue; + this.searchSupplies(); + } + + canPrint(prescription: any): boolean{ + return (prescription.professional.userId === this.authService.getLoggedUserId()) && prescription.status !== 'Vencida'; + } + + canEdit(prescription: any): boolean{ + return prescription.status === "Pendiente"; + } + + canDelete(prescription: any): boolean{ + return (prescription.professional.userId === this.authService.getLoggedUserId() && prescription.status === "Pendiente"); + } + + editSupply(supply: any){ + this.editSupplyEvent.emit(supply); + } + + isStatus(prescritpion: any, status: string): boolean{ + return prescritpion.status === status; + } + + deleteDialogPrescription(prescription: any){ + this.openDialog("delete", prescription); + } + + // Show a dialog + private openDialog(aDialogType: string, aPrescription?: any, aText?: string): void { + const dialogRef = this.dialog.open(ProfessionalDialogComponent, { + width: '400px', + data: {dialogType: aDialogType, prescription: aPrescription, text: aText } + }); + + dialogRef.afterClosed().subscribe(result => { + console.log('The dialog was closed'); + }); + } +} diff --git a/src/app/professionals/interaction.service.ts b/src/app/professionals/interaction.service.ts index 30d72b32..aa14343e 100644 --- a/src/app/professionals/interaction.service.ts +++ b/src/app/professionals/interaction.service.ts @@ -1,16 +1,32 @@ import { Injectable } from '@angular/core'; -import { Subject } from 'rxjs'; +import { Subject, Observable } from 'rxjs'; import { Prescriptions } from '@interfaces/prescriptions'; +import { Certificate } from '@interfaces/certificate'; +import { PrescriptionsService } from '@services/prescriptions.service'; @Injectable({ - providedIn: 'root' + providedIn: 'root' }) export class InteractionService { - private _deletePrescriptionSource = new Subject(); - deletePrescription$ = this._deletePrescriptionSource.asObservable(); - constructor() { } + private _deletePrescriptionSource = new Subject(); + private _deleteCertificateSource = new Subject(); - deletePrescription(prescription: Prescriptions){ - this._deletePrescriptionSource.next(prescription); - } + deletePrescription$ = this._deletePrescriptionSource.asObservable(); + deleteCertificate$ = this._deleteCertificateSource.asObservable(); + + constructor(private prescriptionsService: PrescriptionsService) { } + + deletePrescription(prescription: Prescriptions): Observable { + // Eliminar la prescripción mediante el servicio + return this.prescriptionsService.deletePrescription(prescription._id); + } + + // Método para emitir el evento después de la eliminación exitosa + emitPrescriptionDeleted(prescription: Prescriptions) { + this._deletePrescriptionSource.next(prescription); + } + + anulateCertificate(certificate: Certificate) { + this._deleteCertificateSource.next(certificate); + } } diff --git a/src/app/professionals/professionals-routing.module.ts b/src/app/professionals/professionals-routing.module.ts index 27544be1..d1dd212a 100644 --- a/src/app/professionals/professionals-routing.module.ts +++ b/src/app/professionals/professionals-routing.module.ts @@ -3,10 +3,13 @@ import { Routes, RouterModule } from '@angular/router'; import { AuthGuard } from '@auth/guards/auth.guard'; // components import { ProfessionalsComponent } from '@professionals/professionals.component'; +import { SupplyComponent } from '@professionals/supply.component'; import { ProfessionalFormComponent } from '@professionals/components/professional-form/professional-form.component'; import { RoleProfessionalGuard } from '@auth/guards/role-professional.guard'; import { ProfessionalDialogComponent } from '@professionals/components/professional-dialog/professional-dialog.component'; import { PrescriptionPrinterComponent } from "@professionals/components/prescription-printer/prescription-printer.component"; +import { SupplyDialogComponent } from './components/supply-dialog/supply-dialog.component'; +import { SelectorAmbitoComponent } from './components/selector-ambito/selector-ambito.component'; const routes: Routes = [ { @@ -17,6 +20,14 @@ const routes: Routes = [ { path: 'recetas/nueva', component: ProfessionalFormComponent + }, + { + path: 'productos', + component: SupplyComponent + }, + { + path: 'seleccionador-ambito', + component: SelectorAmbitoComponent } ] } @@ -32,5 +43,7 @@ export const routingComponents = [ ProfessionalsComponent, ProfessionalFormComponent, ProfessionalDialogComponent, - PrescriptionPrinterComponent + SupplyDialogComponent, + PrescriptionPrinterComponent, + SupplyComponent ] diff --git a/src/app/professionals/professionals.component.spec.ts b/src/app/professionals/professionals.component.spec.ts index 6b0b9c5c..33e424d1 100644 --- a/src/app/professionals/professionals.component.spec.ts +++ b/src/app/professionals/professionals.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { ProfessionalsComponent } from './professionals.component'; @@ -6,7 +6,7 @@ describe('ProfessionalsComponent', () => { let component: ProfessionalsComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ ProfessionalsComponent ] }) diff --git a/src/app/professionals/professionals.module.ts b/src/app/professionals/professionals.module.ts index b7a24e3f..69c8e0b3 100644 --- a/src/app/professionals/professionals.module.ts +++ b/src/app/professionals/professionals.module.ts @@ -4,7 +4,7 @@ import { CommonModule } from '@angular/common'; import { ProfessionalsRoutingModule, routingComponents } from './professionals-routing.module'; import { BrowserModule } from '@angular/platform-browser'; import { HttpClientModule } from '@angular/common/http'; -import { ReactiveFormsModule } from '@angular/forms'; +import { ReactiveFormsModule, FormsModule } from '@angular/forms'; // flex-layout import { FlexLayoutModule } from '@angular/flex-layout'; // material @@ -21,22 +21,36 @@ import { MatIconModule } from '@angular/material/icon'; import { MatProgressSpinnerModule } from '@angular/material/progress-spinner'; import { MatTableModule } from '@angular/material/table'; import { MatChipsModule } from '@angular/material/chips'; -import {MatPaginatorModule} from '@angular/material/paginator'; -import {MatSortModule} from '@angular/material/sort'; +import { MatPaginatorModule } from '@angular/material/paginator'; +import { MatSortModule } from '@angular/material/sort'; import { MatTooltipModule } from '@angular/material/tooltip'; +import { MatCheckboxModule } from '@angular/material/checkbox'; + +import { PharmacistsModule } from '@pharmacists/pharmacists.module'; import { PrescriptionsListComponent } from './components/prescriptions-list/prescriptions-list.component'; +import { CertificateFormComponent } from './components/certificate-form/certificate-form.component'; +import { SupplyListComponent } from './components/supply-list/supply-list.component'; +import { PracticesFormComponent } from './components/practices-form/practices-form.component'; +import { CertificatePracticePrinterComponent } from './components/certificate-practice-printer/certificate-practice-printer.component'; +import { SelectorAmbitoComponent } from './components/selector-ambito/selector-ambito.component'; @NgModule({ declarations: [ routingComponents, PrescriptionsListComponent, + SupplyListComponent, + PracticesFormComponent, + CertificateFormComponent, + CertificatePracticePrinterComponent, + SelectorAmbitoComponent, ], imports: [ CommonModule, BrowserModule, HttpClientModule, ReactiveFormsModule, + FormsModule, ProfessionalsRoutingModule, FlexLayoutModule, MatCardModule, @@ -54,7 +68,9 @@ import { PrescriptionsListComponent } from './components/prescriptions-list/pres MatChipsModule, MatPaginatorModule, MatSortModule, - MatTooltipModule + MatTooltipModule, + MatCheckboxModule, + PharmacistsModule ] }) export class ProfessionalsModule { } diff --git a/src/app/professionals/supply.component.html b/src/app/professionals/supply.component.html new file mode 100644 index 00000000..4408553f --- /dev/null +++ b/src/app/professionals/supply.component.html @@ -0,0 +1,169 @@ + + + +
+
+ +
+ +
+ +

+ {{ isEdit ? "edit" : "gesture" }} + {{ isEdit ? "Editar Producto" : "Registrar nuevo producto" }} +

+
+ + +
+
+ +
+ +
+
+ + + Nombre + + + + Debe ingresar principio nombre + + + + + + + Principio activo + + + + Debe ingresar principio activo + + + + + + + + Pharma Form + + + + Debe ingresar valor + + + + + Power + + + + Debe ingresar valor + + + + + Unidad + + + + Debe ingresar unidad + + + + + Primera presentación + + + + Debe ingresar primera presentación + + + + + Segunda presentación + + + +
+ +
+ +
+
+ +
+
+ + + +
+ + +
+
+
+
+
+
+ + +
+ +
+ +
+
\ No newline at end of file diff --git a/src/app/professionals/supply.component.sass b/src/app/professionals/supply.component.sass new file mode 100644 index 00000000..440601e1 --- /dev/null +++ b/src/app/professionals/supply.component.sass @@ -0,0 +1,151 @@ +@import 'styles/_variables' + +:host + display: block + width: 100% + height: 100% + +.custom-tab-link-bar + width: 100% + justify-content: space-between + display: none + @media (min-width: $x-small-devices) and (max-width: $small-devices) + display: flex + button + width: calc(100% / 2) + margin: 0px!important + border-radius: 0px!important + +.link-bar-indicator-container + width: 100% + height: 3px + background-color: #fff + padding-bottom: 10px + position: relative + display: none + @media (min-width: $x-small-devices) and (max-width: $small-devices) + display: block + + .indicator + width: 50% + height: 3px + position: absolute + top: 0 + background-color: #4056b5 + + +.pf-container + @media (min-width: $x-small-devices) and (max-width: $small-devices) + max-width: 100vw + position: relative + overflow: hidden + + +.cards-container + + .prescription-panel + .first-block + mat-form-field + width: 100% + .st-bk-patient, .nd-bk-patient + width: 100% + + @media (min-width: $larger-devices) and (max-width: $xxx-larger-devices) + .prescription-panel + width: 35%!important + .my-prescriptions-panel + width: 65%!important + + @media (min-width: $small-devices) and (max-width: $larger-devices) + flex-direction: column!important + + .prescription-panel + width: 100%!important + margin-bottom: 20px + .first-block + display: flex + mat-form-field + width: calc((100% - 10px) / 5) + margin-right: 10px + .patient-container + width: calc(100% - ((100% - 10px) / 5)) + .st-bk-patient, .nd-bk-patient + display: flex + mat-form-field + width: calc((100% - 20px) / 2) + + .my-prescriptions-panel + width: 100%!important + + @media (min-width: $x-small-devices) and (max-width: $small-devices) + flex-direction: row!important + width: calc((100vw * 2) - (5px * 2) )!important + position: relative + top: 0 + .prescription-panel + // max-width: 100% + max-width: calc((100% / 2) - (10px / 2)) + width: 100% + height: 900px + margin-right: 10px!important + margin-bottom: 20px + background-color: #ffffff + .first-block + display: flex + flex-direction: column + mat-form-field + width: 100% + margin-left: 0px + .patient-container + flex-direction: column!important + width: 100% + .st-bk-patient, .nd-bk-patient + flex-direction: column + width: 100%!important + mat-form-field + width: 100%!important + .my-prescriptions-panel + max-width: calc((100% / 2) - (10px / 2)) + width: 100% + height: 900px + overflow: auto + background-color: #fff + +.mat-form-field, button + margin: 5px 0 + +.patient-container, .nested-supplies + mat-form-field + width: 100% + button[type="button"] + margin: 0 + +.sub-container + width: 100% + +.custom-error-container + position: relative + +.element-row + position: relative + + +.element-row:not(.expanded) + cursor: pointer + + +.element-row:not(.expanded):hover + background: #f5f5f5 + + +.element-row.expanded + border-bottom-color: transparent + +.cdk-column-expandedDetail + border-left-style: solid + border-color:#c9c9ca + border-width: 1px + margin-left: 24px + outline: 1px + outline-offset: -2px + diff --git a/src/app/professionals/supply.component.ts b/src/app/professionals/supply.component.ts new file mode 100644 index 00000000..8db9004e --- /dev/null +++ b/src/app/professionals/supply.component.ts @@ -0,0 +1,180 @@ +import { Component, OnInit } from '@angular/core'; +import { step, stepLink} from '@animations/animations.template'; +import { Observable, BehaviorSubject } from 'rxjs'; +import { FormGroup, FormGroupDirective, FormBuilder, Validators, AbstractControl } from '@angular/forms'; +import { ThemePalette } from '@angular/material/core'; +import { SuppliesService } from '@services/supplies.service'; +import { MatDialog } from '@angular/material/dialog'; +import { SupplyDialogComponent } from './components/supply-dialog/supply-dialog.component'; +import { AuthService } from '@auth/services/auth.service'; +import { Router } from '@angular/router'; + +@Component({ + selector: 'app-productos', + templateUrl: './supply.component.html', + styleUrls: ['./supply.component.sass'], + animations: [ + step, + stepLink + ] +}) +export class SupplyComponent implements OnInit { + constructor( + private fBuilder: FormBuilder, + public dialog: MatDialog, + private authService: AuthService, + private supplyService: SuppliesService, + private router: Router) { + + } + + private mySupplies: BehaviorSubject; + private suppliesArray: any[] = []; + + readonly spinnerColor: ThemePalette = 'primary'; + readonly spinnerDiameter: number = 30; + + supply; + isSubmit; + isFormShown; + isEdit; + supplyForm: FormGroup; + + ngOnInit(): void { + if (!this.authService.isAdminRole()) { + this.router.navigate(['/profesionales/recetas/nueva']); + } + this.initSupplyForm(); + } + + onSubmitSupplyForm(supplyNgForm: FormGroupDirective): void { + if(this.supplyForm.valid){ + const newSupply = this.supplyForm.value.supply; + this.isSubmit = true; + + const subscription = !this.isEdit ? this.supplyService.newSupply(newSupply) : this.supplyService.editSupply(newSupply); + + subscription.subscribe( + success => { + if(success) { + this.isSubmit = false; + this.isEdit = false; + this.openDialog(this.isEdit ? "updated" : "created"); + this.clearForm(supplyNgForm); + } + }); + } + } + + openDialog(aDialogType: string, aPrescription?: any, aText?: string): void { + const dialogRef = this.dialog.open(SupplyDialogComponent, { + width: '400px', + data: {dialogType: aDialogType, prescription: aPrescription, text: aText } + }); + + dialogRef.afterClosed().subscribe(result => { + }); + } + + showForm() { + this.isFormShown = true; + } + + showList() { + this.isFormShown = false; + } + + initSupplyForm(){ + this.supplyForm = this.fBuilder.group({ + supply: this.fBuilder.group({ + _id: [''], + name: ['', [ + Validators.required, + ]], + activePrinciple: ['', [ + Validators.required + ]], + pharmaceutical_form: ['', [ + Validators.required + ]], + power: ['', [ + Validators.required + ]], + unity: ['', [ + Validators.required + ]], + firstPresentation: ['', [ + Validators.required + ]], + secondPresentation: [''] + }) + }); + } + + editSupply(e) { + this.supplyForm.reset({ + supply: e + }); + this.isEdit = true; + this.isFormShown = true; + } + + cleanSupplies(): void{ + this.suppliesArray = []; + this.mySupplies.next(this.suppliesArray); + } + + // reset the form as intial values + clearForm(supplyNgForm: FormGroupDirective){ + supplyNgForm.resetForm(); + this.supplyForm.reset({ + name: '', + activePrinciple: '', + pharmaceutical_form: '', + power: '', + unity: '', + firstPresentation: '', + secondPresentation: '' + }); + this.isEdit = false; + } + + get supplies(): Observable { + return this.mySupplies.asObservable(); + } + + get name(): AbstractControl { + const supply = this.supplyForm.get('supply'); + return supply.get('name'); + } + + get activePrinciple(): AbstractControl { + const supply = this.supplyForm.get('supply'); + return supply.get('activePrinciple'); + } + + get pharmaceutical_form(): AbstractControl { + const supply = this.supplyForm.get('supply'); + return supply.get('pharmaceutical_form'); + } + + get power(): AbstractControl { + const supply = this.supplyForm.get('supply'); + return supply.get('power'); + } + + get unity(): AbstractControl { + const supply = this.supplyForm.get('supply'); + return supply.get('unity'); + } + + get firstPresentation(): AbstractControl { + const supply = this.supplyForm.get('supply'); + return supply.get('firstPresentation'); + } + + get secondPresentation(): AbstractControl { + const supply = this.supplyForm.get('supply'); + return supply.get('secondPresentation'); + } +} diff --git a/src/app/services/andesPrescription.service.ts b/src/app/services/andesPrescription.service.ts new file mode 100644 index 00000000..78c7a7d0 --- /dev/null +++ b/src/app/services/andesPrescription.service.ts @@ -0,0 +1,131 @@ +import { Injectable } from '@angular/core'; +import { environment } from '../../environments/environment'; +import { HttpClient, HttpParams } from '@angular/common/http'; +import { Observable, BehaviorSubject } from 'rxjs'; +import AndesPrescriptions from "../interfaces/andesPrescriptions"; +import { tap, mapTo, map } from 'rxjs/operators'; +import { saveAs } from 'file-saver'; +import * as moment from 'moment'; + +@Injectable({ + providedIn: 'root' +}) +export class AndesPrescriptionsService { + + private myAndesPrescriptions: BehaviorSubject; + private andesPrescriptionsArray: AndesPrescriptions[] = []; + + constructor(private http: HttpClient) { + this.myAndesPrescriptions = new BehaviorSubject(this.andesPrescriptionsArray); + } + + getPrescriptionsFromAndes(params: { patient_dni: string, patient_sex: string }): Observable { + return this.http.get(`${environment.API_END_POINT}/andes-prescriptions/from-andes/?dni=${params.patient_dni}&sexo=${params.patient_sex}`).pipe( + tap((prescriptions: AndesPrescriptions[]) => this.setPrescriptions(prescriptions)), + map((prescriptions: AndesPrescriptions[]) => prescriptions.length > 0) + ); + } + + getPrescriptions(params): Observable { + return this.http.get(`${environment.API_END_POINT}/andes-prescriptions/`, { params }).pipe( + tap((prescriptions: AndesPrescriptions[]) => this.setPrescriptions(prescriptions)), + map((prescriptions: AndesPrescriptions[]) => prescriptions.length > 0) + ); + } + + getById(id: string): Observable { + return this.http.get(`${environment.API_END_POINT}/prescriptions/${id}`); + } + + dispense(prescription: AndesPrescriptions, pharmacistId: string): Observable { + const params = { 'prescription': prescription, 'pharmacistId': pharmacistId }; + return this.http.patch(`${environment.API_END_POINT}/andes-prescriptions/dispense`, params).pipe( + tap((updatedPrescription: AndesPrescriptions) => this.updatePrescription(updatedPrescription)), + mapTo(true) + ); + } + + cancelDispense(prescriptionId: string, pharmacistId: string): Observable { + const params = { 'prescriptionId': prescriptionId, 'pharmacistId': pharmacistId }; + return this.http.patch(`${environment.API_END_POINT}/andes-prescriptions/cancel-dispense`, params).pipe( + tap((updatedPrescription: AndesPrescriptions) => this.updatePrescription(updatedPrescription)), + mapTo(true) + ); + } + + suspendPrescription(recetaId: string, profesionalId: string): Observable { + const params = { 'recetaId': recetaId, 'profesionalId': profesionalId }; + return this.http.patch(`${environment.API_END_POINT}/andes-prescriptions/suspend`, params).pipe( + tap((updatedPrescription: AndesPrescriptions) => this.updatePrescription(updatedPrescription)), + mapTo(true) + ); + } + + getFromDniAndDate(params: { patient_dni: string, dateFilter: string }): Observable { + return this.http.get(`${environment.API_END_POINT}/prescriptions/find/${params.patient_dni}&${params.dateFilter}`).pipe( + tap((prescriptions: AndesPrescriptions[]) => this.setPrescriptions(prescriptions)), + map((prescriptions: AndesPrescriptions[]) => prescriptions.length > 0) + ); + } + + getByUserId(userId: string): Observable { + return this.http.get(`${environment.API_END_POINT}/prescriptions/get-by-user-id/${userId}`).pipe( + tap((prescriptions: AndesPrescriptions[]) => this.setPrescriptions(prescriptions)), + mapTo(true) + ); + } + + newPrescription(prescription: AndesPrescriptions): Observable { + return this.http.post(`${environment.API_END_POINT}/prescriptions`, prescription).pipe( + tap((newPrescriptions: AndesPrescriptions[]) => this.addPrescription(newPrescriptions)), + mapTo(true) + ); + } + + editPrescription(prescription: AndesPrescriptions): Observable { + return this.http.patch(`${environment.API_END_POINT}/prescriptions/${prescription.idAndes}`, prescription).pipe( + tap((updatedPrescription: AndesPrescriptions) => this.updatePrescription(updatedPrescription)), + mapTo(true) + ); + } + + deletePrescription(prescriptionId: string): Observable { + return this.http.delete(`${environment.API_END_POINT}/prescriptions/${prescriptionId}`).pipe( + tap(() => this.removePrescription(prescriptionId)), + mapTo(true) + ); + } + + cleanPrescriptions(): void { + this.andesPrescriptionsArray = []; + this.myAndesPrescriptions.next(this.andesPrescriptionsArray); + } + + private setPrescriptions(prescriptions: AndesPrescriptions[]) { + this.andesPrescriptionsArray = prescriptions; + this.myAndesPrescriptions.next(prescriptions); + } + + + private addPrescription(prescriptions: AndesPrescriptions[]) { + this.andesPrescriptionsArray.unshift(...prescriptions); + this.myAndesPrescriptions.next(this.andesPrescriptionsArray); + } + + private removePrescription(removedPrescription: string) { + const removeIndex = this.andesPrescriptionsArray.findIndex((prescription: AndesPrescriptions) => prescription._id === removedPrescription); + + this.andesPrescriptionsArray.splice(removeIndex, 1); + this.myAndesPrescriptions.next(this.andesPrescriptionsArray); + } + + private updatePrescription(updatedPrescription: AndesPrescriptions) { + const updateIndex = this.andesPrescriptionsArray.findIndex((prescription: AndesPrescriptions) => prescription._id === updatedPrescription._id); + this.andesPrescriptionsArray.splice(updateIndex, 1, updatedPrescription); + this.myAndesPrescriptions.next(this.andesPrescriptionsArray); + } + + get prescriptions(): Observable { + return this.myAndesPrescriptions.asObservable(); + } +} diff --git a/src/app/services/barcode.service.ts b/src/app/services/barcode.service.ts new file mode 100644 index 00000000..eefa319e --- /dev/null +++ b/src/app/services/barcode.service.ts @@ -0,0 +1,54 @@ +import { Injectable } from "@angular/core"; +import * as JsBarcode from 'jsbarcode'; + + +@Injectable({ + providedIn: "root" +}) + +export class BarcodeService { + constructor() {} + + /** + * Genera un código de barras CODE128 y lo muestra en un elemento HTML + * @param element El elemento HTML donde se mostrará el código de barras + * @param value El valor a codificar + */ + generateBarcode(element: HTMLCanvasElement | HTMLImageElement | SVGElement, value: string): void { + JsBarcode(element, value, { + format: "CODE128", + lineColor: "#000", + width: 2, + height: 80, + displayValue: true, + fontSize: 16 + }); + } + + /** + * Genera un código de barras CODE128 y lo devuelve como imagen base64 + * @param value El valor a codificar + * @returns Promise con la imagen en base64 + */ + generateBarcodeBase64(value: string): Promise { + return new Promise((resolve, reject) => { + // Crear un canvas en memoria + const canvas = document.createElement('canvas'); + + try { + JsBarcode(canvas, value, { + format: 'CODE128', + lineColor: '#000000', + width: 2, + height: 80, + displayValue: true, + }); + + const base64 = canvas.toDataURL('image/png'); + resolve(base64); + } catch (error) { + reject(error); + } + }); + } +} \ No newline at end of file diff --git a/src/app/services/certificates.service.ts b/src/app/services/certificates.service.ts new file mode 100644 index 00000000..b19e75aa --- /dev/null +++ b/src/app/services/certificates.service.ts @@ -0,0 +1,193 @@ +import { HttpClient } from '@angular/common/http'; +import { Injectable } from '@angular/core'; +import { Certificate } from '@interfaces/certificate'; +import * as CryptoJS from 'crypto-js'; +import { BehaviorSubject, Observable, of } from 'rxjs'; +import { map, mapTo, tap } from 'rxjs/operators'; +import { environment } from '../../environments/environment'; + +@Injectable({ + providedIn: 'root' +}) +export class CertificatesService { + + private myCertificates: BehaviorSubject; + private certificatesArray: Certificate[] = []; + private editCertificateSubject = new BehaviorSubject(false); + editCertificate$ = this.editCertificateSubject.asObservable(); + private showCertificateSubject = new BehaviorSubject(false); + showCertificate$ = this.showCertificateSubject.asObservable(); + private certificateSubject = new BehaviorSubject(null); + certificate$ = this.certificateSubject.asObservable(); + private secretKey = environment.CERTIFICATE_SECRET_KEY; + private searchTimeout: any = null; + private searchSubscription: any = null; + + constructor(private http: HttpClient) { + this.myCertificates = new BehaviorSubject(this.certificatesArray); + } + + + + setCertificate(value: Certificate) { + this.certificateSubject.next(value); + } + + getCertificate(): Certificate { + return this.certificateSubject.getValue(); + } + + newCertificate(certificate: Certificate): Observable { + return this.http.post(`${environment.API_END_POINT}/certificates`, certificate).pipe( + mapTo(true) + ); + } + + getByUserId(userId: string, params?: { offset?: number; limit?: number }): Observable<{ certificates: Certificate[]; total: number; offset: number; limit: number }> { + const queryParams = params || {}; + return this.http.get<{ certificates: Certificate[]; total: number; offset: number; limit: number }>(`${environment.API_END_POINT}/certificates/user/${userId}`, { params: queryParams }).pipe( + tap((response) => this.setCertificates(response.certificates)), + ); + } + + get certificates(): Observable { + return this.myCertificates.asObservable(); + } + + anulateCertificate(certificate: Certificate): Observable { + return this.http.patch(`${environment.API_END_POINT}/certificates/${certificate._id}`, certificate).pipe( + mapTo(true) + ); + } + + searchByTerm(userId: string, params?: { searchTerm?: string; offset?: number; limit?: number }): Observable<{ certificates: Certificate[]; total: number; offset: number; limit: number }> { + const queryParams = params || {}; + const searchTerm = queryParams.searchTerm || ''; + + // Si hay menos de 3 caracteres, retornar los certificados actuales sin hacer búsqueda + if (searchTerm && searchTerm.length < 3) { + return of({ + certificates: this.certificatesArray, + total: this.certificatesArray.length, + offset: queryParams.offset || 0, + limit: queryParams.limit || 10 + }); + } + + // Cancelar timeout anterior si existe + if (this.searchTimeout) { + clearTimeout(this.searchTimeout); + } + + // Cancelar suscripción HTTP anterior si existe + if (this.searchSubscription) { + this.searchSubscription.unsubscribe(); + this.searchSubscription = null; + } + + // Crear un nuevo Observable que espere 500ms antes de hacer la llamada + return new Observable(observer => { + this.searchTimeout = setTimeout(() => { + this.searchSubscription = this.http.get<{ certificates: Certificate[]; total: number; offset: number; limit: number }>( + `${environment.API_END_POINT}/certificates/user/${userId}/search`, + { params: queryParams } + ).pipe( + tap((response) => this.setCertificates(response.certificates)) + ).subscribe({ + next: (response) => { + observer.next(response); + this.searchSubscription = null; + }, + error: (error) => { + observer.error(error); + this.searchSubscription = null; + }, + complete: () => { + observer.complete(); + this.searchSubscription = null; + } + }); + }, 500); + }); + } + + + private setCertificates(certificates: Certificate[]) { + this.certificatesArray = certificates; + this.myCertificates.next(certificates); + } + + + /** + * Obtiene un certificado por su ID + * @param id ID del certificado + * @returns Observable con el certificado + */ + getById(id: string, publicURL = false): Observable { + return this.http.get(`${environment.API_END_POINT}/certificates/${id}`, { + headers: { + 'public': publicURL ? 'true' : 'false' + }, + responseType: 'json' + }); + } + + /** + * Descifra un ID de certificado desde formato URL-safe + * @param encryptedId ID cifrado en formato URL-safe + * @returns ID descifrado + */ + decryptId(encryptedId: string): string { + try { + // Validar entrada + if (!encryptedId || encryptedId.trim() === '') { + throw new Error('ID cifrado no puede estar vacío'); + } + + // Decodificar URL si es necesario + const cleanEncryptedId = decodeURIComponent(encryptedId.trim()); + + // Restaurar caracteres especiales desde formato URL-safe + const base64Encrypted = cleanEncryptedId + .replace(/-/g, '+') + .replace(/_/g, '/') + + '==='.slice(0, (4 - cleanEncryptedId.length % 4) % 4); + + const bytes = CryptoJS.AES.decrypt(base64Encrypted, this.secretKey); + const decryptedText = bytes.toString(CryptoJS.enc.Utf8); + + // Validar que el descifrado no esté vacío + if (!decryptedText || decryptedText.trim() === '') { + throw new Error('Error al descifrar: resultado vacío'); + } + + return decryptedText; + } catch (error) { + throw new Error('ID de certificado inválido'); + } + } + + /** + * Cifra un ID de certificado para uso en URLs + * @param id ID a cifrar + * @returns ID cifrado compatible con URLs + */ + encryptId(id: string): string { + if (!id || id.trim() === '') { + throw new Error('ID no puede estar vacío'); + } + + const cleanId = id.trim(); + const encrypted = CryptoJS.AES.encrypt(cleanId, this.secretKey).toString(); + + // Hacer el cifrado compatible con URLs reemplazando caracteres especiales + const urlSafeEncrypted = encrypted + .replace(/\+/g, '-') + .replace(/\//g, '_') + .replace(/=/g, ''); + + return urlSafeEncrypted; + } + + +} diff --git a/src/app/services/patients.service.ts b/src/app/services/patients.service.ts index 8219431b..6c087470 100644 --- a/src/app/services/patients.service.ts +++ b/src/app/services/patients.service.ts @@ -16,10 +16,16 @@ export class PatientsService { ) { } - getPatients(): Observable{ + getPatients(): Observable { return this.http.get(`${environment.API_END_POINT}/patients`); } - + getPatientOSByDni(dni: string, sexo: string) { + const params = { 'documento': dni, 'sexo': sexo } + return this.http.get(`${environment.API_END_POINT}/patients/get-os-by-dni`, { params }); + } + getOS() { + return this.http.get(`${environment.API_END_POINT}/patients/get-os`); + } getPatientByDni(dni: string): Observable { return this.http.get(`${environment.API_END_POINT}/patients/get-by-dni/${dni}`); } @@ -38,11 +44,11 @@ export class PatientsService { ); } - getPatientInsurance(dni: string){ + getPatientInsurance(dni: string) { return this.http.get(`https://app.andes.gob.ar/api/modules/obraSocial/puco/?dni=${dni}`); } - private handleError (operation = 'operation', result?: T) { + private handleError(operation = 'operation', result?: T) { return (error: any): Observable => { // TODO: send the error to remote logging infrastructure diff --git a/src/app/services/pharmacists.service.ts b/src/app/services/pharmacists.service.ts new file mode 100644 index 00000000..106f251f --- /dev/null +++ b/src/app/services/pharmacists.service.ts @@ -0,0 +1,19 @@ +import { Injectable } from '@angular/core'; +import { environment } from '../../environments/environment'; +import { HttpClient, HttpHeaders } from '@angular/common/http'; +import { catchError, tap, map, first } from 'rxjs/operators'; +import { Observable, of, throwError } from 'rxjs'; +import { Pharmacists, PharmacistsAdapter } from "../interfaces/pharmacists"; + +@Injectable({ + providedIn: 'root' +}) +export class PharmacistsService { + + constructor(private http: HttpClient, private adapter: PharmacistsAdapter) { } + + getPharmacistByCuit(params): Observable { + const url = `${environment.API_END_POINT}/auth/pharmacies-andes`; + return this.http.get(url, { params }); + }; +} diff --git a/src/app/services/practices.service.ts b/src/app/services/practices.service.ts new file mode 100644 index 00000000..ef91f9ad --- /dev/null +++ b/src/app/services/practices.service.ts @@ -0,0 +1,224 @@ +import { HttpClient } from '@angular/common/http'; +import { Injectable } from '@angular/core'; +import { Practice } from '@interfaces/practices'; +import { saveAs } from 'file-saver'; +import * as moment from 'moment'; +import * as CryptoJS from 'crypto-js'; +import { BehaviorSubject, Observable, of } from 'rxjs'; +import { map, mapTo, tap } from 'rxjs/operators'; +import { environment } from '../../environments/environment'; + +@Injectable({ + providedIn: 'root' +}) +export class PracticesService { + + private secretKey = environment.CERTIFICATE_SECRET_KEY; + private myPractices: BehaviorSubject; + private practicesArray: Practice[] = []; + private searchTimeout: any = null; + private searchSubscription: any = null; + + constructor(private http: HttpClient) { + this.myPractices = new BehaviorSubject(this.practicesArray); + } + + getPractices(params): Observable { + return this.http.get(`${environment.API_END_POINT}/practices`, { params }).pipe( + tap((practices: Practice[]) => this.setPractices(practices)), + map((practices: Practice[]) => practices.length > 0) + ); + } + + getById(id: string, publicURL = false): Observable { + return this.http.get(`${environment.API_END_POINT}/practices/${id}`, { + headers: { + 'public': publicURL ? 'true' : 'false' + }, + responseType: 'json' + }); + } + + getFromDniAndDate(params: { patient_dni: string; dateFilter: string }): Observable { + return this.http.get(`${environment.API_END_POINT}/practices/find/${params.patient_dni}&${params.dateFilter}`).pipe( + tap((practices: Practice[]) => this.setPractices(practices)), + map((practices: Practice[]) => practices.length > 0) + ); + } + + getByUserId(userId: string, params?: { offset?: number; limit?: number }): Observable<{ practices: Practice[]; total: number; offset: number; limit: number }> { + const queryParams = params || {}; + return this.http.get<{ practices: Practice[]; total: number; offset: number; limit: number }>(`${environment.API_END_POINT}/practices/user/${userId}`, { params: queryParams }).pipe( + tap((response) => this.setPractices(response.practices)) + ); + } + + searchByTerm(userId: string, params?: { searchTerm?: string; offset?: number; limit?: number }): Observable<{ practices: Practice[]; total: number; offset: number; limit: number }> { + const queryParams = params || {}; + const searchTerm = queryParams.searchTerm || ''; + + // Verificar que haya al menos 3 caracteres para buscar + if (searchTerm && searchTerm.length < 3) { + return of({ practices: [], total: 0, offset: queryParams.offset || 0, limit: queryParams.limit || 10 }); + } + + // Cancelar timeout anterior si existe + if (this.searchTimeout) { + clearTimeout(this.searchTimeout); + } + + // Cancelar suscripción HTTP anterior si existe + if (this.searchSubscription) { + this.searchSubscription.unsubscribe(); + this.searchSubscription = null; + } + + // Crear un nuevo Observable que espere 500ms antes de hacer la llamada + return new Observable(observer => { + this.searchTimeout = setTimeout(() => { + this.searchSubscription = this.http.get<{ practices: Practice[]; total: number; offset: number; limit: number }>( + `${environment.API_END_POINT}/practices/user/${userId}/search`, + { params: queryParams } + ).pipe( + tap((response) => this.setPractices(response.practices)) + ).subscribe({ + next: (response) => { + observer.next(response); + this.searchSubscription = null; + }, + error: (error) => { + observer.error(error); + this.searchSubscription = null; + }, + complete: () => { + observer.complete(); + this.searchSubscription = null; + } + }); + }, 500); + }); + } + + newPractice(practice: Practice): Observable { + return this.http.post(`${environment.API_END_POINT}/practices`, practice).pipe( + tap((newPractices: Practice[]) => this.addPractice(newPractices)), + mapTo(true) + ); + } + + editPractice(practice: Practice): Observable { + return this.http.patch(`${environment.API_END_POINT}/practices/${practice._id}`, practice).pipe( + tap((updatedPractice: Practice) => this.updatePractice(updatedPractice)), + mapTo(true) + ); + } + + deletePractice(practiceId: string): Observable { + return this.http.delete(`${environment.API_END_POINT}/practices/${practiceId}`).pipe( + tap(() => this.removePractice(practiceId)), + mapTo(true) + ); + } + + completePractice(practiceId: string): Observable { + return this.http.patch(`${environment.API_END_POINT}/practices/${practiceId}/complete`, {}).pipe( + tap((updatedPractice: Practice) => this.updatePractice(updatedPractice)), + mapTo(true) + ); + } + + cancelPractice(practiceId: string): Observable { + return this.http.patch(`${environment.API_END_POINT}/practices/${practiceId}/cancel`, {}).pipe( + tap((updatedPractice: Practice) => this.updatePractice(updatedPractice)), + mapTo(true) + ); + } + + cleanPractices(): void { + this.practicesArray = []; + this.myPractices.next(this.practicesArray); + } + + private setPractices(practices: Practice[]) { + this.practicesArray = practices; + this.myPractices.next(practices); + } + + private addPractice(practices: Practice[]) { + this.practicesArray.unshift(...practices); + this.myPractices.next(this.practicesArray); + } + + private removePractice(removedPractice: string) { + const removeIndex = this.practicesArray.findIndex((practice: Practice) => practice._id === removedPractice); + this.practicesArray.splice(removeIndex, 1); + this.myPractices.next(this.practicesArray); + } + + private updatePractice(updatedPractice: Practice) { + const updateIndex = this.practicesArray.findIndex((practice: Practice) => practice._id === updatedPractice._id); + this.practicesArray.splice(updateIndex, 1, updatedPractice); + this.myPractices.next(this.practicesArray); + } + + getCsv(dateFilter: Object): Observable { + return this.http.post(`${environment.API_END_POINT}/practices/get-csv`, dateFilter, { responseType: 'blob' } as any).pipe( + tap((csv: any) => { + const header = { type: 'text/csv' }; + const blob = new Blob([csv], header); + const fileName = `reporte-practicas-${moment().format('DD-MM-YYYY-HH:mm')}.csv`; + saveAs(blob, fileName); + }) + ); + } + + get practices(): Observable { + return this.myPractices.asObservable(); + } + + // Método para desencriptar el ID + decryptId(encryptedId: string): string { + try { + // Decodificar de base64 + const encryptedData = atob(encryptedId); + + // Separar IV y datos encriptados + const iv = CryptoJS.enc.Hex.parse(encryptedData.substring(0, 32)); + const encrypted = encryptedData.substring(32); + + // Desencriptar + const decrypted = CryptoJS.AES.decrypt(encrypted, this.secretKey, { + iv: iv, + mode: CryptoJS.mode.CBC, + padding: CryptoJS.pad.Pkcs7 + }); + + return decrypted.toString(CryptoJS.enc.Utf8); + } catch (error) { + throw new Error('Invalid encrypted ID'); + } + } + + // Método para encriptar el ID + encryptId(id: string): string { + try { + // Generar IV aleatorio + const iv = CryptoJS.lib.WordArray.random(16); + + // Encriptar + const encrypted = CryptoJS.AES.encrypt(id, this.secretKey, { + iv: iv, + mode: CryptoJS.mode.CBC, + padding: CryptoJS.pad.Pkcs7 + }); + + // Combinar IV y datos encriptados + const combined = iv.toString() + encrypted.toString(); + + // Codificar en base64 + return btoa(combined); + } catch (error) { + throw new Error('Encryption failed'); + } + } +} diff --git a/src/app/services/prescriptions.service.ts b/src/app/services/prescriptions.service.ts index 279c4977..850e846c 100644 --- a/src/app/services/prescriptions.service.ts +++ b/src/app/services/prescriptions.service.ts @@ -1,107 +1,188 @@ import { Injectable } from '@angular/core'; import { environment } from '../../environments/environment'; import { HttpClient } from '@angular/common/http'; -import { Observable, BehaviorSubject } from 'rxjs'; -import { Prescriptions } from "../interfaces/prescriptions"; +import { Observable, BehaviorSubject, of } from 'rxjs'; +import { Prescriptions, PrescriptionsResponse } from '../interfaces/prescriptions'; import { tap, mapTo, map } from 'rxjs/operators'; +import { saveAs } from 'file-saver'; +import * as moment from 'moment'; +import { AmbitoService } from '../auth/services/ambito.service'; @Injectable({ - providedIn: 'root' + providedIn: 'root' }) export class PrescriptionsService { - private myPrescriptions: BehaviorSubject; - private prescriptionsArray: Prescriptions[] = []; - - constructor(private http: HttpClient) { - this.myPrescriptions = new BehaviorSubject(this.prescriptionsArray); - } - - getById(id: string): Observable{ - return this.http.get(`${environment.API_END_POINT}/prescriptions/${id}`); - } - - dispense(prescriptionId: string, pharmacistId: string): Observable { - var params = {'prescriptionId': prescriptionId, 'pharmacistId': pharmacistId }; - return this.http.patch(`${environment.API_END_POINT}/prescriptions/${params.prescriptionId}/dispense`, params).pipe( - tap((updatedPrescription: Prescriptions) => this.updatePrescription(updatedPrescription)), - mapTo(true) - ); - } - - cancelDispense(prescriptionId: string, pharmacistId: string): Observable { - var params = {'prescriptionId': prescriptionId, 'pharmacistId': pharmacistId }; - return this.http.patch(`${environment.API_END_POINT}/prescriptions/${params.prescriptionId}/cancel-dispense`, params).pipe( - tap((updatedPrescription: Prescriptions) => this.updatePrescription(updatedPrescription)), - mapTo(true) - ); - } - - getFromDniAndDate(params: {patient_dni: string, dateFilter: string}): Observable{ - return this.http.get(`${environment.API_END_POINT}/prescriptions/find/${params.patient_dni}&${params.dateFilter}`).pipe( - tap((prescriptions: Prescriptions[]) => this.setPrescriptions(prescriptions)), - map((prescriptions: Prescriptions[]) => prescriptions.length > 0) - ); - } - - getByUserId(userId: string): Observable { - return this.http.get(`${environment.API_END_POINT}/prescriptions/get-by-user-id/${userId}`).pipe( - tap((prescriptions: Prescriptions[]) => this.setPrescriptions(prescriptions)), - mapTo(true) - ); - } - - newPrescription(prescription: Prescriptions): Observable { - return this.http.post(`${environment.API_END_POINT}/prescriptions`, prescription).pipe( - tap((newPrescription: Prescriptions) => this.addPrescription(newPrescription)), - mapTo(true) - ); - } - - editPrescription(prescription: Prescriptions): Observable { - return this.http.patch(`${environment.API_END_POINT}/prescriptions/${prescription._id}`, prescription).pipe( - tap((updatedPrescription: Prescriptions) => this.updatePrescription(updatedPrescription)), - mapTo(true) - ); - } - - deletePrescription(prescriptionId: string): Observable { - return this.http.delete(`${environment.API_END_POINT}/prescriptions/${prescriptionId}`).pipe( - tap(() => this.removePrescription(prescriptionId)), - mapTo(true) - ); - } - - cleanPrescriptions(): void{ - this.prescriptionsArray = []; - this.myPrescriptions.next(this.prescriptionsArray); - } - - private setPrescriptions(prescriptions: Prescriptions[]){ - this.prescriptionsArray = prescriptions; - this.myPrescriptions.next(prescriptions); - } - - - private addPrescription(prescription: Prescriptions){ - this.prescriptionsArray.unshift(prescription); - this.myPrescriptions.next(this.prescriptionsArray); - } - - private removePrescription(removedPrescription: string){ - const removeIndex = this.prescriptionsArray.findIndex((prescription: Prescriptions) => prescription._id === removedPrescription); - - this.prescriptionsArray.splice(removeIndex, 1); - this.myPrescriptions.next(this.prescriptionsArray); - } - - private updatePrescription(updatedPrescription: Prescriptions){ - const updateIndex = this.prescriptionsArray.findIndex((prescription: Prescriptions) => prescription._id === updatedPrescription._id); - this.prescriptionsArray.splice(updateIndex, 1, updatedPrescription); - this.myPrescriptions.next(this.prescriptionsArray); - } - - get prescriptions(): Observable { - return this.myPrescriptions.asObservable(); - } + private myPrescriptions: BehaviorSubject; + private prescriptionsArray: Prescriptions[] = []; + private searchTimeout: any = null; + private searchSubscription: any = null; + + constructor(private http: HttpClient, private ambitoService: AmbitoService) { + this.myPrescriptions = new BehaviorSubject(this.prescriptionsArray); + } + + getPrescriptions(params): Observable { + return this.http.get(`${environment.API_END_POINT}/prescriptions`, { params }).pipe( + tap((prescriptions: Prescriptions[]) => this.setPrescriptions(prescriptions)), + map((prescriptions: Prescriptions[]) => prescriptions.length > 0) + ); + } + + getById(id: string): Observable { + return this.http.get(`${environment.API_END_POINT}/prescriptions/${id}`); + } + + dispense(prescriptionId: string, pharmacistId: string): Observable { + const params = { 'prescriptionId': prescriptionId, 'pharmacistId': pharmacistId }; + return this.http.patch(`${environment.API_END_POINT}/prescriptions/${params.prescriptionId}/dispense`, params).pipe( + tap((updatedPrescription: Prescriptions) => this.updatePrescription(updatedPrescription)), + mapTo(true) + ); + } + + cancelDispense(prescriptionId: string, pharmacistId: string): Observable { + const params = { 'prescriptionId': prescriptionId, 'pharmacistId': pharmacistId }; + return this.http.patch(`${environment.API_END_POINT}/prescriptions/${params.prescriptionId}/cancel-dispense`, params).pipe( + tap((updatedPrescription: Prescriptions) => this.updatePrescription(updatedPrescription)), + mapTo(true) + ); + } + + getFromDniAndDate(params: { patient_dni: string; dateFilter: string }): Observable { + return this.http.get(`${environment.API_END_POINT}/prescriptions/find/${params.patient_dni}&${params.dateFilter}`).pipe( + tap((prescriptions: Prescriptions[]) => this.setPrescriptions(prescriptions)), + map((prescriptions: Prescriptions[]) => prescriptions.length > 0) + ); + } + + getByUserId(userId: string, params?: { offset?: number; limit?: number }): Observable { + const queryParams = { + ...(params || {}), + ambito: this.ambitoService.getAmbito() || 'privado' + }; + return this.http.get(`${environment.API_END_POINT}/prescriptions/user/${userId}`, { params: queryParams }).pipe( + tap((response) => this.setPrescriptions(response.prescriptions as Prescriptions[])) + ); + } + + searchByTerm(userId: string, params?: { searchTerm?: string; offset?: number; limit?: number }): Observable { + const queryParams = { + ...(params || {}), + ambito: this.ambitoService.getAmbito() || 'privado' + }; + const searchTerm = queryParams.searchTerm || ''; + + // Verificar que haya al menos 3 caracteres para buscar + if (searchTerm && searchTerm.length < 3) { + return of({ + prescriptions: [], + total: 0, + offset: queryParams.offset || 0, + limit: queryParams.limit || 10, + sources: { local: 0, andes: 0 } + }); + } + + // Cancelar timeout anterior si existe + if (this.searchTimeout) { + clearTimeout(this.searchTimeout); + } + + // Cancelar suscripción HTTP anterior si existe + if (this.searchSubscription) { + this.searchSubscription.unsubscribe(); + this.searchSubscription = null; + } + + // Crear un nuevo Observable que espere 500ms antes de hacer la llamada + return new Observable(observer => { + this.searchTimeout = setTimeout(() => { + this.searchSubscription = this.http.get( + `${environment.API_END_POINT}/prescriptions/user/${userId}/search`, + { params: queryParams } + ).pipe( + tap((response) => this.setPrescriptions(response.prescriptions as Prescriptions[])) + ).subscribe({ + next: (response) => { + observer.next(response); + this.searchSubscription = null; + }, + error: (error) => { + observer.error(error); + this.searchSubscription = null; + }, + complete: () => { + observer.complete(); + this.searchSubscription = null; + } + }); + }, 500); + }); + } + + newPrescription(prescription: Prescriptions): Observable { + return this.http.post(`${environment.API_END_POINT}/prescriptions`, prescription).pipe( + tap((newPrescriptions: Prescriptions[]) => this.addPrescription(newPrescriptions)), + mapTo(true) + ); + } + + editPrescription(prescription: Prescriptions): Observable { + return this.http.patch(`${environment.API_END_POINT}/prescriptions/${prescription._id}`, prescription).pipe( + tap((updatedPrescription: Prescriptions) => this.updatePrescription(updatedPrescription)), + mapTo(true) + ); + } + + deletePrescription(prescriptionId: string): Observable { + return this.http.delete(`${environment.API_END_POINT}/prescriptions/${prescriptionId}`).pipe( + tap(() => this.removePrescription(prescriptionId)), + mapTo(true) + ); + } + + cleanPrescriptions(): void { + this.prescriptionsArray = []; + this.myPrescriptions.next(this.prescriptionsArray); + } + + private setPrescriptions(prescriptions: Prescriptions[]) { + this.prescriptionsArray = prescriptions; + this.myPrescriptions.next(prescriptions); + } + + + private addPrescription(prescriptions: Prescriptions[]) { + this.prescriptionsArray.unshift(...prescriptions); + this.myPrescriptions.next(this.prescriptionsArray); + } + + private removePrescription(removedPrescription: string) { + const removeIndex = this.prescriptionsArray.findIndex((prescription: Prescriptions) => prescription._id === removedPrescription); + + this.prescriptionsArray.splice(removeIndex, 1); + this.myPrescriptions.next(this.prescriptionsArray); + } + + private updatePrescription(updatedPrescription: Prescriptions) { + const updateIndex = this.prescriptionsArray.findIndex((prescription: Prescriptions) => prescription._id === updatedPrescription._id); + this.prescriptionsArray.splice(updateIndex, 1, updatedPrescription); + this.myPrescriptions.next(this.prescriptionsArray); + } + + getCsv(dateFilter: Object): Observable { + return this.http.post(`${environment.API_END_POINT}/prescriptions/get-csv`, dateFilter, { responseType: 'blob' } as any).pipe( + tap((csv: any) => { + const header = { type: 'text/csv' }; + const blob = new Blob([csv], header); + const fileName = `reporte-${moment().format('DD-MM-YYYY-HH:mm')}.csv`; + saveAs(blob, fileName); + }) + ); + } + + get prescriptions(): Observable { + return this.myPrescriptions.asObservable(); + } } diff --git a/src/app/services/professionals.service.deprecated.ts b/src/app/services/professionals.service.ts similarity index 85% rename from src/app/services/professionals.service.deprecated.ts rename to src/app/services/professionals.service.ts index b35f8c28..f527ebbe 100644 --- a/src/app/services/professionals.service.deprecated.ts +++ b/src/app/services/professionals.service.ts @@ -1,6 +1,6 @@ import { Injectable } from '@angular/core'; import { environment } from '../../environments/environment'; -import { HttpClient } from '@angular/common/http'; +import { HttpClient, HttpHeaders } from '@angular/common/http'; import { catchError, tap, map, first } from 'rxjs/operators'; import { Observable, of, throwError } from 'rxjs'; import { Professionals, ProfessionalsAdapter } from "../interfaces/professionals"; @@ -16,14 +16,20 @@ export class ProfessionalsService { // return this.http.get(`${environment.API_END_POINT}/professionals`); // } - // getProfessionalByDni(dni: string): Observable { - // const url = `${environment.ANDES_API}/core/tm/profesionales/guia?documento=${dni}&codigoProfesion=1` - // return this.http.get(url).pipe( - // tap(_ => console.log(`fetched professional dni=${dni}`)), - // map((data: any) => data.map(item => this.adapter.adapt(item))), - // catchError(this.handleError(`getProfessionalByDni dni=${dni}`)) - // ); - // } + // getProfessionalByDni(dni: string, email: string): Observable { + // console.log(dni, email); + // const url = `${environment.ANDES_API}/core/tm/profesionales/guia?documento=${dni}&email=${email}` + // return this.http.get(url); + // } + + getProfessionalByDni(params): Observable { + const url = `${environment.API_END_POINT}/auth/professionals-andes` + return this.http.get(url, { params }); + } + getAuthorizedProfessions(): Observable { + const url = `${environment.API_END_POINT}/auth/authorizedProfessions` + return this.http.get(url); + } // getProfessionalByEnrollment(enrollment: string): Observable { // const url = `${environment.ANDES_API}/core/tm/profesionales/guia?formacionGrado=%5Bobject%20Object%5D&numeroMatricula=${enrollment}&codigoProfesion=1` diff --git a/src/app/services/snomedSupplies.service.ts b/src/app/services/snomedSupplies.service.ts new file mode 100644 index 00000000..7b82aaa4 --- /dev/null +++ b/src/app/services/snomedSupplies.service.ts @@ -0,0 +1,25 @@ +import { Injectable } from '@angular/core'; +import { environment } from '../../environments/environment'; +import { HttpClient, HttpParams } from '@angular/common/http'; +import { Observable, BehaviorSubject } from 'rxjs'; +import SnomedConcept from '@interfaces/snomedConcept'; +import { tap } from 'rxjs/operators'; + +@Injectable({ + providedIn: 'root' +}) +export class SnomedSuppliesService { + + private mySupplies: BehaviorSubject; + private suppliesArray: SnomedConcept[] = []; + private dataLoaded = false; + + constructor(private http: HttpClient) { + this.mySupplies = new BehaviorSubject(this.suppliesArray); + } + + get(params): Observable { + return this.http.get(`${environment.API_END_POINT}/snomed/supplies?search=${params}`); + } + +} diff --git a/src/app/services/supplies.service.ts b/src/app/services/supplies.service.ts index 10ec743d..4504af1b 100644 --- a/src/app/services/supplies.service.ts +++ b/src/app/services/supplies.service.ts @@ -1,20 +1,62 @@ import { Injectable } from '@angular/core'; import { environment } from '../../environments/environment'; import { HttpClient, HttpParams } from '@angular/common/http'; -import { Observable } from 'rxjs'; +import { Observable, BehaviorSubject } from 'rxjs'; import Supplies from "../interfaces/supplies"; +import { tap, mapTo } from 'rxjs/operators'; @Injectable({ providedIn: 'root' }) export class SuppliesService { - constructor(private http: HttpClient) { } + private mySupplies: BehaviorSubject; + private suppliesArray: any[] = []; + + constructor(private http: HttpClient) { + this.mySupplies = new BehaviorSubject(this.suppliesArray); + } + + get(term: string): Observable{ + const params = new HttpParams().set('supplyName', term); + return this.http.get(`${environment.API_END_POINT}/supplies`, {params}); + } getSupplyByTerm(term: string): Observable{ const params = new HttpParams().set('supplyName', term); return this.http.get(`${environment.API_END_POINT}/supplies/get-by-name`, {params}); } + newSupply(supply: any): Observable { + return this.http.post(`${environment.API_END_POINT}/supplies`, supply).pipe( + tap((newPrescription: any) => this.addPrescription(newPrescription)), + mapTo(true) + ); + } + + editSupply(supply: any): Observable { + return this.http.patch(`${environment.API_END_POINT}/supplies/${supply._id}`, supply).pipe( + tap((updatedPrescription: any) => this.updatePrescription(updatedPrescription)), + mapTo(true) + ); + } + + private addPrescription(supply: any){ + this.suppliesArray.unshift(supply); + this.mySupplies.next(this.suppliesArray); + } + + private removePrescription(removedPrescription: string){ + const removeIndex = this.suppliesArray.findIndex((supply: any) => supply._id === removedPrescription); + + this.suppliesArray.splice(removeIndex, 1); + this.mySupplies.next(this.suppliesArray); + } + + private updatePrescription(updatedPrescription: any){ + const updateIndex = this.suppliesArray.findIndex((supply: any) => supply._id === updatedPrescription._id); + this.suppliesArray.splice(updateIndex, 1, updatedPrescription); + this.mySupplies.next(this.suppliesArray); + } } diff --git a/src/app/services/users.service.ts b/src/app/services/users.service.ts new file mode 100644 index 00000000..4c8dc6e4 --- /dev/null +++ b/src/app/services/users.service.ts @@ -0,0 +1,24 @@ +import { Injectable } from '@angular/core'; +import { environment } from '../../environments/environment'; +import { HttpClient } from '@angular/common/http'; +import { catchError, map, tap } from 'rxjs/operators'; +import { Observable, of } from 'rxjs'; +import { User } from '@interfaces/users'; + +@Injectable({ + providedIn: 'root' +}) +export class UserService { + + constructor( + private http: HttpClient + ) { } + + getUsers(): Observable{ + return this.http.get(`${environment.API_END_POINT}/users/index`); + } + + updateIsActive(_id: string, isActive: boolean): Observable { + return this.http.post(`${environment.API_END_POINT}/users/update`, {_id: _id, isActive: isActive}) + } +} diff --git a/src/app/shared/components/public-certificate/public-certificate.component.html b/src/app/shared/components/public-certificate/public-certificate.component.html new file mode 100644 index 00000000..6b9e42f1 --- /dev/null +++ b/src/app/shared/components/public-certificate/public-certificate.component.html @@ -0,0 +1,119 @@ +
+ +
+ +

Cargando certificado...

+
+ + +
+ error +

Error

+

{{ error }}

+ +
+ + +
+
+
+

Certificado Médico

+
+
+
+ + check_circle + timer_off + cancel + + {{ getStatusText(getCertificateStatus(certificate)) }} + +
+
+ Fecha anulación: {{ certificate.anulateDate | date:'dd/MM/yyyy HH:mm':'GMT-3' }} +
+
+ Ultima actualización: {{ getCurrentDate() | date:'dd/MM/yyyy HH:mm':'GMT-3' }} +
+
+
+ +
+ +
+

Paciente

+
+
+ + {{ certificate.patient.firstName && certificate.patient.lastName ? + certificate.patient.firstName + ' ' + + certificate.patient.lastName : '- sin especificar -' }} +
+
+ + {{ certificate.patient.dni || '- sin especificar -' }} +
+
+ + {{ certificate.patient.sex || '- sin especificar -' }} +
+
+
+ + +
+

Detalles del Certificado

+
+ +
+ + {{ certificate.createdAt ? (certificate.createdAt | date:'dd/MM/yyyy HH:mm':'GMT-3' ): '- + sin especificar -' }} +
+
+ + {{ certificate.startDate ? (certificate.startDate | date:'dd/MM/yyyy HH:mm':'GMT-3') : '- + sin especificar -' }} +
+
+ + {{ certificate.endDate ? ( certificate.endDate | date:'dd/MM/yyyy HH:mm':'GMT-3') : '- sin + especificar -' }} +
+
+ + {{ certificate.cantDias ? ( certificate.cantDias ) : '- sin especificar -' + }} +
+
+
+ + +
+

Descripción

+

{{ certificate.certificate || '- sin especificar -' }}

+
+ + +
+

Motivo de anulación

+

{{ certificate.anulateReason}}

+
+
+ + +
+
\ No newline at end of file diff --git a/src/app/shared/components/public-certificate/public-certificate.component.sass b/src/app/shared/components/public-certificate/public-certificate.component.sass new file mode 100644 index 00000000..3082b0e7 --- /dev/null +++ b/src/app/shared/components/public-certificate/public-certificate.component.sass @@ -0,0 +1,282 @@ +.certificate-container + max-width: 800px + margin: 0 auto + padding: 40px 20px + font-family: 'Roboto', sans-serif + +.loading-container + display: flex + flex-direction: column + align-items: center + justify-content: center + min-height: 400px + gap: 20px + +.error-container + display: flex + flex-direction: column + align-items: center + justify-content: center + min-height: 400px + text-align: center + gap: 20px + + .error-icon + font-size: 48px + width: 48px + height: 48px + color: #f44336 + + h2 + color: #f44336 + margin: 0 + +.certificate-content + background: white + border-radius: 8px + overflow: hidden + +.anulate-date + font-style: italic + color: white + font-size: 14px + margin-top: 10px + +.certificate-header + display: flex + justify-content: space-between + align-items: flex-start + padding: 30px + background: linear-gradient(135deg, #1976d2, #42a5f5) + color: white + + + h1 + margin: 0 + font-size: 28px + font-weight: 300 + + .logo-section + align-self: flex-start + + .header-right + display: flex + flex-direction: column + align-items: flex-end + + .certificate-status + display: flex + align-items: center + + ::ng-deep mat-chip + font-weight: 500 !important + font-size: 14px !important + text-transform: uppercase !important + letter-spacing: 0.5px !important + border: none !important + color: white !important + padding: 8px 16px !important + border-radius: 16px !important + min-height: 32px !important + display: inline-flex !important + align-items: center !important + gap: 6px !important + + mat-icon + font-size: 18px !important + width: 18px !important + height: 18px !important + color: inherit !important + margin-right: 4px !important + display: inline-block !important + vertical-align: middle !important + font-family: 'Material Icons' !important + font-weight: normal !important + font-style: normal !important + line-height: 1 !important + text-transform: none !important + letter-spacing: normal !important + word-wrap: normal !important + white-space: nowrap !important + direction: ltr !important + + &.status-chip-activo + background-color: #4caf50 !important + color: white !important + + &.status-chip-expirado + background-color: rgb(245, 121, 5) !important + color: white !important + + &.status-chip-anulado + background-color: #f44336 !important + color: white !important + + // Fallback para mat-chip sin clase específica + &:not([class*="status-chip-"]) + background-color: #4caf50 !important + color: white !important + +.certificate-body + padding: 30px + +.section + margin-bottom: 30px + + h3 + color: #1976d2 + font-size: 18px + font-weight: 500 + margin-bottom: 15px + padding-bottom: 5px + border-bottom: 2px solid #e3f2fd + + .h3-red + color: #f44336 !important + +.info-grid + display: grid + grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)) + gap: 15px + +.info-item + display: flex + flex-direction: column + gap: 5px + + label + font-weight: 500 + color: #666 + font-size: 11px + text-transform: uppercase + letter-spacing: 0.5px + + span + font-size: 16px + color: #333 + padding: 8px 0 + border-bottom: 1px solid #f0f0f0 + +// Sección del profesional centrada +.professional-section-bottom + margin-bottom: 30px + padding: 20px 0 + border-top: 2px solid #e3f2fd + border-bottom: 2px solid #e3f2fd + +.professional-info-centered + text-align: center + + .professional-name + font-size: 18px + font-weight: 500 + color: #1976d2 + margin: 0 0 5px 0 + + .professional-enrollment + font-size: 16px + color: #666 + margin: 0 + +.description-text, +.diagnosis-text, +.observations-text + font-size: 16px + line-height: 1.6 + color: #333 + background: #f9f9f9 + padding: 20px + border-radius: 8px + border-left: 4px solid #1976d2 + margin: 0 + +.diagnosis-text-red + font-size: 16px + line-height: 1.6 + color: #333 + background: #f9f9f9 + padding: 20px + border-radius: 8px + border-left: 4px solid #f44336 !important + margin: 0 + +.certificate-footer + padding: 30px + background: #fafafa + border-top: 1px solid #e0e0e0 + +.signature-section + display: flex + justify-content: center + margin-bottom: 20px + +.signature-line + text-align: center + min-width: 300px + + p + margin: 5px 0 + + .signature-label + font-weight: 500 + color: #666 + font-size: 14px + + .professional-name + font-weight: 500 + color: #333 + font-size: 16px + + .professional-enrollment + color: #666 + font-size: 14px + +// Print styles +@media print + .no-print + display: none !important + + .certificate-container + max-width: none + margin: 0 + padding: 0 + + .certificate-content + border: none + border-radius: 0 + box-shadow: none + + .certificate-header + background: #1976d2 !important + -webkit-print-color-adjust: exact + color-adjust: exact + + .section + page-break-inside: avoid + + .description-text, + .diagnosis-text, + .observations-text + background: #f9f9f9 !important + -webkit-print-color-adjust: exact + color-adjust: exact + +// Responsive design +@media (max-width: 768px) + .certificate-container + padding: 10px + + .certificate-header + flex-direction: column + gap: 20px + text-align: center + + .certificate-body, + .certificate-footer + padding: 20px + + .info-grid + grid-template-columns: 1fr + + .signature-line + min-width: auto \ No newline at end of file diff --git a/src/app/shared/components/public-certificate/public-certificate.component.ts b/src/app/shared/components/public-certificate/public-certificate.component.ts new file mode 100644 index 00000000..39d01e49 --- /dev/null +++ b/src/app/shared/components/public-certificate/public-certificate.component.ts @@ -0,0 +1,110 @@ +import { Component, OnInit } from '@angular/core'; +import { ActivatedRoute } from '@angular/router'; +import { Certificate } from '@interfaces/certificate'; +import { CertificatesService } from '@services/certificates.service'; +import { Observable, of } from 'rxjs'; +import { catchError, switchMap } from 'rxjs/operators'; + +@Component({ + selector: 'app-public-certificate', + templateUrl: './public-certificate.component.html', + styleUrls: ['./public-certificate.component.sass'] +}) + +export class PublicCertificateComponent implements OnInit { + + certificate$: Observable; + loading = true; + error: string | null = null; + + constructor( + private route: ActivatedRoute, + private certificatesService: CertificatesService + ) { } + + ngOnInit(): void { + this.loadCertificate(); + } + + private loadCertificate(): void { + this.certificate$ = this.route.params.pipe( + switchMap(params => { + const encryptedId = params['id']; + + if (!encryptedId) { + this.error = 'ID de certificado no proporcionado'; + this.loading = false; + return of(null); + } + + try { + // Descifrar el ID + const decryptedId = this.certificatesService.decryptId(encryptedId); + + // Obtener el certificado + return this.certificatesService.getById(decryptedId,true).pipe( + catchError(() => { + this.error = 'Certificado no encontrado o inválido'; + this.loading = false; + return of(null); + }) + ); + } catch (error) { + this.error = 'ID de certificado inválido'; + this.loading = false; + return of(null); + } + }) + ); + + // Suscribirse para manejar el estado de carga + this.certificate$.subscribe(certificate => { + this.loading = false; + if (certificate) { + this.error = null; + } + }); + } + + formatDate(date: Date | string): string { + if (!date) { return 'No especificada'; } + const dateObj = typeof date === 'string' ? new Date(date) : date; + return dateObj.toLocaleDateString('es-AR', { + year: 'numeric', + month: 'long', + day: 'numeric' + }); + } + + getCertificateStatus(certificate: any): string { + + if (!certificate.endDate) { + return 'activo'; + } + if (certificate.anulateDate) { + return 'anulado'; + } + const today = new Date(); + const endDate = new Date(certificate.endDate); + + today.setHours(0, 0, 0, 0); + endDate.setHours(0, 0, 0, 0); + + return today > endDate ? 'expirado' : 'activo'; + } + getCurrentDate() { + return new Date()} + + getStatusText(status: string): string { + const statusMap = { + 'activo': 'Activo', + 'expirado': 'Expirado', + 'anulado':'Anulado' + }; + return statusMap[status] || 'Activo'; + } + + printCertificate(): void { + window.print(); + } +} diff --git a/src/app/shared/components/public-practice/public-practice.component.html b/src/app/shared/components/public-practice/public-practice.component.html new file mode 100644 index 00000000..3207b58f --- /dev/null +++ b/src/app/shared/components/public-practice/public-practice.component.html @@ -0,0 +1,109 @@ +
+ +
+ +

Cargando práctica...

+
+ + +
+ error +

Error

+

{{ error }}

+ +
+ + +
+
+
+ +

Práctica Médica

+
+
+ +
+ +
+

Paciente

+
+
+ + {{ practice.patient.firstName && practice.patient.lastName ? practice.patient.firstName + ' ' + + practice.patient.lastName : '- sin especificar -' }} +
+
+ + {{ practice.patient.dni || '- sin especificar -' }} +
+
+ + {{ practice.patient.sex || '- sin especificar -' }} +
+
+
+
+
+ + {{ practice.patient.obraSocial?.nombre || '- sin especificar -' }} + + {{ practice.patient.obraSocial?.numeroAfiliado || '- sin especificar -' }} + +
+
+ + +
+

Detalles de la Práctica

+
+
+ + {{ practice.createdAt ? formatDate(practice.createdAt) : '- sin especificar -' }} +
+
+ + {{ practice.date ? formatDate(practice.date) : '- sin especificar -' }} +
+
+
+ + +
+

Descripción de la Práctica

+

{{ practice.practice || '- sin especificar -' }}

+
+ + +
+

Diagnóstico

+

{{ practice.diagnostic }}

+
+ + +
+

Indicaciones

+

{{ practice.indications }}

+
+ + +
+

Observaciones

+

{{ practice.observations }}

+
+
+ + +
+
\ No newline at end of file diff --git a/src/app/shared/components/public-practice/public-practice.component.sass b/src/app/shared/components/public-practice/public-practice.component.sass new file mode 100644 index 00000000..e779e0ea --- /dev/null +++ b/src/app/shared/components/public-practice/public-practice.component.sass @@ -0,0 +1,254 @@ +.practice-container + max-width: 800px + margin: 0 auto + padding: 40px 20px + font-family: 'Roboto', sans-serif + +.loading-container + display: flex + flex-direction: column + align-items: center + justify-content: center + min-height: 400px + gap: 20px + +.error-container + display: flex + flex-direction: column + align-items: center + justify-content: center + min-height: 400px + text-align: center + gap: 20px + + .error-icon + font-size: 48px + width: 48px + height: 48px + color: #f44336 + + h2 + color: #f44336 + margin: 0 + +.practice-content + background: white + border-radius: 8px + overflow: hidden + +.practice-header + display: flex + justify-content: space-between + align-items: center + padding: 30px + background: linear-gradient(135deg, #4caf50, #81c784) + color: white + + h1 + margin: 0 + font-size: 28px + font-weight: 300 + + .practice-status + display: flex + align-items: center + + ::ng-deep mat-chip + font-weight: 500 !important + font-size: 14px !important + text-transform: uppercase !important + letter-spacing: 0.5px !important + border: none !important + color: white !important + padding: 8px 16px !important + border-radius: 16px !important + min-height: 32px !important + display: inline-flex !important + align-items: center !important + gap: 6px !important + + mat-icon + font-size: 18px !important + width: 18px !important + height: 18px !important + color: inherit !important + margin-right: 4px !important + display: inline-block !important + vertical-align: middle !important + font-family: 'Material Icons' !important + font-weight: normal !important + font-style: normal !important + line-height: 1 !important + text-transform: none !important + letter-spacing: normal !important + word-wrap: normal !important + white-space: nowrap !important + direction: ltr !important + + &.status-chip-active + background-color: #4caf50 !important + color: white !important + + &.status-chip-completed + background-color: #2196f3 !important + color: white !important + + &.status-chip-cancelled + background-color: #f44336 !important + color: white !important + + &:not([class*="status-chip-"]) + color: white !important + +.practice-body + padding: 30px + +.section + margin-bottom: 30px + + h3 + color: #4caf50 + font-size: 18px + font-weight: 500 + margin-bottom: 15px + padding-bottom: 5px + border-bottom: 2px solid #e8f5e8 + +.info-grid + display: grid + grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)) + gap: 15px + +.info-item + display: flex + flex-direction: column + gap: 5px + + label + font-weight: 500 + color: #666 + font-size: 11px + text-transform: uppercase + letter-spacing: 0.5px + + span + font-size: 16px + color: #333 + padding: 8px 0 + border-bottom: 1px solid #f0f0f0 + +// Sección del profesional centrada +.professional-section-bottom + margin-bottom: 30px + padding: 20px 0 + border-top: 2px solid #e8f5e8 + border-bottom: 2px solid #e8f5e8 + +.professional-info-centered + text-align: center + + .professional-name + font-size: 18px + font-weight: 500 + color: #4caf50 + margin: 0 0 5px 0 + + .professional-enrollment + font-size: 16px + color: #666 + margin: 0 + +.description-text, +.diagnosis-text, +.indications-text, +.observations-text + font-size: 16px + line-height: 1.6 + color: #333 + background: #f9f9f9 + padding: 20px + border-radius: 8px + border-left: 4px solid #4caf50 + margin: 0 + +.practice-footer + padding: 30px + background: #fafafa + border-top: 1px solid #e0e0e0 + +.signature-section + display: flex + justify-content: center + margin-bottom: 20px + +.signature-line + text-align: center + min-width: 300px + + p + margin: 5px 0 + + .signature-label + font-weight: 500 + color: #666 + font-size: 14px + + .professional-name + font-weight: 500 + color: #333 + font-size: 16px + + .professional-enrollment + color: #666 + font-size: 14px + +// Print styles +@media print + .no-print + display: none !important + + .practice-container + max-width: none + margin: 0 + padding: 0 + + .practice-content + border: none + border-radius: 0 + box-shadow: none + + .practice-header + background: #4caf50 !important + -webkit-print-color-adjust: exact + color-adjust: exact + + .section + page-break-inside: avoid + + .description-text, + .diagnosis-text, + .indications-text, + .observations-text + background: #f9f9f9 !important + -webkit-print-color-adjust: exact + color-adjust: exact + +// Responsive design +@media (max-width: 768px) + .practice-container + padding: 10px + + .practice-header + flex-direction: column + gap: 20px + text-align: center + + .practice-body, + .practice-footer + padding: 20px + + .info-grid + grid-template-columns: 1fr + + .signature-line + min-width: auto \ No newline at end of file diff --git a/src/app/shared/components/public-practice/public-practice.component.ts b/src/app/shared/components/public-practice/public-practice.component.ts new file mode 100644 index 00000000..53e85c5c --- /dev/null +++ b/src/app/shared/components/public-practice/public-practice.component.ts @@ -0,0 +1,90 @@ +import { Component, OnInit } from '@angular/core'; +import { ActivatedRoute } from '@angular/router'; +import { Practice } from '@interfaces/practices'; +import { PracticesService } from '@services/practices.service'; +import { Observable, of } from 'rxjs'; +import { catchError, switchMap } from 'rxjs/operators'; + +@Component({ + selector: 'app-public-practice', + templateUrl: './public-practice.component.html', + styleUrls: ['./public-practice.component.sass'] +}) + +export class PublicPracticeComponent implements OnInit { + + practice$: Observable; + loading = true; + error: string | null = null; + + constructor( + private route: ActivatedRoute, + private practicesService: PracticesService + ) { } + + ngOnInit(): void { + this.loadPractice(); + } + + private loadPractice(): void { + this.practice$ = this.route.params.pipe( + switchMap(params => { + const encryptedId = params['id']; + + if (!encryptedId) { + this.error = 'ID de práctica no proporcionado'; + this.loading = false; + return of(null); + } + + try { + // Descifrar el ID + const decryptedId = this.practicesService.decryptId(encryptedId); + + // Obtener la práctica + return this.practicesService.getById(decryptedId,true).pipe( + catchError(() => { + this.error = 'Práctica no encontrada o inválida'; + this.loading = false; + return of(null); + }) + ); + } catch (error) { + this.error = 'ID de práctica inválido'; + this.loading = false; + return of(null); + } + }) + ); + + this.practice$.subscribe(practice => { + if (practice) { + this.loading = false; + } + }); + } + + formatDate(date: Date | string): string { + console.log('formatDate', this.practice$ ); + if (!date) {return '';} + const dateObj = typeof date === 'string' ? new Date(date) : date; + return dateObj.toLocaleDateString('es-ES', { + year: 'numeric', + month: '2-digit', + day: '2-digit' + }); + } + + getStatusText(status: string): string { + const statusMap = { + 'active': 'Activo', + 'completed': 'Completado', + 'cancelled': 'Cancelado' + }; + return statusMap[status?.toLowerCase()] || 'Activo'; + } + + printPractice(): void { + window.print(); + } +} diff --git a/src/app/shared/components/unified-printer/unified-printer.component.ts b/src/app/shared/components/unified-printer/unified-printer.component.ts new file mode 100644 index 00000000..5d9eb114 --- /dev/null +++ b/src/app/shared/components/unified-printer/unified-printer.component.ts @@ -0,0 +1,705 @@ +import { Component, Injectable } from '@angular/core'; +import { PdfMakeWrapper, Txt, Canvas, Line, Img, Columns } from 'pdfmake-wrapper'; +import * as pdfFontsX from 'pdfmake-unicode/dist/pdfmake-unicode.js'; +import { DatePipe } from '@angular/common'; +import { Prescriptions } from '@interfaces/prescriptions'; +import AndesPrescriptions from '@interfaces/andesPrescriptions'; +import { Certificate } from '@interfaces/certificate'; +import { Practice } from '@interfaces/practices'; +import { BarcodeService } from '@services/barcode.service'; +import { CertificatesService } from '@services/certificates.service'; +import { PracticesService } from '@services/practices.service'; +import * as QRCode from 'qrcode'; +import { environment } from '../../../../environments/environment'; + +PdfMakeWrapper.setFonts(pdfFontsX); + +@Injectable({ + providedIn: 'root' +}) +export class UnifiedPrinterComponent { + + constructor( + private datePipe: DatePipe, + private barcodeService: BarcodeService, + private certificatesService: CertificatesService, + private practicesService: PracticesService + ) { } + + private async _generatePdf(buildFunction: (pdf: PdfMakeWrapper) => Promise | void) { + const pdf = new PdfMakeWrapper(); + await Promise.resolve(buildFunction(pdf)); + pdf.create().open(); + } + + // Print regular prescription + async printPrescription(prescription: Prescriptions) { + await this._generatePdf(async (pdf) => { + // Primera página + await this.addPage(pdf, prescription); + // Duplicado + if (prescription.supplies.some(s => s.duplicate)) { + pdf.add({ text: '', pageBreak: 'after' }); + await this.addPage(pdf, prescription, 'DUPLICADO'); + } + }); + } + + private async addPage(pdf: PdfMakeWrapper, prescription: Prescriptions, label?: string) { + + if (prescription.status === 'Vencida') { + pdf.watermark({ + text: 'Receta no valida para dispensa', + color: 'grey', + opacity: 0.3, + bold: true, + fontSize: 60 + }); + } + if (prescription.status === 'Dispensada') { + pdf.watermark({ + text: 'DISPENSADA', + color: 'grey', + opacity: 0.3, + bold: true, + fontSize: 100 + }); + } + + const barcodeBase64 = await this.barcodeService.generateBarcodeBase64(prescription._id); + const barcodeImg = await new Img(barcodeBase64).fit([230, 60]).alignment('center').margin([0, 20]).build(); + + // Segundo código de barras para prescriptionId + let prescriptionIdBarcodeImg = null; + let prescriptionIdLabel = null; + if (prescription.prescriptionId) { + const prescriptionIdBarcodeBase64 = await this.barcodeService.generateBarcodeBase64(prescription.prescriptionId); + prescriptionIdLabel = new Txt('Número de receta:').fontSize(9).bold().alignment('center').margin([0, 5, 0, 0]).end; + prescriptionIdBarcodeImg = await new Img(prescriptionIdBarcodeBase64).fit([230, 60]).alignment('center').margin([0, 5]).build(); + } + pdf.info({ + title: 'Receta digital ' + prescription.professional.businessName, + author: 'RecetAR' + }); + // Header + pdf.add(new Columns([ + await new Img('assets/img/LogoPdf.jpg').fit([60, 60]).build(), + new Txt('RECETA').bold().fontSize(20).alignment('center').end, + new Txt(label ? `${label}` : '').bold().italics().fontSize(20).alignment('right').opacity(0.6).end]).end); + pdf.add(new Txt('\n').end); + pdf.add(new Columns([new Txt('RECETAR').bold().alignment('left').end, new Txt(`Fecha prescripción: ${this.datePipe.transform(prescription.date, 'dd/MM/yyyy')}`).alignment('right').end]).end); + pdf.add(new Canvas([new Line(1, [515, 1]).end]).end); + pdf.add(new Txt('\n').end); + + // Patient + pdf.add(new Txt([ + { text: 'Paciente: ' }, + { text: `${prescription.patient.lastName.toUpperCase()} ${prescription.patient.firstName.toUpperCase()}`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + + pdf.add(new Txt([ + { text: 'DNI: ' }, + { text: `${prescription.patient.dni}`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + if (prescription.patient.fechaNac) { + pdf.add(new Txt([ + { text: 'Fecha Nacimiento: ' }, + { text: `${this.datePipe.transform(prescription.patient.fechaNac, 'dd/MM/yyyy')}`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + } + pdf.add(new Txt([ + { text: 'Sexo: ' }, + { text: `${prescription.patient.sex}`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + + let obraSocial = ''; + let numeroAfiliado = ''; + if (prescription.patient.obraSocial?.nombre) { + obraSocial = prescription.patient.obraSocial.nombre; + numeroAfiliado = prescription.patient.obraSocial.numeroAfiliado || ''; + } + pdf.add(new Txt([ + { text: 'Obra Social / Plan de salud : ' }, { text: `${(obraSocial)}`, bold: true } + ]).end); + if (obraSocial) { + pdf.add(new Txt([ + { text: 'Número de afiliado: ' }, { text: `${numeroAfiliado || 'No informado'}`, bold: true } + ]).end); + } + pdf.add(new Txt('\n').end); + + pdf.add(new Canvas([new Line(1, [515, 1]).end]).end); + pdf.add(new Txt('\n').end); + pdf.add(new Columns([new Txt('Medicamento').end, new Columns([new Txt('').end]).end]).end); + pdf.add(new Canvas([new Line(1, [515, 1]).end]).end); + // Supplies + pdf.add(new Txt('\n').end); + + prescription.supplies.forEach(supply => { + const cant = supply.quantityPresentation ? `${supply.quantity} envase(s) de ${supply.quantityPresentation} unidades` : `x ${supply.quantity}`; + pdf.add(new Columns([new Txt('' + supply.supply.name).bold().end, + new Txt(' ').end, + new Columns([new Txt(`${cant} `).bold().end]).end]).end); + pdf.add(new Txt('\n').end); + + if (supply.diagnostic) { + pdf.add(new Txt('\n').end); + pdf.add(new Txt('Diagnóstico').bold().end); + pdf.add(new Txt('' + supply.diagnostic ? supply.diagnostic : 'Sin datos registrados').end); + } + }); + if (prescription.observation) { + pdf.add(new Txt('\n').end); + pdf.add(new Txt('Observaciones').bold().end); + pdf.add(new Txt('' + prescription.observation).end); + } + pdf.add(new Txt('\n').end); + pdf.add(new Txt('\n').end); + pdf.add(new Txt('\n').end); + pdf.add(new Txt('\n').end); + pdf.add(new Txt('\n').end); + pdf.add(new Txt('\n').end); + pdf.add(new Txt('\n').end); + + + // Barcode + if (prescriptionIdBarcodeImg) { + // Si hay prescriptionId, mostrar ambos códigos en columnas + pdf.add(new Columns([ + { + stack: [barcodeImg], + alignment: 'left', + width: '55%' + }, + { + stack: [prescriptionIdLabel, prescriptionIdBarcodeImg], + alignment: 'right', + width: '45%' + } + ]).alignment('center').width('100%').end); + + // Firma del profesional debajo cuando hay prescriptionId + pdf.add(new Txt([ + { text: 'Este documento ha sido firmado \n electrónicamente por Dr.:', fontSize: 9, bold: true, italics: true }, + { text: '\n', fontSize: 3 }, + { text: `\n ${prescription.professional.businessName}`, fontSize: 14, bold: true }, + { text: `\n ${prescription.professional?.profesionGrado?.length ? + prescription.professional.profesionGrado + .map(g => `${g.profesion} MP ${g.numeroMatricula}`) + .join('\n') + : (prescription.professional?.enrollment ? `MP ${prescription.professional.enrollment}\n` : '') + }`, bold: true, fontSize: 9 } + ]).alignment('center').margin([0, 25, 0, 0]).end); + } else { + // Si no hay prescriptionId, mostrar código de barras y firma en columnas + pdf.add(new Columns([ + { + stack: [barcodeImg], + alignment: 'center', + width: '50%' + }, + { + stack: [ + new Txt([ + { text: 'Este documento ha sido firmado \n electrónicamente por Dr.:', fontSize: 9, bold: true, italics: true }, + { text: '\n', fontSize: 3 }, + { text: `\n ${prescription.professional.businessName}`, fontSize: 14, bold: true }, + { text: `\n ${prescription.professional?.profesionGrado?.length ? + prescription.professional.profesionGrado + .map(g => `${g.profesion} MP ${g.numeroMatricula}`) + .join('\n') + : (prescription.professional?.enrollment ? `MP ${prescription.professional.enrollment}\n` : '') + }`, bold: true, fontSize: 9 } ]).alignment('center').margin([0, 25, 0, 0]).end + ], + alignment: 'center', + width: '50%' + } + ]).alignment('center').width('100%').end); + } + + // Pharmacy + if (prescription.status === 'Dispensada') { + pdf.add(new Txt('\n').margin([0, 10]).end); + pdf.add(new Columns([new Txt('Dispensado por').bold().alignment('center').end, new Txt('CUIL').bold().alignment('center').end]).alignment('center').end); + pdf.add(new Columns([new Txt('' + prescription.dispensedBy.businessName.toUpperCase()).alignment('center').end, new Txt('' + prescription.dispensedBy.cuil).alignment('center').end]).alignment('center').end); + pdf.add(new Txt('\n').margin([0, 5]).end); + pdf.add(new Txt(`Fecha dispensación: ${this.datePipe.transform(prescription.dispensedAt, 'dd/MM/yyyy')}`).alignment('center').end); + } + + pdf.footer(new Txt([ + { text: ' Esta receta fue creada por emisor inscripto y válido en el Registro de Recetarios Electrónicos \n del Ministerio de Salud de la Nación - ', italics: true }, + { text: 'RL-2025-63212094-APN-SSVEIYES#MS ', bold: true } + ]).fontSize(11).alignment('center').end); + } + async printAndesPrescription(prescription: AndesPrescriptions) { + await this._generatePdf(async (pdf) => { + await this.addAndesPage(pdf, prescription); + if (prescription.medicamento.tipoReceta === 'duplicado') { + pdf.add({ text: '', pageBreak: 'after' }); + await this.addAndesPage(pdf, prescription, 'DUPLICADO'); + } + }); + } + + private async addAndesPage(pdf: PdfMakeWrapper, prescription: AndesPrescriptions, label?: string) { + if (prescription.estadoActual.tipo === 'vencida') { + pdf.watermark({ + text: 'Receta no valida para dispensa', + color: 'grey', + opacity: 0.3, + bold: true, + fontSize: 60 + }); + } + if (prescription.estadoActual.tipo === 'dispensada') { + pdf.watermark({ + text: 'DISPENSADA', + color: 'grey', + opacity: 0.3, + bold: true, + fontSize: 100 + }); + } + + const barcodeBase64 = await this.barcodeService.generateBarcodeBase64(prescription._id || prescription.idAndes); + const barcodeImg = await new Img(barcodeBase64).fit([230, 60]).alignment('center').margin([0, 20]).build(); + + let barcodeRecetaImg = null; + let barcodeRecetaLabel = null; + if (prescription.idReceta) { + const barcodeRecetaBase64 = await this.barcodeService.generateBarcodeBase64(prescription.idReceta); + barcodeRecetaLabel = new Txt('Número de receta:').fontSize(9).bold().alignment('center').margin([0, 5, 0, 0]).end; + barcodeRecetaImg = await new Img(barcodeRecetaBase64).fit([230, 60]).alignment('center').margin([0, 5]).build(); + } + + pdf.info({ + title: 'Receta digital ' + prescription.profesional.nombre + ', ' + prescription.profesional.apellido, + author: 'Andes' + }); + + const fecha = prescription.fechaRegistro ? this.datePipe.transform(prescription.fechaRegistro, 'dd/MM/yyyy') : this.datePipe.transform(prescription.fechaPrestacion, 'dd/MM/yyyy'); + + pdf.add(new Columns([ + await new Img('assets/img/LogoPdf.jpg').fit([60, 60]).build(), + new Txt('RecetAR').bold().fontSize(20).alignment('center').end, + new Txt(label ? `${label}` : '').bold().italics().fontSize(20).alignment('right').opacity(0.6).end + ]).end); + pdf.add(new Txt('\n').end); + pdf.add(new Columns([new Txt('RECETAR').bold().alignment('left').end, new Txt(`Fecha prescripción: ${fecha}`).alignment('right').end]).end); + pdf.add(new Canvas([new Line(1, [515, 1]).end]).end); + pdf.add(new Txt('\n').end); + + pdf.add(new Txt([ + { text: 'Paciente: ' }, + { text: `${prescription.paciente.apellido.toUpperCase()} ${prescription.paciente.nombre.toUpperCase()}`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + + pdf.add(new Txt([ + { text: 'DNI: ' }, + { text: `${prescription.paciente.documento}`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + if (prescription.paciente.fechaNacimiento) { + pdf.add(new Txt([ + { text: 'Fecha Nacimiento: ' }, + { text: `${this.datePipe.transform(prescription.paciente.fechaNacimiento, 'dd/MM/yyyy')}`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + } + pdf.add(new Txt([ + { text: 'Sexo: ' }, + { text: `${prescription.paciente.sexo}`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + + let obraSocial = 'No informado'; + let numeroAfiliado = ''; + if (prescription.paciente.obraSocial) { + obraSocial = prescription.paciente.obraSocial.nombre ? prescription.paciente.obraSocial.nombre : 'No informado'; + numeroAfiliado = obraSocial ? prescription.paciente.obraSocial.numeroAfiliado : ''; + } + pdf.add(new Txt([ + { text: 'Obra Social / Plan de salud : ' }, { text: `${obraSocial}`, bold: true } + ]).end); + if (obraSocial) { + pdf.add(new Txt([ + { text: 'Número de afiliado:' }, { text: `${numeroAfiliado || 'No informado'}`, bold: true } + ]).end); + } + pdf.add(new Txt('\n').end); + + pdf.add(new Canvas([new Line(1, [515, 1]).end]).end); + pdf.add(new Txt('\n').end); + pdf.add(new Columns([new Txt('Medicamento').end, new Columns([new Txt('').end]).end]).end); + pdf.add(new Canvas([new Line(1, [515, 1]).end]).end); + pdf.add(new Txt('\n').end); + + pdf.add(new Columns([ + new Txt('' + prescription.medicamento.concepto.term).bold().end, + new Columns([ + new Txt(' ').end, + new Txt(` ${prescription.medicamento.cantEnvases} envase(s) de ${prescription.medicamento.cantidad} unidad(es)`).bold().end] + ).end + ]).end); + pdf.add(new Txt('\n').end); + + pdf.add(new Canvas([new Line(1, [515, 1]).end]).end); + pdf.add(new Txt('\n').end); + + if (prescription.diagnostico) { + pdf.add(new Txt('\n').end); + pdf.add(new Txt('Diagnóstico').bold().end); + pdf.add(new Txt('' + (prescription.diagnostico.term ? prescription.diagnostico.term : prescription.diagnostico.descripcion)).end); + } + if (prescription.medicamento.dosisDiaria.notaMedica) { + pdf.add(new Txt('\n').end); + pdf.add(new Txt('Nota medica').bold().end); + pdf.add(new Txt('' + prescription.medicamento.dosisDiaria.notaMedica).end); + } + if (prescription.dispensa.length > 0) { + pdf.add(new Txt('\n').end); + pdf.add(new Txt('Observaciones').bold().end); + prescription.dispensa.forEach(supply => { + supply.medicamento?.forEach(medicamento => { + medicamento.observacion ? pdf.add(new Txt('' + medicamento.observacion).end) : null; + }); + }); + } + pdf.add(new Txt('\n').end); + pdf.add(new Txt('Dosis: ' + (prescription.medicamento.dosisDiaria.dosis ? prescription.medicamento.dosisDiaria.dosis : 'No informado') + (`${typeof (prescription.medicamento.dosisDiaria.intervalo) === 'string' ? ` por ${prescription.medicamento.dosisDiaria.intervalo}` : ''}`)).end); + pdf.add(new Txt('Duración tratamiento: ' + (prescription.medicamento.dosisDiaria.dias ? prescription.medicamento.dosisDiaria.dias + ' dia/s' : 'No informado')).end); + pdf.add(new Txt('\n').end); + pdf.add(new Txt('\n').end); + + if (barcodeRecetaImg) { + pdf.add(new Columns([ + { width: '50%', stack: [barcodeImg] }, + { width: '50%', stack: [barcodeRecetaLabel, barcodeRecetaImg], alignment: 'right' } + ]).end); + } else { + pdf.add(new Columns([barcodeImg]).end); + } + + pdf.add(new Txt([ + { text: 'Este documento ha sido firmado \n electrónicamente por Dr.:', fontSize: 9, bold: true, italics: true }, + { text: '\n', fontSize: 3 }, + { text: `\n ${prescription.profesional.apellido}`, fontSize: 14, bold: true }, + { text: `\n MP ${prescription.profesional.matricula}`, bold: true, fontSize: 10 } + ]).alignment('center').end); + + if (prescription.estadoActual.tipo === 'dispensada' && prescription.estadoDispensaActual.fecha) { + pdf.add(new Txt(`Fecha dispensación: ${this.datePipe.transform(prescription.estadoDispensaActual.fecha, 'dd/MM/yyyy')}`).end); + } + + pdf.footer(new Txt([ + { text: 'Esta receta fue creada por emisor inscripto y válido en el Registro de Recetarios Electrónicos \n del Ministerio de Salud de la Nación - ', italics: true }, + { text: 'RL-2025-63212094-APN-SSVEIYES#MS', bold: true } + ]).fontSize(11).alignment('center').end); + } + + // Print certificate + async printCertificate(certificate: Certificate) { + await this._generatePdf(async (pdf) => { + pdf.info({ + title: 'Certificado médico', + author: 'RecetAR' + }); + + const encryptedId = this.certificatesService.encryptId(certificate._id); + const qrUrl = `${environment.FRONTEND_URL}/certificate/${encryptedId}`; + const qrCodeImage = await this.generateQRCode(qrUrl); + + pdf.add(new Columns([await new Img('assets/img/LogoPdf.jpg').fit([60, 60]).build(), new Txt('RecetAR').bold().fontSize(20).alignment('center').end, new Txt('').end]).end); + pdf.add(new Txt('\n').end); + pdf.add(new Txt('CERTIFICADO MÉDICO').bold().fontSize(16).alignment('center').end); + pdf.add(new Txt('\n').end); + pdf.add(new Txt(`Fecha: ${this.datePipe.transform(certificate.createdAt, 'dd/MM/yyyy')}`).alignment('right').end); + pdf.add(new Canvas([new Line(1, [515, 1]).end]).end); + pdf.add(new Txt('\n').end); + + pdf.add(new Txt([ + { text: 'Paciente: ' }, + { text: `${certificate.patient.lastName.toUpperCase()} ${certificate.patient.firstName.toUpperCase()}`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + + pdf.add(new Txt([ + { text: 'DNI: ' }, + { text: `${certificate.patient.dni}`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + + if (certificate.patient.fechaNac) { + pdf.add(new Txt([ + { text: 'Fecha Nacimiento: ' }, + { text: `${this.datePipe.transform(certificate.patient.fechaNac, 'dd/MM/yyyy')}`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + } + + pdf.add(new Txt([ + { text: 'Sexo: ' }, + { text: `${certificate.patient.sex}`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + + let obraSocial = ''; + let numeroAfiliado = ''; + if (certificate.patient.obraSocial?.nombre) { + obraSocial = certificate.patient.obraSocial.nombre; + numeroAfiliado = certificate.patient.obraSocial.numeroAfiliado || ''; + } + pdf.add(new Txt([ + { text: 'Obra Social / Plan de salud: ' }, { text: `${obraSocial || 'No informado'}`, bold: true } + ]).end); + if (obraSocial) { + pdf.add(new Txt([ + { text: 'Número de afiliado: ' }, { text: `${numeroAfiliado || 'No informado'}`, bold: true } + ]).end); + } + pdf.add(new Txt('\n').end); + + if (certificate.startDate) { + pdf.add(new Txt([ + { text: 'Fecha de inicio: ' }, { text: `${this.datePipe.transform(certificate.startDate, 'dd/MM/yyyy HH:mm')} hs`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + + } + if (certificate.endDate) { + pdf.add(new Txt([ + { text: 'Fecha de fin: ' }, { text: `${this.datePipe.transform(certificate.endDate, 'dd/MM/yyyy HH:mm')} hs`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + + } + if (certificate.cantDias) { + + pdf.add(new Txt([ + { text: 'Cantidad de días: ' }, { text: `${certificate.cantDias}`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + } + + pdf.add(new Canvas([new Line(1, [515, 1]).end]).end); + pdf.add(new Txt('\n').end); + + pdf.add(new Txt('CERTIFICO QUE:').bold().end); + pdf.add(new Txt('\n').end); + pdf.add(new Txt(`${certificate.certificate}`).end); + pdf.add(new Txt('\n\n').end); + + pdf.add(new Canvas([new Line(1, [515, 1]).end]).end); + pdf.add(new Txt('\n').end); + + pdf.add(new Columns([ + { + stack: [ + new Txt([ + { text: 'Este documento ha sido firmado \n electrónicamente por Dr.:', fontSize: 9, bold: true, italics: true }, + { text: '\n', fontSize: 3 }, + { text: `\n ${certificate.professional.businessName}`, fontSize: 14, bold: true }, + { text: `\n ${certificate.professional?.profesionGrado?.length ? + certificate.professional.profesionGrado + .map(g => `${g.profesion} MP ${g.numeroMatricula}`) + .join('\n') + : (certificate.professional?.enrollment ? `MP ${certificate.professional.enrollment}\n` : '') + }`, bold: true, fontSize: 9 } + ]).alignment('center').margin([0, 25, 0, 0]).end + ], + alignment: 'center', + width: '50%' + }, + { + stack: qrCodeImage ? [ + new Txt('Verificar autenticidad:').bold().alignment('center').end, + new Txt('\n').end, + await new Img(qrCodeImage).fit([100, 100]).alignment('center').link(qrUrl).build() + ] : [], + alignment: 'center', + width: '50%' + } + ]).alignment('center').width('100%').end); + pdf.footer(new Txt([ + { text:'Este certificado fue emitido digitalmente a través de RecetAR - ', italics: true }, + { text:`Fecha de emisión: ${this.datePipe.transform(certificate.createdAt, 'dd/MM/yyyy HH:mm')}`, bold: true } + ]).fontSize(11).alignment('center').end); + }); + } + + // Print practice + async printPractice(practice: Practice) { + await this._generatePdf(async (pdf) => { + pdf.info({ + title: 'Práctica médica', + author: 'RecetAR' + }); + + const encryptedId = this.practicesService.encryptId(practice._id); + const qrUrl = `${environment.FRONTEND_URL}/practice/${encryptedId}`; + const qrCodeImage = await this.generateQRCode(qrUrl); + + pdf.add(new Columns([await new Img('assets/img/LogoPdf.jpg').fit([60, 60]).build(), new Txt('RecetAR').bold().fontSize(20).alignment('center').end, new Txt('').end]).end); + pdf.add(new Txt('\n').end); + pdf.add(new Txt('PRÁCTICA MÉDICA').bold().fontSize(16).alignment('center').end); + pdf.add(new Txt('\n').end); + pdf.add(new Txt(`Fecha: ${this.datePipe.transform(practice.date, 'dd/MM/yyyy')}`).alignment('right').end); + pdf.add(new Canvas([new Line(1, [515, 1]).end]).end); + pdf.add(new Txt('\n').end); + + pdf.add(new Txt([ + { text: 'Profesional: ' }, + { text: `${practice.professional.businessName}`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + + pdf.add(new Txt([ + { text: 'Matrícula: ' }, + { text: `${practice.professional.enrollment}`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + + pdf.add(new Canvas([new Line(1, [515, 1]).end]).end); + pdf.add(new Txt('\n').end); + + pdf.add(new Txt([ + { text: 'Paciente: ' }, + { text: `${practice.patient.lastName.toUpperCase()} ${practice.patient.firstName.toUpperCase()}`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + + pdf.add(new Txt([ + { text: 'DNI: ' }, + { text: `${practice.patient.dni}`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + + pdf.add(new Txt([ + { text: 'Sexo: ' }, + { text: `${practice.patient.sex}`, bold: true } + ]).end); + pdf.add(new Txt('\n').end); + + let obraSocial = ''; + let numeroAfiliado = ''; + + if (practice.patient.obraSocial?.nombre) { + obraSocial = practice.patient.obraSocial.nombre; + numeroAfiliado = practice.patient.obraSocial.numeroAfiliado || ''; + } + pdf.add(new Txt([ + { text: 'Obra Social / Plan de salud: ' }, { text: `${obraSocial || 'No informado'}`, bold: true } + ]).end); + if (obraSocial) { + pdf.add(new Txt([ + { text: 'Número de afiliado: ' }, { text: `${numeroAfiliado || 'No informado'}`, bold: true } + ]).end); + } + pdf.add(new Txt('\n').end); + + pdf.add(new Canvas([new Line(1, [515, 1]).end]).end); + pdf.add(new Txt('\n').end); + + pdf.add(new Txt('PRÁCTICA REALIZADA:').bold().end); + pdf.add(new Txt('\n').end); + pdf.add(new Txt(`${practice.practice}`).end); + pdf.add(new Txt('\n').end); + + if (practice.diagnostic) { + pdf.add(new Txt('DIAGNÓSTICO:').bold().end); + pdf.add(new Txt(`${practice.diagnostic}`).end); + pdf.add(new Txt('\n').end); + } + + if (practice.indications) { + pdf.add(new Txt('INDICACIONES:').bold().end); + pdf.add(new Txt(`${practice.indications}`).end); + pdf.add(new Txt('\n').end); + } + + pdf.add(new Canvas([new Line(1, [515, 1]).end]).end); + pdf.add(new Txt('\n').end); + + pdf.add(new Columns([ + { + stack: [ + new Txt([ + { text: 'Este documento ha sido firmado \n electrónicamente por Dr.:', fontSize: 9, bold: true, italics: true }, + { text: '\n', fontSize: 3 }, + { text: `\n ${practice.professional.businessName}`, fontSize: 14, bold: true }, + { text: `\n ${practice.professional?.profesionGrado?.length ? + practice.professional.profesionGrado + .map(g => `${g.profesion} MP ${g.numeroMatricula}`) + .join('\n') + : (practice.professional?.enrollment ? `MP ${practice.professional.enrollment}\n` : '') + }`, bold: true, fontSize: 9 } + ]).alignment('center').margin([0, 25, 0, 0]).end + ], + alignment: 'center', + width: '50%' + }, + { + stack: qrCodeImage ? [ + new Txt('Verificar autenticidad:').bold().alignment('center').end, + new Txt('\n').end, + await new Img(qrCodeImage).fit([100, 100]).alignment('center').link(qrUrl).build() + ] : [], + alignment: 'center', + width: '50%' + } + ]).alignment('center').width('100%').end); + pdf.footer(new Txt([ + { text: 'Esta receta fue creada por emisor inscripto y valido en el Registro de Recetarios Electrónicos \n del Ministerio de Salud de la Nación - ', italics: true }, + { text: 'RL-2025-63212094-APN-SSVEIYES#MS', bold: true } + ]).fontSize(11).alignment('center').end); + }); + } + + private addProfessionalSignature(pdf: PdfMakeWrapper, professional: any) { + pdf.add(new Columns([ + { + stack: [], + alignment: 'center', + width: '50%' + }, + { + stack: [ + new Txt([ + { text: 'Este documento ha sido firmado \n electrónicamente por Dr.:', fontSize: 9, bold: true, italics: true }, + { text: '\n', fontSize: 3 }, + { text: `\n ${professional.businessName}`, fontSize: 14, bold: true }, + { text: `\n ${professional?.profesionGrado?.length ? + professional.profesionGrado + .map(g => `${g.profesion} MP ${g.numeroMatricula}`) + .join('\n') + : (professional?.enrollment ? `MP ${professional.enrollment}\n` : '') + }`, bold: true, fontSize: 9 } + ]).alignment('center').margin([0, 25, 0, 0]).end + ], + alignment: 'center', + width: '50%' + } + ]).alignment('center').width('100%').end); + } + + private async generateQRCode(url: string): Promise { + try { + const qrCodeDataURL = await QRCode.toDataURL(url, { + width: 150, + margin: 2, + color: { + dark: '#000000', + light: '#FFFFFF' + } + }); + return qrCodeDataURL; + } catch (error) { + return ''; + } + } +} \ No newline at end of file diff --git a/src/app/shared/layouts/footer/footer.component.sass b/src/app/shared/layouts/footer/footer.component.sass index 6fa89a2a..a0b47f30 100644 --- a/src/app/shared/layouts/footer/footer.component.sass +++ b/src/app/shared/layouts/footer/footer.component.sass @@ -2,59 +2,30 @@ :host display: block - height: $footer-height + height: $footer-height !important @media (min-width: $x-small-devices) and (max-width: $small-devices) height: auto -.logo-01, .logo-02 - @media (min-width: $xx-larger-devices) and (max-width: $xxx-larger-devices) - width: 170px - height: 50px - - @media (min-width: $x-larger-devices) and (max-width: $xx-larger-devices) - width: 170px - height: 50px - - @media (min-width: $larger-devices) and (max-width: $x-larger-devices) - width: 120px - height: 40px - - @media (min-width: $medium-devices) and (max-width: $larger-devices) - width: 120px - height: 40px - - @media (min-width: $small-devices) and (max-width: $medium-devices) - width: 120px - height: 40px - - @media (min-width: $x-small-devices) and (max-width: $small-devices) - width: 120px - height: 40px - -.logo-03 - @media (min-width: $xx-larger-devices) and (max-width: $xxx-larger-devices) - width: 100px - height: 50px - - @media (min-width: $x-larger-devices) and (max-width: $xx-larger-devices) - width: 100px - height: 50px - - @media (min-width: $larger-devices) and (max-width: $x-larger-devices) - width: 77px - height: 40px - - @media (min-width: $medium-devices) and (max-width: $larger-devices) - width: 77px - height: 40px - - @media (min-width: $small-devices) and (max-width: $medium-devices) - width: 77px - height: 40px - - @media (min-width: $x-small-devices) and (max-width: $small-devices) - width: 77px - height: 40px +.logo-01, .logo-02, .logo-03 + max-height: 45px + width: auto + object-fit: contain + + @media (max-width: $medium-devices) + max-height: 35px + + @media (max-width: $small-devices) + max-height: 30px footer width: 100% + padding: 10px 0 + align-items: center + min-height: 60px + max-height: 80px + + img + max-height: 50px + width: auto + object-fit: contain + margin: 0 10px diff --git a/src/app/shared/layouts/footer/footer.component.spec.ts b/src/app/shared/layouts/footer/footer.component.spec.ts index 2ca6c454..36089f15 100644 --- a/src/app/shared/layouts/footer/footer.component.spec.ts +++ b/src/app/shared/layouts/footer/footer.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { FooterComponent } from './footer.component'; @@ -6,7 +6,7 @@ describe('FooterComponent', () => { let component: FooterComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ FooterComponent ] }) diff --git a/src/app/shared/layouts/header/header.component.html b/src/app/shared/layouts/header/header.component.html index ba4a9c06..f6a51af1 100644 --- a/src/app/shared/layouts/header/header.component.html +++ b/src/app/shared/layouts/header/header.component.html @@ -5,10 +5,20 @@ RecetAR + + Usuarios + Recetas_farmacias + + + + + +

Ámbito {{(ambito$ | async) === 'publico' ? 'público' : (ambito$ | async)}}

Cambiar contraseña + Cambiar ámbito
diff --git a/src/app/shared/layouts/header/header.component.spec.ts b/src/app/shared/layouts/header/header.component.spec.ts index 2d0479d7..48d26266 100644 --- a/src/app/shared/layouts/header/header.component.spec.ts +++ b/src/app/shared/layouts/header/header.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { HeaderComponent } from './header.component'; @@ -6,7 +6,7 @@ describe('HeaderComponent', () => { let component: HeaderComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ HeaderComponent ] }) diff --git a/src/app/shared/layouts/header/header.component.ts b/src/app/shared/layouts/header/header.component.ts index 676a2a92..21d1b025 100644 --- a/src/app/shared/layouts/header/header.component.ts +++ b/src/app/shared/layouts/header/header.component.ts @@ -2,6 +2,7 @@ import { Component, OnInit } from '@angular/core'; import { AuthService } from '@auth/services/auth.service'; import { Router } from '@angular/router'; import { Observable } from 'rxjs'; +import { AmbitoService } from '../../../auth/services/ambito.service'; @Component({ selector: 'app-header', @@ -12,12 +13,22 @@ export class HeaderComponent implements OnInit { isLoggedIn$: Observable; businessName$: Observable; - - constructor(private authService: AuthService, private router: Router) { } + isAuditRole$: Observable; + isProfessionalBothRoles$: Observable; + ambito$: Observable; + + constructor( + private authService: AuthService, + private router: Router, + private ambitoService: AmbitoService, + ) { } ngOnInit(): void { this.isLoggedIn$ = this.authService.isLoggedIn; this.businessName$ = this.authService.getBusinessName; + this.isAuditRole$ = this.authService.getIsAudit; + this.isProfessionalBothRoles$ = this.authService.getIsProfessionalBothRoles; + this.ambito$ = this.ambitoService.getAmbitoSeleccionado; } logout(){ diff --git a/src/app/shared/ngx-turnstile/interfaces/turnstile-options.ts b/src/app/shared/ngx-turnstile/interfaces/turnstile-options.ts new file mode 100644 index 00000000..438ce5a3 --- /dev/null +++ b/src/app/shared/ngx-turnstile/interfaces/turnstile-options.ts @@ -0,0 +1,11 @@ +export interface TurnstileOptions { + sitekey: string; + action?: string; + cData?: string; + callback?: (token: string) => void; + 'error-callback'?: (errorCode: string) => boolean; + 'expired-callback'?: () => void; + theme?: 'light' | 'dark' | 'auto'; + tabindex?: number; + appearance?: 'always' | 'execute' | 'interaction-only'; +} \ No newline at end of file diff --git a/src/app/shared/ngx-turnstile/ngx-turnstile-forms.module.ts b/src/app/shared/ngx-turnstile/ngx-turnstile-forms.module.ts new file mode 100644 index 00000000..5aadbd06 --- /dev/null +++ b/src/app/shared/ngx-turnstile/ngx-turnstile-forms.module.ts @@ -0,0 +1,10 @@ +import { NgModule } from '@angular/core'; +import { NgxTurnstileValueAccessorDirective } from './ngx-turnstile-value-accessor.directive'; +import { NgxTurnstileModule } from './ngx-turnstile.module'; + +@NgModule({ + declarations: [NgxTurnstileValueAccessorDirective], + imports: [NgxTurnstileModule], + exports: [NgxTurnstileValueAccessorDirective], +}) +export class NgxTurnstileFormsModule {} \ No newline at end of file diff --git a/src/app/shared/ngx-turnstile/ngx-turnstile-value-accessor.directive.ts b/src/app/shared/ngx-turnstile/ngx-turnstile-value-accessor.directive.ts new file mode 100644 index 00000000..f687f7c2 --- /dev/null +++ b/src/app/shared/ngx-turnstile/ngx-turnstile-value-accessor.directive.ts @@ -0,0 +1,50 @@ +import { Directive, forwardRef, OnInit} from '@angular/core'; +import { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms'; +import { NgxTurnstileComponent } from './ngx-turnstile.component'; + +@Directive({ + selector: 'ngx-turnstile[formControl], ngx-turnstile[formControlName], ngx-turnstile[ngModel]', + providers: [ + { + provide: NG_VALUE_ACCESSOR, + useExisting: forwardRef(() => NgxTurnstileValueAccessorDirective), + multi: true, + }, + ], +}) +export class NgxTurnstileValueAccessorDirective implements ControlValueAccessor, OnInit { + private onChange!: (value: string) => void; + private onTouched!: () => void; + private resolved: boolean = false; + + constructor(private turnstileComp: NgxTurnstileComponent) {} + + ngOnInit(): void { + this.turnstileComp.resolved.subscribe((token: string) =>{ + this.resolved = !!token; + + if (this.onChange) { + this.onChange(token); + } + + if (this.onTouched) { + this.onTouched(); + } + }); + } + + writeValue(value: any): void { + if (this.resolved) { + this.resolved = false; + this.turnstileComp.reset(); + } + } + + registerOnChange(fn: any): void { + this.onChange = fn; + } + + registerOnTouched(fn: any): void { + this.onTouched = fn; + } +} \ No newline at end of file diff --git a/src/app/shared/ngx-turnstile/ngx-turnstile.component.spec.ts b/src/app/shared/ngx-turnstile/ngx-turnstile.component.spec.ts new file mode 100644 index 00000000..071f0640 --- /dev/null +++ b/src/app/shared/ngx-turnstile/ngx-turnstile.component.spec.ts @@ -0,0 +1,21 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { NgxTurnstileComponent } from './ngx-turnstile.component'; + +describe('NgxTurnstileComponent', () => { + let component: NgxTurnstileComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [NgxTurnstileComponent], + }).compileComponents(); + + fixture = TestBed.createComponent(NgxTurnstileComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); \ No newline at end of file diff --git a/src/app/shared/ngx-turnstile/ngx-turnstile.component.ts b/src/app/shared/ngx-turnstile/ngx-turnstile.component.ts new file mode 100644 index 00000000..11548892 --- /dev/null +++ b/src/app/shared/ngx-turnstile/ngx-turnstile.component.ts @@ -0,0 +1,129 @@ +import { + Component, + AfterViewInit, + ElementRef, + Input, + NgZone, + Output, + EventEmitter, + OnDestroy, + Inject, +} from '@angular/core'; +import { DOCUMENT } from '@angular/common'; +import { TurnstileOptions } from './interfaces/turnstile-options'; + + +declare global { + interface Window { + onloadTurnstileCallback: () => void; + turnstile: { + render: ( + idOrContainer: string | HTMLElement, + options: TurnstileOptions, + ) => string; + reset: (widgetIdOrContainer: string | HTMLElement) => void; + getResponse: ( + widgetIdOrContainer: string | HTMLElement, + ) => string | undefined; + remove: (widgetIdOrContainer: string | HTMLElement) => void; + }; + } +} + +const SCRIPT_ID = 'ngx-turnstile'; +const CALLBACK_NAME = 'onloadTurnstileCallback'; +type SupportedVersion = '0'; + +@Component({ + selector: 'ngx-turnstile', + template: ``, + exportAs: 'ngx-turnstile', +}) +export class NgxTurnstileComponent implements AfterViewInit, OnDestroy { + @Input() siteKey!: string; + @Input() action?: string; + @Input() cData?: string; + @Input() theme?: 'light' | 'dark' | 'auto'; + @Input() version: SupportedVersion = '0'; + @Input() tabIndex?: number; + @Input() appearance?: 'always' | 'execute' | 'interaction-only' = 'always'; + + @Output() resolved = new EventEmitter(); + @Output() errored = new EventEmitter(); + + private widgetId!: string; + + constructor( + private elementRef: ElementRef, + private zone: NgZone, + @Inject(DOCUMENT) private document: Document, + ) {} + + private _getCloudflareTurnstileUrl(): string { + if (this.version === '0') { + return 'https://challenges.cloudflare.com/turnstile/v0/api.js'; + } + throw 'Version not defined in ngx-turnstile component.'; + } + + public ngAfterViewInit(): void { + let turnstileOptions: TurnstileOptions = { + sitekey: this.siteKey, + theme: this.theme, + tabindex: this.tabIndex, + action: this.action, + cData: this.cData, + appearance: this.appearance, + callback: (token: string) => { + this.zone.run(() => this.resolved.emit(token)); + }, + 'error-callback': (errorCode: string): boolean => { + this.zone.run(() => this.errored.emit(errorCode)); + return false; + }, + 'expired-callback': () => { + this.zone.run(() => this.reset()); + }, + }; + + window[CALLBACK_NAME] = () => { + if (!this.elementRef?.nativeElement) { + return; + } + + this.widgetId = window.turnstile.render( + this.elementRef.nativeElement, + turnstileOptions, + ); + }; + + if (this.scriptLoaded()) { + window[CALLBACK_NAME](); + return; + } + + const script = this.document.createElement('script'); + script.src = `${this._getCloudflareTurnstileUrl()}?render=explicit&onload=${CALLBACK_NAME}`; + script.id = SCRIPT_ID; + script.async = true; + script.defer = true; + this.document.head.appendChild(script); + } + + public reset(): void { + if (this.widgetId) { + this.resolved.emit(null); + window.turnstile.reset(this.widgetId); + } + } + + public ngOnDestroy(): void { + if (this.widgetId) { + window.turnstile.remove(this.widgetId); + } + } + + public scriptLoaded(): boolean { + return !!this.document.getElementById(SCRIPT_ID); + } +} \ No newline at end of file diff --git a/src/app/shared/ngx-turnstile/ngx-turnstile.module.ts b/src/app/shared/ngx-turnstile/ngx-turnstile.module.ts new file mode 100644 index 00000000..f0361e49 --- /dev/null +++ b/src/app/shared/ngx-turnstile/ngx-turnstile.module.ts @@ -0,0 +1,9 @@ +import { NgModule } from '@angular/core'; +import { NgxTurnstileComponent } from './ngx-turnstile.component'; + +@NgModule({ + declarations: [NgxTurnstileComponent], + imports: [], + exports: [NgxTurnstileComponent], +}) +export class NgxTurnstileModule {} \ No newline at end of file diff --git a/src/app/shared/ngx-turnstile/ngx-turnstile.service.spec.ts b/src/app/shared/ngx-turnstile/ngx-turnstile.service.spec.ts new file mode 100644 index 00000000..6a83053e --- /dev/null +++ b/src/app/shared/ngx-turnstile/ngx-turnstile.service.spec.ts @@ -0,0 +1,15 @@ +import { TestBed } from "@angular/core/testing"; +import { NgxTurnstileService } from './ngx-turnstile.service'; + +describe('NgxTurnstileService', () => { + let service: NgxTurnstileService; + + beforeEach(() => { + TestBed.configureTestingModule({}); + service = TestBed.inject(NgxTurnstileService); + }); + + it('shoud be created', () => { + expect(service).toBeTruthy(); + }) +}) \ No newline at end of file diff --git a/src/app/shared/ngx-turnstile/ngx-turnstile.service.ts b/src/app/shared/ngx-turnstile/ngx-turnstile.service.ts new file mode 100644 index 00000000..403b6c16 --- /dev/null +++ b/src/app/shared/ngx-turnstile/ngx-turnstile.service.ts @@ -0,0 +1,8 @@ +import { Injectable } from "@angular/core"; + +@Injectable({ + providedIn: 'root', +}) +export class NgxTurnstileService { + constructor() {} +} \ No newline at end of file diff --git a/src/app/shared/not-found/not-found.component.spec.ts b/src/app/shared/not-found/not-found.component.spec.ts index 35189ed0..113c138f 100644 --- a/src/app/shared/not-found/not-found.component.spec.ts +++ b/src/app/shared/not-found/not-found.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { NotFoundComponent } from './not-found.component'; @@ -6,7 +6,7 @@ describe('NotFoundComponent', () => { let component: NotFoundComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ NotFoundComponent ] }) diff --git a/src/app/shared/styles/_variables.sass b/src/app/shared/styles/_variables.sass index 8f1870ef..1c413e92 100644 --- a/src/app/shared/styles/_variables.sass +++ b/src/app/shared/styles/_variables.sass @@ -9,6 +9,6 @@ $x-larger-devices: 1440px // (large devices) $xx-larger-devices: 1680px // (large devices) $xxx-larger-devices: 1920px // (large devices) -$header-height: 64px -$footer-height: 50px +$header-height: 54px +$footer-height: 40px $app-component: 20px diff --git a/src/app/utils/custome-validators/cuil.validator.ts b/src/app/utils/custome-validators/cuil.validator.ts new file mode 100644 index 00000000..479967b8 --- /dev/null +++ b/src/app/utils/custome-validators/cuil.validator.ts @@ -0,0 +1,30 @@ +import { AbstractControl, ValidationErrors } from '@angular/forms'; + +export function cuilValidator(control: AbstractControl): ValidationErrors | null { + const cuil = control.value; + + if (!cuil) return null; // No validar si está vacío (para uso combinado con Validators.required) + + const cuilRegex = /^\d{11}$/; + if (!cuilRegex.test(cuil)) { + return { invalidFormat: true }; + } + + const coeficientes = [5, 4, 3, 2, 7, 6, 5, 4, 3, 2]; + const nums = cuil.split('').map(n => parseInt(n, 10)); + + let sum = 0; + for (let i = 0; i < 10; i++) { + sum += nums[i] * coeficientes[i]; + } + + let verificador = 11 - (sum % 11); + if (verificador === 11) verificador = 0; + else if (verificador === 10) verificador = 9; + + if (verificador !== nums[10]) { + return { invalidCuil: true }; + } + + return null; +} \ No newline at end of file diff --git a/src/app/utils/custome-validators/date.validator.ts b/src/app/utils/custome-validators/date.validator.ts new file mode 100644 index 00000000..c1cb993a --- /dev/null +++ b/src/app/utils/custome-validators/date.validator.ts @@ -0,0 +1,17 @@ + + +import { AbstractControl, ValidationErrors } from '@angular/forms'; + +export function fechaValida(control: AbstractControl): ValidationErrors | null { + const value = control.value; + if (!value) return null; + const fecha = new Date(value); + const hoy = new Date(); + fecha.setHours(0, 0, 0, 0); + hoy.setHours(0, 0, 0, 0); + // Verifica que la fecha sea válida y anterior a hoy + if (isNaN(fecha.getTime())) { + return { invalidDate: true }; + } + return null; +} \ No newline at end of file diff --git a/src/assets/img/LogoAndes.svg b/src/assets/img/LogoAndes.svg new file mode 100644 index 00000000..13d9fd82 --- /dev/null +++ b/src/assets/img/LogoAndes.svg @@ -0,0 +1,27 @@ + diff --git a/src/assets/img/logo_01.svg b/src/assets/img/logo_01.svg index 67e1e03d..93fd6a43 100644 --- a/src/assets/img/logo_01.svg +++ b/src/assets/img/logo_01.svg @@ -1,89 +1,5174 @@ - - - - -logo_01 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +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 +27vd2cKy8zN31buZPo/RWLGutkWKx5cG83wWjQ+P3eGdSmPGo9qpS4O+U2gsr7m2i4tnLY3d8xSa +W9rVWdUZHafxLm3ZeX8OTare+nbv6GSlMdo6x1zTeVrSD60xK7q1Rds8tzRWo3i2qudrMHHPfM6+ +W/3SUada/ZCm7exp31aqGdOXhba6LbzPVZo96sk0aba623Qaq9pja4qsTG/JaucokepMr+c6SDZ1 +U8RbO82vduoGDzqNVurJNauJVbeKdecq6XZsTaJi3lbPes7SWCmdXYO+0beJZ0f1RtU/uyU1PLd+ +rfRkk+lDlUbz7NxNbdHVbertsUqTl3roxlyVaXtkevJ8ezZNUd1qd2mcp8fWmDDx5lj5xMM03/RZ +WcfIxrxrR0tz+z1240Kls73ynvxBNcbbRVsjzPNL+p2jsU9qtpjm94+dQVRM22qtncw0uPazZm5L +Tcs2184NnwZV7/hMGRdrrWnnm0ZdevCMUp3azMTjNFurmsaOTqm5EeFr12lOvcdr0vrXYiIdu3m9 +SWarez2UaUzvTqrRvLJtXb+zmeau6Fgao2vV7HB/jOZ16T1Os7+3bMurx5nmzzzXrM1jN7danu3q +4jlMc6d16CYR8bbFTLMmO7fmtWlZ5zTVmM9qHrpRKt9rz1oHNY2V1ZaerniUnGaLqXcW8zZprb+i +PLZNmk++pRudVyrGiQ6ABCZgKJjAZE2YgDGDQ4UQTLyCg8GCRIQGNKjgSCYwDA8UBggeJCYaGlCh +wQEDAkxwmCARIcEBg4kICwhgCIAghvbUUH/0PZun5ky+luapLYWAkKZX6ZiemiLXri6tHdJSCGvC +Z+r6HASD19ddpwwBMYZ3yxveISMqY1R7dvGV9Lyi2lHEMgRzlfnjpkGYgDFTFxpu/ZyemiO9n8tS +CEaR9rLuRgjmbnf0Uy7muQ1qnjP/k9qPQjCJN+apnr6OFQSGBwqDAmJsDO/OHhqaXMSTdDdjCKq0 +dbzm+jhtyBQtBEMBWgaQRNNMK69IZrq4xmNCkw6HyuZnl5RH9JESX6p6Ln1WpIZWKUHCOe1Mh7SK +B6voMstsumba7Hz6s0WWaYaH5HOzId5JK/MRLSYa5pq38pJuqc6X9+2yS58vkyyfZ5el80YXWq/M +hj70vex0i1LRa3elMTGP6PSz0nfaRIjHk8uH0miuozyJxlQ1+bw+vpMkr9djRD2IiaVns9TC0Y7q +IqktT189eF6t1bKj57VzVd5nCz4Kidqt9ievbvdVfo3ojlq5DlnZ7H5VSGZ3p6ofHroUCuCxbq8X +pt1YHeyzKnlW6ZWedn6V68vd46yrs7q1G6t8dboixTpe6SlXB8lpkQISKCCBbo+vA/sc+mRip3Tp +7NihVh1b+dhXPEpZ53Z4TmmRjErJ9l7tncvbg4lLiOc0T39U6Vyu75xatfZ5Mm3bc1n24zxqh/Cu +yHcSTat+x4tGPvTzmqmpkf2vXevgD4uOXUmPNn71+dtJlq5D5b08Q1JjLqHLyLl55bze2kFb8nfT +Kp+0pD9KPGgkNfspZ+GtdtUdZm1i+ad8UrlMpacnOik9X5Vps7o7H5Omrc++g0uzc2Q7QVQrUnW6 +1N+rLw+mc63uYGqSXo/VOaadylPK88z6/ex1bTqW6VW+05ts+yM81qvdwauZqo6Sav3W7u5emn/V +IZ2vkF5Vmi+7VjePS3uwbHpq+UW8y/tsqx8859N8Smd552fipeU9dfHqrfyh9fTnPcMkpDKjVPR1 +M/eZ61XMtO3lsfSt6lV+z98j509X8ZwvtJlO17e7b6WiYmVqmg7JSXrnVPah8b5pjT4jQ1zfrfdT +Gdp9kfBYVfqszqXmu5XqHrOyTap7Vdl5VdJi2t2qNIte97vpZJXv5t+SqY+s7miVfWl3p6qT9U6V +iKZTw9e6UJ1qSiehdp2ohHevLhbhjego6+yQjP7xnYWqVtpNvDq3juz26yxtp5t6uiee1FhEdPha +197h1z6eEa/qqiTF6+bP0zc05RVdh4Z1pptOXUK8qm/3Cu+zHa3XUNWG9zvVvXvNPUZlr6vCtZOe +d3IdWveuJzpGRXSYd3LlsevuOhntldqr6M5eGbP01FXdMiv3Lqutqjrdi+equkK9dSGdV/mEiYcu +WqXSy9W7XyWedWmVJaHvtrqq+1Ltoll4Vd3wtsbX8xwzL+nWTOtW98qishrh875VpNqD67rvrXr/ +usOvT2UvSyy171XEk9qV11e/xONVnVKfla0dbXOZ84ZGSztSepNuNeveO5jewjMtOudJV0+hf0hF +d7jn57SqplMvNfFWr7kQ8bZJJ9V2PXtbsM2+qXbPq1yFepW/8/vwZHjHa6KD6qzMxFttl068WeEx +9fU/XLUar0R76CYqW516p0rSd5Iq61l6X/WtdFHvSuVfOdO+6HJSOc2FzjPecyupvne/q7pUxDu6 +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 +dz3PATAAEhoAGIDr3l28vtc2L9N9vpP5Lvf6vtekjhkRsobGKYZfjVIADODk7mf0uW3buWvGXed7 +n/N7v+O6rPey3tt9neM1Xcv0XdO3ntc5v+82fdu2fcv0PcO2eZm+eRm3e57n+17Gbbqu753OaXvf +dxrPZb6+5b7mcd4l9zq/13Lf13ed2zP625Z7vb9zubddM/odr/t+l3G8vnGZr/O9ruu6xuu63mW+ +tmv67nt6x3O5p2/7lnudvm+5p3Nbl/uer2W73m3bVds9j+Mybte3jNsl3tZtW79xm973vOb3G8dP +XH23+b3uS3XO1/WN33c9g8Z3fAZt77Wdy7ad2/V9l2Q+z2Wbz3m8z/Nbl/u87vNd7/O+p3U9r21d +rnXb1nX9tm/+jm0dv3E51+ma1/XdlnOd1vXelm07123dtnNZ13ndlnVd7/Fa1/Wc7nVd5vUe13m9 +xOv7jvN2r8u9bvf6Tu+23eu7zd/xvtd7vte7zfN3XO/8Hcu2veu6y97tnb93vKbBd5vfa1uu8Z3v +6Zq/dx2Xb3zn9zvf8b22613G93rf872/eTnXd33Pd1nXd3rfbZnf933H9/6W9323+73fb52na56u +a7vua77m7Rqvbfuucd5V17Vs63x/l/LSzuvyzuMuWuZ5297tvb5lnudrnudlusdv/o7vXKZ7uqZ7 +267tu+9pvO/xHr9vvLdlvb97ve/zHsd5Ge/5O5Z3vLdtmed5nuf7nr/jnb95e+9lne9lved5eb95 +nO5xXr55/q7zW7Z53K5r3uZ3nKZrueZvnr9jnufrne/7ut9xnJf1Xd/x+t7xmpbzfN/rG9/7fO93 +fM91PZfxfa9d9U7v/B3bOy33Os278l7e9b7udXyX93rX+TvWd1nX+TvmdVzGdVyndd7Wa53vc5vW ++Tvm+bwk83gt63mO73ud5zl/53u+97Zu532Ny3WO13kv07le23Wu73yf5zy+7zKP87i+6zuu47Qu +6zrO6zh/x7yO5/jO57zM63p96/WN07KO6zbfy7qd27eN370t27ht27W81zSO03zP93st8/pd63yN +73Je53ct5zef332u6zkv4ze/yzx+4zWP0zytyzd93zd/3/d93/WN23Jd831917Rc9zrf87fdy3rd +13fP3/x907Zd3z3P3zt91zhe07deyzxf7/a+27rN37Iu53ZJ3us8t++cr2v9lmv7vm25tnPbtnMe +3/ecp3de1nV8r3Wblvc6r+mcrulexmueznGcr/F753Ed13daxu2arnl9l++9r/davuu9rnu5ruuc +L/F9r9e4bNd2bct3bd/8Xdc2bdc73sv7Xd+0i9ZlvKZ1XMbxupZ3e6/rWnf1dc3fMV3rcq/3NC73 +eq3zuJzXeo3TNS3zdy/zfC3vdX/zdW3Lfd3XPG3zfE3XdU3Tdq/T+G7TMs3LNH/Hfd3btk3fNi/b +di/TNy3fts33tXzbtI7vu0zftH7nNn/HuG3jdm7vvK3LuZ3bNS3bdm7zuVzbuY3rtm7vPK/Lur3v +sm7rd8nebXm3bZq/5Xq3cdu2cVvu9T3v7V7ebdu29buWe7u3Zbrua1yncbm++TuW67u2bfu2cbm2 +6dxl1ztu33Uu2zdt3/d923Vv2z1+33dt2zZe2/yN2/ku4zee33iu27lM37hM2zp/x7W93/p983dc +5zyt3zh/83J/53Vt27Xc3/3N9zd/x7ZM6zRf1zS+7y48l2m85uva1muczuvblml6p/PapmXarm0c +t/uap3Fdv3tarve+v3tepm29t3u7r3mervEbv/Fe7m+653lb5m35xvH6xntevvFcvnHa3mXa3nP+ +jne7p+XaznH+juW8xm28zm+Z3uvaxuvatnXatvm8xntd7nE6p/k7tumczumetuu85mm5tuvapvsa +r+tatu3clu29xvFdv2v53vlbrnear+U7t21etvO7v+U773e5tm+cdtV2Ltc2L9/3Xdt43st1vuc0 +r9d4nsu1ndd038u2bct6jue3bNv2Lus5vcu6Te90L+u5fuf8Hdt2L/O5besyn9t8jfP2DYAB7HB7 +vt/72u5vOb/xm9btXcZv/bbxHZfxveZtfcd7mbZtfMf52971/MbzHpfxWtbx+ub5/cb7nbd7Wa97 +uq9pfadrW6frGq9te0av5/K987fN1yUZr/k7lvWaRu/znu9vWs77et91fu/lnd93vJd33uZrmbb5 +vt5pu97pW6btnKb1krzjeV/juU3ruC33ta0HHQd7HC2CI7d9O24ORTPTRg5n5ba9NHvTHLksSY5L +M/xEjxoYUCKICAihAxM4YvBgKZlhwor9+M2SI6HexTRKxe7MyLMCBYLds9txM6mQSX5TTQNDQr6Q +kHkUddX83VQF5DmtKw9+8paRnBRdChRwOKr03UTTa5aJ4LUSLmQIUDOjQs+jsqw9T+Rs8PNsOalO +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 +YXk7Y2hpbGRyZW4oZmVUdXJidWxlbmNub2RlbmFtZSAvdmFsdTJyZXN1bHQodHVyYmF0dHJpYnV0 +ZTsgLDJzdGl0Y2hUaWxlc25vU251bU9jdGF2MmJhc2VGcmVxdWVuY3kwLjA1LDFmZUNvbXBvc2l0 +aW4oU291cmNlR3JhcGhpMmlub3BlZncoMTAwJWlkKShBSV9BbGZhXzFpZHh4eXloZWlnaG9iamVj +dC9EZWYgO2ZyYWN0YWxOb2lzNDRNb3JwaG9sb2d5ZHJhZGl1MS5kaWxhMWJuYk9mZnNlYjJuZCgt +ZHlibjI1RGlzcGxhY2VtZW50TWFwM3MoczN4Q2hhbm5lbFNlbGVjUnkoQTQzbTQwIDExYW5pbWR1 +NXJlc3RhcihhbHdheWJlZzBmcm9tKGlsbGZyZWV6dG81dG9jYWxjTW9kbGluZWFOc3RkRGV2aWRk +aXRpdnJlY2N1bXVub25lR2F1c3NpYW5CbDU0NWNjOGNjYzFjYzhjY2NjYzFjY2NNZXJnZU5uMWIx +QnJpc2FTdWEtNS00NChEZXNlbmZvcXVvXzc3MzJpbGF0YXJfNjYzZXJFcm9zNjAucmVtb3YwLk4y +cmVwZWF0RChpbmRlZmluY2NjMW5Fc3TDoXRpY28yMTEgMTsyMCAxNTsyMDAgMjAwOyAxNSAyMDsx +IDEgc3BsaVIxYmRjT3Vubmsya2trMTMxMzQ0YXJpdGhtZXRKdWVnb0RlUMOteGVsZXMyKDUwIDU7 +MjAgMjA7MTV5ZWxsb3c7Z3JlZW47Ymx1ZTtpbmRpZ287dmlvbGV0O3JlZDtvcmFubGlnaHRpbmct +Y29sRGlzdGFudExhemltdThlbGV2NmVEaWZmdXNlaW5nKGR1cmZhY2VTNUNvbjFsU3BlY3VsYXJz +MTVFeHBvbmVyZWxpdFBhaTAxMILUqFK1TGRGRpIU6nQiCRICCmGTII6CKkvSBhJAYBiGwjCIQRgI +QRAEQRCCBEEQAgpiEAbBGApCHJLeuM5mDXJKdxLsZ9gXeyOA4Fldd7KjFAjQY8SEt8RkUuQOxX1O +4Qrmj22BPxJshIDHSKs5DlFyYfUzIDaPwUI2lUM+T9x18rDYlVVzLUosf0ciAfSJRmiaRFySYxSJ +47ZRoDW6qKPAifHTWEc4GGi1Z9EG8Aio43hgqyx03ayQ22O1Z01/kU4AHnB2z2EyBFXRhNNy4K2a +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 +RUZ+RIKRGelx28sTanmxzA7hRhYnE5Fg5IZtEJmIJEF6A3zeQyYiEXdXYESNIUc7lXROO+fPWYlI +LHZKO+U7nldm7Ne+v5SZjEuXmSszclYiEkslIrH8ayut9K9TuvxKJAAFeCrtzV5aaa19Ke+UVFL5 +lYjEQisRicXbQqqWF/smVNalRXlUBcJtxZV2N8orreZSeiUisVQiEosmLZkt3DGQLURu3aYYt5MX +sXXsMCQz3SdyIdxHZrpws7a3hYj7IzP5dR3H8r5VuHk8ejlxh6DcZgZ1b+tO0lL5tbZuC4mQX4lI +MmnJaCMorfxa3tfaEzLTfR+FtIS7FUbIcHds3maSLzEWdmREEuFxHbHulP1S+plmq+98rzC5we0l +ypYXky5/Xus2Z1NT6xRrOm+uWdPW2vszIoFlqeedGc9bLc4f1+N6KdXqldXeafO0N5u2Zu39anNm ++1bOWe+ktlZJa63/Xr9SWjWcXUozfewTz5mxXtMq6ZVvpUdXPSWm1Or59+fETvOkGFM7ff59TPH8 +i2XO+LVXWq19LPFnfSmlNMtaJa52Ullpttnn54xlrdnmbC11i6nF+V+7ll5Kp6WaX1qp1F711PfS +iMTjV2r69Xq9ElfPV+cr741IPPdWfL9KSyMSj71U3ls9Xy+22XH2+VRjPK/j15Rq/HTaWrOeWGb8 +mUr89bWMpf75VXMNY+pYTpsxrlnniTXPGT/G+mKc85WavVfjW6/EuFrPvNpfief1+Zn6zFN7Ky++ +79Za7VL5mebqlXqcvtM7qbz4UjtvxhNPOef/nG8vnVTmSinNeuanT3HNfNpsc4bpndk1re97/Xq1 +16a/9lnO9Klnze2/zfyptvq1fU1n9mZ/9c2yfF3LF2tX3wy71bDjemlGsWv6H7uG88QT/8UZpRrW +8nyt6TnnzNTpzTS92bvWFFubUWt/Zjpt9tTmn05rdu/PTDU66c2zWjxpJvWsNNM1095rzeydWHM7 +s601m491fi1nlHrmF9tZM651ylo/15e41pqrnFmtVv6/1r5K6npObVKPU6th/RGJR9MsTxyReCyl +Ns/XN9M6baU4k1fDuGqctf1ptVmziKRUs43J6p/pnFPaK+3Mst6IBJblpVrG8n7Vcn2vnuW1Tied +EuOJKZa5Ytcyvthz5nlijTOpK87olblqW+/PTM6v1UpatbWZajwvlk8vvTfriqnjSzPG8u/E1avf ++la7j2X1iuXbOjWvmcS6ZrJiSWsmKc3klLNiWWvFWD59remaaRf7tLhaq10sM6VXs1jmazOMZbYT +1ymtfoz9Uq/Yb70381tpxnbma+W9mp5W5ptNbDNdJ8XVbVZdc22rpJNm+jVas1m/VjlrFpF4tFtt +79tKs4ytxlrTpmcckcC0Ni/WbjOJZ535qaXVbZarJ/tbL6a4Ulq1bHMmq742k/fKWf9WXanm9m0m +s542k19tROKxmXypP5NZvs3sz5tZmbN6M5kpxXNeW29WbbbX4putzlq2+r7m92aS6ojE43heiaem +r7302ojEg+Wsd2r3/vWp3fsYv2v28Wdc88yZrZnMNUs8qfa31kxWe3HGmf6KtTZzJnPONWc005xJ ++zXTPF3znEk6Nc4+cSY9IvHke6+t2r04y+TNU7M3k4+pdm8mtWYv1hm+2dPPssdf09nmm7F28/93 +TIQQuVuytbU2x4qhrH5ZUlFUFBXFLb74Zqv5Y5xnBquh0s87seZYU2zzvXNeaqm1nzW+b3Wet5Op +xdStzuq19t1am707rtnNs2rH2KVTW7X7VnP9rw7WV2fH993zhOWZMc6YanotnlVXe19f7JbqmefE +VMP0alwt9Uqn5rIzcdamprTqmqvF2l983VqnrzWbLZZTUzuz5l8qVfvv1WZd+qx11dNTX9enbvNf +j87T682WXpo1re4ZU/dbv2r+l9rsXazDC0ABRtYOZbiJm/WFp+l9HsdTUVQUFaUiIhElJvlyADnz +T83lzNoptfNa7X8193jshNkaikg8HqfTvp02u5q1lWLN6vlec307X39+jbq/zrYzLc2yX2xtlmXS +C1xoLieuPjXql96fNL/GrllYp1P9Z50066thv/MrxVqW39Faa7c+8dRcdnKdV2v15bM68lrYhawW +15z97Oi4li4/Ill1WBnLr3bne8TX2jwOFus4OYYfSAA0eqQWFxN9OIpcx5742N1q80Aja7vCfeo2 +Ae5k31tcKOrwOK5DafokTkWqKBGJfMdfrc0BIwgD2er03TPcM1hcJ3cH9pkB4yq71X2uVQwlt1jx +cSHba3f2uLG4Dox9BvhaHifARIDzKuS4KVRb87x4/vSfUqRygwUopNwdF5IdHheyofSfTBcy9oUd +H6ytIwuA34obNxD2eXYIV/pEW6xgcWO4LbZRDDdrAzdY+IVE1lcCN9NuxTqWR3qNLU7Ah0KKHR43 +jhslSyaKEQrlkR+FlAJCqN3hbS/PrA+LQYxbFEuwGMQYckYCGwJ320pmIY59nq7bHvuortse6n2s +jWJ1eNwAm7Ooo2uXwhHVdbEQifPhmmv1K+K4RZGzu9WWGVncpyIVIuQeuZcAKYo7BMEYSmIx5EIE +dssjhbuLwb5x/Dob122SG73tijh3O2SXZIGR67aYhOzwuJDUJI5rl37eOaJqHl27NOHapcfYtUsi +7+M6digJ7A7kOlYEgT3K7XHdGPvAj6JqnO3rz/LxpSrKyPsAwIXfaHYdHmezttDo2qU6elwIhjvk +kzsk3OH29jhunUv675EAqOu25z7NnfD7upBrl0ZUgZHruO1t3Wl8dXAdHvcSOW+zCEO4cev2hKrF +hSKbSVdROPKjkCDXeaSAEIrE6ZBj7Ptgfd6HKFtc2CELsLwdbqDUL3GbpCZxuk/cE9L7uHEDACfH +GDjGIqQmcejeYYd8au1VUVZyyvDrPpZshdu3GsNN6t2t5B637hO5lvyMijJ6GxZjfR/d8kCqOkkc +SmRmGUqkGkWu1DndefP9f8+0YlozzRR7xvr+xBNPm23G2Hq2jrX2V3PpVc+pddZ8PrZuqZV3uq7v +WtZcXnpvvTdXt3nOXJ9q+tMtptS11lNTPHpb13FhpyL//mfs9Su+07rmVmNNXfOK58zYZ77+OlN6 +589MK3brN188qf2fWfP8WU/qOk9M6+f7dXr2XOtPirHW2POdbv1+rT/1O8XYWq/zZ576Wp1nvff+ +9Dmvz1unvhZj13di6tTiaSfWT6u+eWJqqc1Yzzzpz0rpfV3npG5v9kzrxdZO6nTSTCnNPmnN2NpK +H1+3c7rFdU737PZW+tRi7F7/6WvPtWpu3221mc5s7fVJs+dZfd5K773VVnp11dy1nq41D9J1vjfj +n+7U2uvUXp+20jrpY3s1fv3z79Xcv+O0RS4UsU7Y7WtctaYTa07ndOoZU10rfqeWWscZ+1PrPum/ +rhrbiXGlVGddrf381WKn9b9md2sd62vr9Kov/exOKbW3evaLL9azfrY/qWf/XD9brCudfmnGtN6M +tfaJMa5Tm9PSa+/j6hrf+XjWiq/m2V/fS3Ot2mqu9WNqf+rqP71qHqS9GpO0VPP5Gk87qVv62fpr +a6dT69avpE/9Z7U2P6bWVkpt1bdqHqRXjUl61XgqPy/WGFNa5/usXjXXTmnGrmmlVZOSdk53qqlj +7C7vzdNen5pi/fbr1TRreyl9S+3U5lNNn/7biWvN1R/P+5NO+7Q+tbliPHPNNVd3rVY66df/iV2z +lGo8Fb90VvxZP631ndLr+F5M9aQ+sbWeK63UrcXXOtX4OtZU82rnzdUxnVqrVs869fVrsWan5kHa +qSmd1Wl+er9ad3q1tdpiTUpaf/v33yvGnme+ry/Oby+u9jOurye90z1rUtLmxzNf6vI/W5otfbdY +u19sLf2qSUnP1c6Mr761ai4t9Wm/0jr9XTvGGv6M31I8MaUak3Rt7azYp1M8H897X985J73zfr03 +u81up36L899Zbdbz5lqxphnnSTN9TO/nx3d6zV8pfmzx44zztVrjaTWf+XH+t7NOSqemMUmbbaW2 +2kx11pZOej3Pp57vpe5vM36NKdWuacXX6po1Julfrfabp7XU6jwt1jxImzUp6Vpjkk41z581v3ja +qq/N/poH6VqTku6vMUn7Gk9Fz6m5rBhTpxdXf4qvdvoY499Gb3dspkoXAwCn4m2cp7Jb4baocCoP +KZNHfh7fRKXCOkUkEQkAVqc9jrvbTi0PpNIkDuU3jd2S4XfC8E4JddpizPs4MdwWUra8DSQAkiNr +u1yg+zvkI9xalhWKLACE34vbQNYGtrxuFXYssVtRlAS/8LN1u9vCDZRP/0J+IVyI/Dx259oT987q +GV87307/7PU1p08tvpq79L9Zq5X+nNX/q8+bdc2etd87Qalx7Z0vsZ1ZJjGkW1Ai1WRxY/iWZoTI +cNtiuL3w80xMKW6tbYdS3DwuBiKCalbtj6LrwzCug4Gj5/Eat5P8qbO9erq7Zu+cb0XZbZHreMSk +E9OKs37tMc5vq+byf2puH3+2WnPLY80n5oe4mWQBAAAgFoLFvA0ADva1vG208DjwYvTexrW2CY8r +jfxTI2t3rh1ajCfVaId8sB127I9qj9v4hR6RYLaQyuJBbtNg4aelpbJ2K9xGm6md1K/GVs//t9g6 +6LoeSCVQQ9RW1tVei93xfUqntTPbicVxYg7gSX0uMqLMx0W9+L+6xZdK7Bi/15ztvVbT3IEwDvXh +sZcXBQgnBesEIDZo+cy2ifvtEQKqZvwzXPKFATUMQx8ZoM/QVAiGUSVLMWAIxhSu7AOOiwYsODAi +31LVY/I+KAQ3pKER8ogJmyjAHaEBCNchT6VqRMMABoSX3SR0CpcSrABkY/FIUCKSif0iEDUmCxkK +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 +OkD0CEQCYoEgRGReyAPRI5BrKSrV4VGGDS8ZDOuhoQFRWm1koEBZa80UWvUIFBpIE/ysWiWmpHOw +6owgZIUxHj0KuTYatDkWDhQigMeV8mApEEkHEA0NR5J5rG2kjVZoYwBKiNPhTgWciAEKEGemk1GI +SECcCXcq4FRstEIBLx/3bz7ma4373Od/Kzve7eT29nZvsSGu5j//btx+TjWbk8BLbfd8ETk9nWue +26vf2K9x7jvddndGdovvnHNUfvv8zZj5Gp2y6zeX68jd7tzmvmaqv/eM7LylrmZDso+r7pfz/RXd +vn3LqM37+rmHqtjtdVWX3WPXz8XdZGxPtz1d/9/d53Wfu+97EXf1nfvmus/xOV13vbqf/l6+fJec +rV3d5Xutzqudjb1915s+z7bs+G/z/X2b7j99/PnLjL3a6Hxfq0tfZ6f83OlcOsyW7Ii+ja7dQ3XH +26yqmun4KaI+/2x9dFXu99fPfTq3aiLyr2ZzbLe+4poX3f8pS/9r5y+54a7r91JV3Z9TRE33VF2n +e6us2ujuqK7+NrnXvfM5d+7/y7r7ejX3vd+XmPue22TnHi5vvu8WYH126a2dc4kPUZ+336o2b81+ +Zd3X557Y3Tyf62NcxmTHjOu4znF3vr5F73X+3uv7XWTvftv/q7zucl/ipztnKjfXLvfx80sBf8v7 +7lxj5qK/svoy5mZ2v05MgXXvHl36smu/VO182fifzN7M3M/fmz7XnN7OV9SZk705G1Ffrupr98mo +Av/9UiTQ3rmOHSbyizDT3XK69lC1ufc933x8qptt2V+xM9c//a1iYnJuLzq+Cjxjvlt069qls6IA +96L73ufQ4bpvPtTt9quc7tzb9M5/7JD92XFTX2s2JMrvnL7nWl8K8OtHdNV1583+UrMh6ZfNraKv +w+fcZd39bfhSgLfTOdeQu/3dY6pjsnMKOIfY3mErZzvN9un6jYlOm/7341ZUzUZ9zZ17p2I399bn +fr2f+15kZeZ+jp3+ctUV/ymya/vyc/vhw2V87N+/6r65x9ronr63vr6nvvPkxpeOG7mxe63O37b3 +67K973x2/87tfj9fOn8upmI/bbfu/Td+1WxIXBkT9fW5b/iuuum+7/W7v6e/5ryd0+YcPT3dtb5/ +R/T0V133Lps6Ot5s645VsbUvvmO65ut69nt7rpoNy+dTzNe2n5yt3emc/qNz/xKbMVHbdb5yS2Z1 +rJy9zK8s4M4hYifzw8a8jz19n7uzuc/n/9aW7V6v6v/6Mn7T7u9/DVlV222/T298/+aW/O5Z1TnX +tjvR8V9jVudvxmx1uo9VoH1xn2vfb512pj/P9v2wt6nLxUX3Xqpj5+5p63ZUt4zO/LpxvzEKrDpu +dO85X29+e6zPnz3dHx83dGdNZ/9ur/cXs7l+vKrJTcLa+b3uXut7uqbTfuiSP7V5fTcVtS3re09z +NZe3ZbuqPqqoE/U1+9u32I3OqY7P6Labt3N05G6Mv//5nt3rdO85X33f23Pvrac/95r9fVWzIent +1Xa/771eh8z9qLmJ+dpb597n3Lbk5Lbb+jPzsfmyvmd0z52zNyM+b7vbzPi/v52J+nAfu2Vf1+xa +PR0/f62bzz2usypzqkvXcv19umvzP7rdV/ym69p5u17pf687373tJua6o6MrN+3n/u17uexcH3pv +Zis2Nq9zTgU0n/t/9M1MdantnP+2b3XM156N6P61b/fJuOqavIj9nG4qIzd1rpVVkTHZqchVINU9 +fkVlRX3XuFXkyetWBXQ5H3u319/75XPbrvPf976Graz8+qHnq/c6fNWWud2o2bpV5OvYyc85b4fY +nCNvq2N/ro/9raJcda3Nzh39Pbp/uqhO13XxVZ8V2zOdt3fvncnv9bGd11vjY7rH/jgbnyOra1/O +t8iNeSW9Mf+1egrsa07HdH+a/3jdv5nTOROd691/7rW3/XaeAviYr47ozjlU19enuA3fNbr/5+fz +dU1kdrnIrPmoic75nrpnzdf2z+/flNW5OqfusrlPfs49qgjTkV9rNiTuzr/5jVnzHaPrp574FLnZ +6e6397nIzrE+ReTHbG+O+b3rVkx3dX/nEH+fc+PGjLuKyiri3M/HqO+Nn4nN/oqoonTFdv/prvhe +n69rvorq2n4myWvld9bVdMmJ/cuO2V5VJPCYzmFrXIHXD7Eb4mo2K+8VnWq7ajYmfKnfGJO1/7U2 +h6vZkHQ3p6J2w1x1ZGxX/qa5Ag9dXxVXmfc9IuvqbofE/Rmx7Te631de/vZOEu/d1q3/Hqrn8jds +1WxW+q1rrre/G9kzlbMV3e5uYjfXqtmQPCf6qn9Df437/i4Dmk1KAoVhGKbZlJyIvATABSVGoOTl +IhNT8joRKDkReSmREREoAYBIzIlm8ypZSRF5XZSciExgqe3UOeRt/SpSLF1IRLwXeAL5KhGACIv1 +jv922XVuc05Wx9gc72L3v3tMTGfvdLyij4AnoqPZsBCZ83Xj147BLozFhbkwF+bCHIsLc2EuzIU9 +F+bC2oW5MBfmwtaFuTAX5sKQ5cJcmAtjcWEujIVZLsyFuTAX5sLQhbkwFnZhLsyFuTAXxuLCWN6F +uTAX5sI+My7MhWE0XX5dxGTnnB035/TWdd7/vDF5nzu/xs/2ctV5/m++e6Nbfu7vddsbruJr1cXe +f5jsvOV7dX3drtkVvz19ruqpnZ2IjN4Pd7Xh8kPtZT3c5+z4vE791btfX5X3JefqPmdDV22OHbre +5orej705ffiP+e70HT/nzmmm/mcyKnp7qf286v7ae9iquOi2Pd/Xz/ibzuueOm90X3/ssr2ysGc/ +4vfqPnbWx993zmF7y1VEfe49Iqq+Mq9mw/J97t6+7Xa4/8/9Xa6z53rLVt1/Z0V1Tx06b47t9hNP +Jsxvp8ruvqzt6ur+oWNM7+1HZIfY/RzXnz5Gfm6vUV+xYWJiPl2X2/7fj71f+bPdaq8i6663P0Rn +d52urC/TvedwdfO97uZWduyP3R+2e7nt6bov+/vM7HVkXsZ1+ug8HWumOjvXVP10Veeev265zA0Z +271W99hlsi47dYf+3dqtq4hvX7rObm2c7p5OtTPf33ViW36Hz/11t+Jrsmv2Y392e6iO+az7zNqe +c6uZzuXuaio7bexuV8fssB9R/9mh82fXqonb7nK9eW4r47v89uqemd09x+65v0A7d7vXXnX70fvh +bjanurnP39r/2J6+fH/OPTZcffeecz993ekwvxsud7u/tpib7ZLbvXxGzuf0V9tF3byojf18nRPb +tjpui4nYn6u7/3pZ9ZP3Vdur7ypqS4fLu97rVlFx3Zvr083nh6rP4ebqMirnc4y8nv8c5yqvQ2yN ++rLZ33Kj5iNvPm/Yz07xWbCdQ/3XbPfry82ttrtjddf2Yerr9XV9+P5w/eV//2v+2u0+RH9cba4f +arpiK7/2T50i/7q32s69zfqf79qYv+1jwW73zZiryHKs/PRk9825fd/eJTM/ar7WjMmsZnSXmg2L +sya6be3yP33T+T1dQ9ee+16iLr/H67hd2//zdnvdZvTnPpurw0bH6jyxNz3b+/P3NB2TuH/bjQ03 +eXX1973Xch3+Y1Tndg2XHbLrpi7ZPcXXyS39LT9uz/Xfc05X3t50r7yK6ejes3yd4/117VW1EZ9d +dtvfh/jafr5fp0/fenN93E/zn25uc1WRa+anwL/efu/u+Z6uv21uYkbMf/5N57DRH1/yO2TNRERu +fc7/+/M1mbGbHbW1pu63/RTgVHyfzZXR+So38rLn6939fK5ZvvmUms3MBwU8vRvbaePncBsvott3 +99mq2+2au57q6smfzxkRvX0/qya662THded1Vr973JynOmxv/6x3fcneqc2d1fk+b87dOT/30JvT +b+cnUnTpbgXe/jem7vprre89RVbMl9vZ+pq5G35qNqZ8D12dP3RXXnaZv7zdnDOisuT6Yor02Wc+ +M+xe9+m/3ca4As+xo2vkRd1V59Lb3/Fvdze2tyfmc8n9FtmTX+dL9sTtb3aOiurfvm8ddZ36P193 +LlXVOVt1cXfVWTVb82Gi8rM+7VfM3exV1cS2Lx16N2qmv+7H2u3eERuz0+ZNd889td/bT+V1z9+Z +q+pYWh/2Sd1u97Z755J3H7ude3fY2ZjpTp9qulNvz7nnx51vXbpVdFTm5V9/rtnbNS46ZX11/3Tf +UV8jolPm5/lUFdH7PWar/7p643q/OvTn2ez7yOsCv9/d/c3t9Ll+333I2Pi/s9c1firgnJHTebrc +5hp1nTr11k9dtjuzeyrwNh8d/uo7Kmf3e47Vreuna2fue6fP/+4OnW+/fYjpGtF73+E+6/Z243d0 +71Sgn7/H5ef8cZ2zc/zMvf7v1HFjN3ajU2/ulN3uc37MyOpyExt/Xf379b63Q2/v9Dnn3vJz9F7u +7/9dxO/n7Tl+qvzL7YraLps+FVD3nt8X9+lD9W39Vvtzl9Uf1flj7mvvqUA7ZHVlfudNbVb+1xZX +IBGdc+4v923+O/9WxH+a2PneU9ZMRv7FdkxW9GVef//cuALtMjG938P13GbFRoF1zunqqu1xBR5f +mAaohNTVwVCQkpIxNCMjAAAFgxEIIFAYEgyI5JIZWUuBTvsUAAOdWiY4IioaCkXi0VgwGA2EYRQG +QRCDQQwDgSynpIIKywNRtR91pfXCxR+DdskXSSCMVffgdH0tf3PhPs/UcdcFof35Qpp/QeSJnHDB +GMn1M7UVMfTBoYlBrUwm7mWCNnEEuzlN6a460Rb1NOUsQE3T9IJJBoaa3vO32FDvaTbrMxwugR1S +Kh8ZJ/dusfHn8q0hpR1tVNsM7HYuBuEAbr052MNjzmUSicToL4MHIO+SHI6jDCMttRQf/ZkPWJGk +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 +KQxiajDKZXMB + + + + \ No newline at end of file diff --git a/src/assets/img/logo_02.svg b/src/assets/img/logo_02.svg index 5fa82864..e10be082 100644 --- a/src/assets/img/logo_02.svg +++ b/src/assets/img/logo_02.svg @@ -1,427 +1,5787 @@ - - - - -logo_02 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +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 +PhDRYGEDiIgKNAARkQHDAwWHDDBAgSFD5sgHQAyuD5AAo+YDZECBua6e1tlule5QHdbhy/ACCFwQ +oQESuMBBgUGlK9WqG+3rkCmTbYilZrs6ZE6RbBF9yAigjggXQOCCCMcFSwYHBcY/uisX/bD0kNE0 +09l7wtM9ZKqeqaeVm/hDxgIkARkYCzBQuPCQIYODBg4UGiwsIIIaCxwoNGCQQAQrs7EgwmEDFji4 +YEKFBw6QCOUFHDYZGixEQCQcKjwkIuACjgeFYQGGCIgKEAkGDA4SICIwyHDBwQIHEiCUBw8K43V4 +l0l2Pmqla8dE0vO10R9SXutUz7cgmLsNXbqoe4zBIYMHBTx4UBjogmDoNvSCYIoMwVggAgiEwoWH +CRc4gEAePCgMW0sbCxxI8IABQ0MHFxocgIFBs8DMFRUBbAKoscAhQ4NyAeKhAgodYDgdQERsAEEB +ogEUGAscKmR4iMCDB4VRAQWmgoYLDxkwQFA4KDAWREAk8GwZCy5APGCIcJhAhF3A8eBBYdC5MhVk +QEEERIaGiAwYOKhQYQHGWBABkaHBISJ58KAwDB2D4LABiAkHBA0wAMCD5rXLPWWpZ5R8evkqxXOz +uSWi6+Lpz+oZexpa3tmoKdnq5q3HqKWpi6Y/umf2nFh5E9XZs9mTap2stvdd6Yt2tW6P6fkc2pTt +nnefZ0rz6rzR5izrq3vPOtczq66i/DrvKNpYb1o9tfe9ovwd2lGkLdVUG6qm6m65zu2Z09zDWzHP +qo3VUdeLPr4f6ax2W91VteM9c2VXh18tH+MR6i5ZnvsZo8VavKHVwbQpykTULSue+m3mHW/CO5Q2 +180ynf+MrrMUn6s+T5u9qj1dPOPBnzm8pvV4bWotX7pUuqdI7VUnUbdI6fhnUhX1yoV30y3dn/2Z +TcM7/K7NpT7rx+jsqKlH08Z0FUtvWkT5RRu7LqKeIzR7d3ce6/IQ2uRl3XqSDsmW3zzKzCfmTtPs +nlefK7V1qfDnhOaOqPCuVj/pMknm5y4enfVvhHlPSz12mU39meEZot6VyqRZiewsoilU8++7ZsdU +plDPZVnpEj6td+42tcdLXDKqs4kG75WYB6lMpuIT18rqZKLRLx3vdPucyyhdedEpwZTdb3fv87jK +bFWZc/fQbGJi3c/QdJfUclUJzw2NVfV8N2WaISFmrR3pfOjKGGkW5urR2OFBK3MbLubeTce79EN0 +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 +r52r8j5b8FFI1G61P3l1u6/ya0R31Mp1yMpm96tCMrs7Vf3w0KVYAI91e70w7cbqYJ9VybNKr/S0 +86tcX+4eZ12d1a3dWOWr0xUp1vFKT7k6SE6LFpBgAQl0e3wd2OfQJxM7pUtnxw616tjKx77iUco6 +t8NzSotkVEq292rvXN4eTFxCPKd5+qNK53J959Sqtc+Taduey7If51E7hHdFvpNoWvU7XjTyoZ/X +TE2N7H/tWgd/WHTsSnq08avP306ydB0q7+UZkhpzCV1Gzs0r5/XWDtqSv5tW+aQl/VHiQSOp2U85 +C2+1q+4waxPLP+WTymUqPT3RSen5qkyb1d35mDRtffYdXJqdI9sJolqRqtOl/l59eTCda3UHU5P0 +eqzOMe1UnlKeZ9bvZ69r07EWX+U7vcm2P8JjvdodvJqp6iip1m/t7u6l+Vcd0vkK6VWl+bJrdfO4 +tAfLpqeWX8S7vM+2+sFzPs2ndJZ3fiZeWt5TF6/eyh9aT3/eM0xCKjNKRV83c5+5XsVM214eS9+q +XuX3/D1y/nQVz/lCm+l0fbv7VioqVqam6ZCcpHdOZR8a75vW6DMyxPXdej+Vod0XCY9Vpc/qXGq+ +W6nuMSvbpLpXlZ1XJS2m3a1Ks+h1v5tOVvlu/i2Z+sjqjlbZl3Z3qjpZ71SJaDo1fK0L1ammdBJq +14lK+LtXF4vwRnSUdXZIRv/4zkJVK+0mXp1bR3b7dZa200093RNPaiwiOnyta+/wax/PiFd1VZLi +dfPn6Rua8oquQ8M6002nLiFe1bd7hffZjtZrqGrD+53q3r3mHqOy11Xh2knPO7kOrXvXEx2jIjrM +O7ny2HV3nYz2Su1VdGevXJulp67qllm5d1ltVdXpXjxX1RXqrQtv5qLzKp8w8dBFq1R6uXr3q8Sz +Lq2yJPTdVld1X6pdNAuvqhve1vh6nmPmJd2aad0gGKSre2VRWY3wed8qUu3Bdd33Vr1/3eHXp7KX +JZba9yriSe3K66tf4vGqTqnPytaOtrnMeUOjpR0pvUm3mnXvHUxv4ZkWnfOkq6fQP6SiO9zzc1pV +06mXmnir11yIeNukk2q7nr0t2GbfVLvnVa5Cvcrf+X14MrzjNdFBdVZm4q22SyferPCY+vofrlqN +V6I9dBOVrU69UyXpO0mV9Sy9r/pWuqh3pfKvnGlfdDmpnOZC5xnvuZVU37vfVV0q4h1dWEi3e1Xl +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 +9zW/6/VN33x9y3YJAAbgwvd9z3c5p/c9HsCLxMkeJAyyJllkDYABjFTIGq/1vpbp2+71fN/13Obr +Or/pXqbJ3d7rnM5vetfzHAADIKEBgAG47t3F63tt8zLd5zuZ73Kv73tN6pgRIWtonGL41SgFwABO +7n5Gn9u2nbtm3HW+9zm/9zuuy3ov673d1zle07VM3zV963md8/tu07dt27dM3zNsm5fpe+dl3O55 +nu97Gbfpur53Oqftfd9pPJf5+pb7msd5l9zr/F7LfV/fdW7P6G9b7uta7+9c7m3XjH7H677fZRyv +b1zm63yv67qu8bqud5mv7Zq++57e8Vzu6du+5V6n71vu6dzW5b7na9mud9t21XbP47iM2/Ut47Zt +6/aN2/S+5zW/3zh+4uq7ze91X6pzvq5v/L7rGTS+4zNoe6/tXLbt3K7vuyTzeS7bfM7jfZ7futzn +dZ/vep/XOn/Htq7btq7rt33zd2zr+I3LuU7XvK7vtpzrtK73tmzbuW7rtp3Lus7rtqzreo/Xuq7n +dK/rMq/3uM7rJV7fd5y3e13udbvXd3q37V7fbf6O973e873ebZ6/43rn71i27V3XXfZu7/y94zUN +vtv8Xttyje98T9f8veu4fOM7v9/5ju+1Xe8yvtf7nu/9zcu5vut7vsu6vtP7bsv8vu87vve3vO+7 +3e/9fus8XfN0Xdt1X/M1b9d4bdt3jfOuuq5lW+f7u5SXdl6Xdx530TLP2/Zu7/Ut8zxf8zwv0z1+ +83d85zLd0zXd23Zt331P432P9/h9470t6/3d632f9zjOy3jP37G8471tyzzP8zzf9/wd7/zN23sv +63wv6z3Py/vN43SP8/LN83ed37LN43Zd8za/4zRdyzV/8/wd8zxf73zf1/2O47ys7/qO1/eO17Sc +5/te3/je53u/43uu67mM73vtqnd65+/Y3mm512nelffyrvd1r+O7vNe7zt+xvsu6zt8xr+MyruM6 +rfO2Xu98btM6reM8n5dkHq9lPc/xfa/zPOfvfM/33tbtvK9xuc7xOu9lOtdru871ne/znMf3XeZx +Htd3fcd1nNZlXcd5HefvmNfxHN/5nJd5Xa9vvb5xWtZx3eZ7Wbdz+7bxu7dlG7dtu5b3msZxmu/5 +fq9lXr9rna/xXc7r/K7l/Obzu891Pedl/OZ3mcdvvOZxmqd1+abv++bv+77vu75xW65rvq/vmpbr +Xud7/rZ7Wa/7+u75nb5p267vnufvnb5rHK/pW69lnq93e99t3eZvWZdzuyTvdZ7bd87XtX7LtX3f +tlzbuW3bOY/ve87TOy/rOr7Xuk3Le53XdE7XdC/jNU/nOM7X+L3zuI7rOy3jdk3XvL7L997Xey3f +9V7XvVzXdc6X+L7Xa1y2a7u25bu2b/6ua5u26x3v5f2ub9pF6zJe0zou43hdy7u913Wtu/q65u+Y +rnW513sal3u91nlczmu9xumalvm7l3m+lve6v/m6tuW+7muetnm+puu6pmm712l8t2mZ5mWav+O+ +7m3bpm+bl227l+mblm/b5vtavm1ax/ddpm9av3Obv2PctnE7t3fe1uXczu2alm07t/lcru3cxnVb +t3ee12Xd3ndZt/W7ZO+2vNs2zd9yvdu4bdu4Lff6nvd2L++2bdv6Xcu93dsyXfc1rtO4XN/8Hcv1 +Xdu2fdu4XNt07rLrHbfvOpftm7bv+77turftHr/vu7ZtG69t/sbtfJfxG89vPNftXKZvXKZtnb/j +2t5v/b75O65zntZvnL95ub/zurbtWu7v/ub7m79jW6Z1mq9rGt93F57LNF7zdW3rNU7n9W3LNL3T +eW3TMm3XNo7bfc3TuK7fPS3Xe9/fPS/Ttt7bvd3XPE/X+I3feC/3N93zvC3ztnzjeH3jPS/feC7f +OG3vMm3vOX/Hu93Tcm3nOH/Hcl7jNl7nt0zvdW3jdW3bOm3bfF7jvS73OJ3T/B3bdE7ndE/bdV7z +tFzbdW3TfY3XdS3bdm7L9l7j+K7ftXzv/C3XO83X8p3bNi/b+d3f8p33u1zbN067ajuXa5uX7/uu +bTzv5Trfc5rXazzP5drOa7rvZdu2ZT3H81u2bXuX9ZzeZd2md7qX9Vy/c/6ObbuX+dy2dZnPbb7G +efsGwAB2uD3f731t97ec3/hN6/Yu47d+2/iOy/he87a+471M2za+4/xt73p+43mPy3gt63h98/x+ +4/3O272s1z3d17S+07Wt03WN17Y9o9dz+d752+brkozX/B3Lek2j93nP9zct53297zq/9/LO7zve +yztv87VM23xf77Rd7/Qt03ZO03pJ3vG8r/HcpnXclvs6cjjCHQd7HC2CI7d9O24ORTPTRg5n5ba9 +NHvTHLksSY5LM/xEjxoYUCKICAihAxM4YvBgKZlhwor9+M2SI6HexTRKxe7MyLMCBYLds9txM6mQ +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 +bTEwU1ZHRmlsLyA6DQovWE1MTm9kZTF4bWxub2RlLW5vZGV0L0FycmF5O2NoaWxkcmVuKGZlVHVy +YnVsZW5jbm9kZW5hbWUgL3ZhbHUycmVzdWx0KHR1cmJhdHRyaWJ1dGU7ICwyc3RpdGNoVGlsZXNu +b1NudW1PY3RhdjJiYXNlRnJlcXVlbmN5MC4wNSwxZmVDb21wb3NpdGluKFNvdXJjZUdyYXBoaTJp +bm9wZWZ3KDEwMCVpZCkoQUlfQWxmYV8xaWR4eHl5aGVpZ2hvYmplY3QvRGVmIDtmcmFjdGFsTm9p +czQ0TW9ycGhvbG9neWRyYWRpdTEuZGlsYTFibmJPZmZzZWIybmQoLWR5Ym4yNURpc3BsYWNlbWVu +dE1hcDNzKHMzeENoYW5uZWxTZWxlY1J5KEE0M200MCAxMWFuaW1kdTVyZXN0YXIoYWx3YXliZWcw +ZnJvbShpbGxmcmVlenRvNXRvY2FsY01vZGxpbmVhTnN0ZERldmlkZGl0aXZyZWNjdW11bm9uZUdh +dXNzaWFuQmw1NDVjYzhjY2MxY2M4Y2NjY2MxY2NjTWVyZ2VObjFiMUJyaXNhU3VhLTUtNDQoRGVz +ZW5mb3F1b183NzMyaWxhdGFyXzY2M2VyRXJvczYwLnJlbW92MC5OMnJlcGVhdEQoaW5kZWZpbmNj +YzFuRXN0w6F0aWNvMjExIDE7MjAgMTU7MjAwIDIwMDsgMTUgMjA7MSAxIHNwbGlSMWJkY091bm5r +MmtrazEzMTM0NGFyaXRobWV0SnVlZ29EZVDDrXhlbGVzMig1MCA1OzIwIDIwOzE1eWVsbG93O2dy +ZWVuO2JsdWU7aW5kaWdvO3Zpb2xldDtyZWQ7b3JhbmxpZ2h0aW5nLWNvbERpc3RhbnRMYXppbXU4 +ZWxldjZlRGlmZnVzZWluZyhkdXJmYWNlUzVDb24xbFNwZWN1bGFyczE1RXhwb25lcmVsaXRQYWkw +MTCC1KhStUxkRkaSFOp0IgkSAgphkyCOgipL0gYSQGAYhsIwiEEYCEEQBEEQggRBEAIKYhAGwRgK +QhyS3rjOZobllO4k2M+wL/ZGAMGzuu5kRykQoMeICW+JyaTIHYr7nMIVzB/bAn8k2AgBj5FWcxyi +5MLqZ0BsHoOFbCqHfJ646+RhsSur5lqUWP6ORALoE43QNIm4JMcoEsdto0BrdFFHgRPjp7GOcDDQ +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 +MmFEN/fHF46oMdxOGRmRKIxcrOV9LE7cOh+sbUR1K07kLDLyIxKMzEiP216eUMuLZXYIN7I4mYgE +Izdsg8hEJAnSG+DzHjIRibi7AiNqDDnaqaRz2jl/zkpEYrFT2inf8bwyY7/2X8pMxqXLzJUZOSsR +iaUSkVj+tZVW+tcpXX4lEoACPJX2Zi+ttNa+lHdKKqn8SkRioZWIxOJtIVXLi30TKuvSojyqAuG2 +4kq7G+WVVnMpvRKRWCoRiUWTlswW7hjIFiK3blOM28mL2Dp2GJKZ7hO5EO4jM124WdvbQsT9kZn8 +uo5jed8q3DwevZy4Q1BuM4O6t3Unaan8Wlu3hUTIr0QkmbRktBGUVn4t72vtCZnpvo9CWsLdCiNk +uDs2bzPJlxgLOzIiifC4jlh3yn4p/Uyz1Xe+V5jc4PYSZcuLSZc/r3Wbs6mpdYo1nTfXrGlr7f0Z +kcCy1PPOjOetFueP63G9lGr1ymrvtHnam01bs/Z+tTmzfSvnrHdSW6uktdZ/r18prRrOLqWZPvaJ +58xYr2mV9Mq30qOrnhJTavX8+3Nip3lSjKmdPv8+pnj+xTJn/NorrdY+lvizvpRSmmWtElc7qaw0 +2+zzc8ay1mxztpa6xdTi/K9dSy+l01LNL61Uaq9U3ntpROLxKzX9er1eiavnq/OV90Yknnsrvl+l +pRGJx16qZa6erxfb7Dj7fKoxntfxa0o1fjptrVlPLDP+TCX++lrGUv/8qrmGMXUsp80Y16zzxJrn +jGX1i3HOV2r2Xo1vvRLjaj3zan+1vtrf6/Mz9Zmn9lZefPWl8jPN1Sv1OH2nd1J58aV23ownnnLO +/znfXjqpzJVSmvXMT5/imvm02eYM0zuza1rf9/r1aq9Nf+2znOlTz5rbf5v5U231a/uazuzN/uqb +Zfm6li/Wrr4Zdqthx/XSjGLX9D92DeeJJ/6LM0o1rOX5WtNzzpmp05tperN3rSm2NqPW/sx02uyp +zT+d1uzen5lqdNKbZ7V40kzqWWmma6a915rZO7HmdmZbazYf6/xazij1zC+2s2Zc65S1fq4vca01 +VzmzWq38f619ldT1nNqkHqdWw/ojEo+mWZ44IvFYSm2er2+mddpKcSavhnHVOGv702qzZhFJqWYb +k9U/0zmntFfamWW9EQksy0u1jOX9quX6Xj3La51OOiXG2uKJKZa5Ytcyvthz5nlijTOpK87olblq +W+/PTM6v1UpatbWZajwvlk8vvTfriqnjSzPG8u/E1avf+la7j2X1iuXbOjWvmcS6ZrJiSWsmKc3k +lLNiWWvFWD59remaaRf7tLhaq10sM6VXs1hqp1PmazOMZbYT1ymtfoz9Uq/Yb70381tpxnbaa+W9 +mp5W5ptNbDNdJ8XVbVZdc22rpJNm+jVas1m/VjlrFpF4tFtt79tKs4ytxlrTpmcckcC0Ni/WbjOJ +Z535qaXVbZarJ/tbL6a4Ulq1bHMmq742k/fKWf9WXanm9m0ms542k19tROKxmXypP5NZvs3sz5tZ +mbN6M5kpxXNeW29WbbbX4putzlq2+r7m92aS6ojE43heiaemr7302ojEg+Wsd2r3/vWp3fsYv2v2 +8Wdc88yZrZnMNUs8qfa31kxWe3HGmf6KtTZzJnPONWc005xJ+zXTPF3znEk6Nc4+cSY9IvHke6+t +2r04y+TNU7M3k4+pdm8mtWYv1hm+2dPPssdf09nmm7F28/93TIQQuVuytbU2x4qhrH5ZUlFUFBXF +Lb74Zqv5Y5xnBquh0s87seZYU2zzvXNeaqm1nzW+b3Wet5OpxdStzuq19t1am707rtnNs2rHOJN4 +YpdObdXuW831vzpYX50d33fPE5Znxjhjqum1eFZd7X19sVuqZ54TUw3Tq3G11CudmsvOxFmbmtKq +a64Wa3/xdWudvtZstlhOTe3Mmn+pVO2/V5t16bPWVU9PfV2fus1/PTpPrzdbemnWtLpnTN1v/ar5 +X2qzd7EOLwAFGFk7lOEmbtYXnqb3eRxPRVFRVJSKiESUmOTLAeTMP7N2Su28VvtfzT0eO2G2hiIS +j8fptG+nza5mbaVYs3q+11zfztefX6Pur7PtTEuz7Bdbm2WZ9AIXmsuJq0+N+qX3J82vsWsW1ulU +/1knzfpq2O/8SrGW5Xe01tqtTzw1l51c59VaffmsjrwWdiGrxTVnPzs6rqXLj0hWHVbG8qvd+R7x +tTaPg8U6To7hBxIAjR6pxcVEH44i17EnPna32jzQyNqucJ+6TYA72fcWF4o6PI7rUJo+iVORKkpE +It/xV2tnngIjCAPZ6vTdM9wzWFwndwf2mQHjKrvVfa5VDCW3WPFxIdtrd/a4sbgOjH0G+FoeJ8BE +gPMq5LgpVFvzvHj+9J9SpHKDBSik3B0Xkh0eF7Kh9J9MFzL2hR0frK0jC4Dfihs3EPZ5dghX+kRb +rGBxY7gttlEMN2sDN1j4hUTWVwI3027FOpZHeo0tTsCHQoodHjeOGyVLJooRCuWRH4WUAkKo3eFt +L8+sD4tBjFsUS7AYxBhyRgIbAnfbSmYhjn2ertse+6iu2x7qfayNYnV43ACbs6ija5fCEdV1sRCJ +8+Gaa/Ur4rhFkbO71ZYZWdynIhUi5B65lwApijsEwRhKYjHkQgR2yyOFu4vBvnH8OhvXbZIbve2K +OHc7ZJdkgZHrtpiE7PC4kNQkjmuXft45omoeXbs04dqlx9i1SyLv4zp2KAnsDuQ6VgSBPcrtcd0Y ++8CPomqc7evP8vGlKsrI+wDAhd9odh0eZ7O20OjapTp6XAiGO+STOyTc4fb2OG6dS/rvkQCo67bn +Ps2d8Pu6kGuXRlSBkeu47W3daXx1cB0e9xI5b7MIQ7hx6/aEqsWFIptJV1E48qOQINd5pIAQisTp +kGPs+2B93ocoW1zYIQuwvB1uoNQvcZukJnG6T9wT0vu4cQMAJ8cYOMYipCZx6N5hh3xq7VVRVnLK +8Os+lmyF27caw03q3a3kHrfuE7mW/IyKMnobFmN9H93yQKo6SRxKZGYZSqQaRa7UOd158/1/z7Ri +WjPNFHvG+v7EE0+bbcbYeraOtfZXc+lVz6l11nw+tm6plXe6ru9a1lxeem+9N1e3ec5cn2r60y2m +1LXWU1M8elvXcWGnIv/+Z+z1K77TuuZWY01d84rnzNhnvv46U3rnz0wrdus3Xzyp/Z9Z8/xZT+o6 +T0zr5/t1evZc60+KsdbY851u/X6tP/U7xdhar/NnnvpanWe99/70Oa/PW6e+FmPXd2Lq1OJpJ9ZP +q755YmqpzVjPPOnPSul9Xeekbm/2TOvF1k7qdNJMKc0+ac3Y2kofX7dzusV1Tvfs9lb61GLsXv/p +a8+1am7fbbWZzmzt9Umz51l93krvvdVWenXV3LWerjUP0nW+N+Of7tTa69Ren7bSOuljezV+/fPv +1dy/47RFLhSxTtjta1y1phNrTud06hlTXSt+p5Zaxxn7U+s+6b+uGtuJcaVUZ12t/fzVYqf1v2Z3 +ax3ra+v0qi/97E4ptbd69osv1rN+tj+pZ/9cP1usK51+aca03oy19okxrlOb09Jr7+PqGt/5eNaK +r+bZX99Lc63aaq71Y2p/6uo/vWoepL0ak7RU8/kaTzupW/rZ+mtrp1Pr1q+kT/1ntTY/ptZWSm3V +t2oepFeNSXrVeCo/L9YYU1rn+6xeNddOacauaaVVk5J2TneqqWPsjq1Pe31qivXbr1fTrO2l9C21 +U5tPNX36byeuNVd/PO9POu3T+tTmivHMNddc3bVa6aRf/yd2zVKq8VT80lnxZ/201ndKr+N7MdWT ++sTWeq60UrcWX+tU4+tYU82rnTdXx3RqrVo969TXr8WanZoHaaemdFan+en9at3p1dZqizUpaf3t +33+vGHue+b6+OL+9uNrPuL6e9E73rElJmx/PfKnL/2xptvTdYu1+sbX0qyYlPfutdmZ89a1Vc2mp +T/uV1unv2jHW8Gf8luKJKdWYpGtrZ8U+neL5eN77+s456Z33673ZbXY79Vuc/85qs54314o1zThP +muljej8/vtNr/krxY4sfZ5yv1RpPq/nMj/O/nXVSOjWNSdpsK7XVZqqztnTS63k+9XwvdX+b8WtM +qXZNK75W16wxSf9qtd88raVW52mx5kHarElJ1xqTdKp5/qz5xdNWfW321zxI15qUdH+NSdrXeCp6 +Ts1lxZg6vbj6U3y108cY/zZ6u2MzVboYADgVb+M8ld0Kt0WFU3lImTzy8/gmKhXWKSKJSACwOu1x +3N12ankglSZxKL9p7JYMvxOGd0qo0xZj3seJ4baQsuVtIAGQHFnb5QLd3yEf4dayrFBkASD8XtwG +sjaw5XWrsGOJ3YqCX/hBSfALP1u3uy3cQPn0L+QXwoXIz2N3rj1x76ye8bXz7fTPXl9z+tTi+3+z +Viv9Oav/V58365o9a793glLj2jtfYjuzTGJIt6BEqsnixvAtzQiR4bbFcHvh55mYUtxa2w6luHlc +DEQE1azaH0XXh2FcBwNHz+M1bif5U2d79XR316wouy1yHY+YdGJacdavPcb5bdVc/k/N7ePPVlse +az4xP8TNJAsAAACxECzmbQBwsK/lbaOFx4EXo/c2rrVNeFxp5J8aWbtz7dBiPKlGO+SD7bBjf1R7 +3MYv9IgEs4VUFg9ymwYLPy0tlbVb4TbaTO2kfjW2eup/i62DruuBVAI1RG1tWVd7LXbH9ymd1s5s +JxbHiTmAJ/W5yIgyHxf14v/qFl8qsWP8XnO291pNcwfCONSHx15eFCCcFKwzpwfbxP32CAFVM/4Z +LvnCgBqGoY8M0GdoKgTDqJKlGDAEYwpX9gHHRQMWHBiRb6nqMXkfFIIb0tAIecSETRTgjtAAhOuQ +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 +vUx56Roy7n+uduIZr69X1M/s513jPcddfPl/ab+5/nbIz8l8zfhqa2iNexuOCzOyL9/b3vdun207 +L9Zbrui7fcuuCxef8fLWvNfzIWLn8n70y17N7G4zRFu5x70oMm17ze7lY2XTez9uXJyLnLhrd12x +3w17EV3N9jzRkz83cdHWeNnm7qkdW/7mY/o+6ubCxVZV/H7m1N5HNuXf2/PW7tvv7Gtbiu39u1J9 +1VDxbqHvblue6SG3Nt5i/n0jnrJqtz5j62/nq6/r8Z6+LV8UvX3/Lu8e7u53bqrdty3yL2fsPWdd +dD7vZeyWqIe2Zt4bTgrup6vtHTL+5zrO5sZt++V6BozL3t59te7ZaidnnyWv1uN/Zvy1/PW727lY +dXXO3qen6qKt7py8qM662jHVMHXtIuJjan+3oSX/4jwDvG3TTVvDpYun6q7uam+/aLaJq8Zj5T9e +29tFZ+VlenufbrbhpLjz3/d1v+Jymt377m2ydd4uzTa8W2a+pS55K7f1z5WrPVf2PGb/7Ftm2ppt +h6Jcv4tPu/V6l/Gue3P9X7iah5z2hr6YzXXZcZVzGaPIwNafm+2YuS0ZF5+itjLyHvI5ctY0NBh8 +MBg2nBUeqKCROfGgkTGVmIGDAarCY3URMpowGdyG87Iy+AzgmECZJlQMGw7KysAMbA3MYM/g+zYc +GRUAnKwOvEx4PBvOgZeJEg8pADAKvULPhsPg2XBGEAlCng3Hs+F4NhwMkIllpEZmMAEsUKPSwtAE +KWfwSPUKZ/TCJCNCPw4p82w4LCgzI8ggOpFGIEgjnyaNTKZNVOZxgCGGJADjI8Ji4iEhQQ6hlZEC +TcjKKLROCGykU1rABdCCBQT2US0JBFIJQMUWVIuBZmQMqqFiogUnMQMaGL4j4hPqqBxqQB2LhZGo +wyCC8ZFhCbWUDjgMLNywBanrDHjAMMGYJDRKK6CQhSWgpDBGCtZt8mw4HB6NppHJkkBeolGxnqHx +bDgKnhWFZNhIkUA7siQNiQhQ6pjxIEC1qFxEeAJEQAIzAc2yMDBxyzQqQBNghQobIaknBaATASg8 +Fl4SOCgEOBmhRCIoK6IJWFDwhIXBZGDiRJc6OLnlwbIJUCoC1IygKkUkGgZALGAIwURloo+Dkwuh +DExciAPlZIVikh0hKR8kaSgggb/CGQV5MXWYYgS0gpPJg4KH6eQA4cHmMeIgMLJTgQVH8BaJDApW +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 +o7bp7a5HPLsUd3/nf+5dO9vM5YnK6emJLs9rK031Xcz0x/67vmNXtubMX6bYx8bvZ7juLZ3v1yfi +v/FqNE3sbsY9TEZbppeXuH72nphq0Hbr/Ih4jfeNhsbJ6Z2JfrzPiYzJumeOy9Fx8R4X9dZbE/WN +G5fNGvlk0Kf43mh5vEzx9RZ/+dn6DSfF9Nano6V252r/bB0Xqn+nWS/PXMv1bbxP1/08trT9xYqb ++f9p9np56ri2m/q7VPHcOH8Zs3HltXWfLdq5+xkk4rX5ytWfsVcmrz1l9Dz/PF999mznvOfLDfKu +ny/7EZe5GHyzf98/fvvqr23F1qa8di3rHeYbI65OTHZXXKq+i9pL8fm18Rar9Xsv5eRkZrZ1dsx8 +54rPqcam3qbL9talrvRWXfOQf9WSFdv/tdny0nGRWRlz/9Buab9dK/eeQaN3mi679Ot0XojsqZbc +KLK0vYW9pmx5iMaazOzI6/976nJ56u3L/7jctstrm9a/6Mu4Z3f2huudi4l8yJbcqL+Yx9nYq6d8 +t+nauXp4/wtvNbXXXxl3w0np7//c30SRwXviYtH+uWVK9l2yrabuqvKlHrOuJb9xvpnvYe7SEy17 +L//5qqu5I9tqc1Rs1F+HuXynmoffjpmrb4xnvWJ/w/X3hnh7fIjKzJjd2t7rbm93j8n675iN+d2N +rcqIqijKFHPm8+z05dmJ13Z4m+aJ6gtxG9H1jPlxnRvt7X114qf2sfmzqy+uT2T1s0f3tWRl5vzF +ibgvWmb1Ns1l649p2c1rE0V4tivz9Tpd9tB/c9cp3iqqhj12Pz3VVusZY3/qNa5ZdqvdKWf/2veZ +ba+1Mbozvne3szNq7q/uW7xeX9+bxre6z3Bxvm7/fu8fn7scu5mt6/vL5E7Fy113zIWmycf2nJit +dmbIfAaWyxvVuO820axzNbNuOKdc81vnPuXLtH5HU3/OZmbkTWPMc29evcnG6my4tLl3lxe6LLJz +XiuuCyfu6fLaJdrpdacdst6uL9y8dZmGvvodc/tcz0/317//uRFf+W+9bmt6o6F/I/M795lzoz0u +My4muyabmiXqnj/6+/f9rzOaHSauGaphyrP3Wyev9lW2VEe0U7T91WtcbprnZ3lviu6Nt9ptN5zT +b27u2anp7dr73/Prxm383EPsTWbjW9e5t8psp5ecudq9dE+xd+Wpc+8d3zGePjovz/dMe15cbqvb +jf6qqY+4tq798Hu9pnnrvbGfP645Iq/c71zXn3bZ9rh0D/f6O9X9jncxb+X+N7I77uHh3t3vbubb +X39+ny+j46FiL3VRy9vu3l+tl76rG0Wofeu9flHTzc14Of2dMdlWNjY26rJzojsiGjamovZpL9W1 +/ty/hYzm37lop5m+ydenmdbM/Lmebm68ftnN1Pke3W7PIP1wDXf12g0zNZvPubedt5v9uBXxba2e +MfbZslnzcS+qeuuayODzrxFbM99s9bb1OBebdxu0YubmYkbO3b++frbcM0v1t+fG67x/PU87bMNn +3rftvt699NRt9MzWY9MzPYO35X5e2auoS/XseD0PP9fuGWvir99SVbbMU0TWXKh2u9eLu09P2f9v +baOlL8/TY779vF2dzO+GdoycznicmMZ66azoy77IZvm7p5vXK99L3rXUlb35l393tvquU1lPfTka +Zzf2q28q6jUn98L86/z18+w15H/0s17dd6lvu8+rnc3TXd1QpL+6v+W8Xt/+hcqd6Kttyey5yX6s +6870zNqPLfm9Ew3XofPe0rZdNTf2Pv798+YU334+1N97Nne+xW6LhqJzte3DPLzlY080ds5D0dkZ +ustbcubp2/liO0/mVLvFqId+2Wi93uypv14//T0Zuxe9WfkP1VGV349z+Syx3XnXme1av5nXf7Pu +ZTraI/ctnoHruZ6q9uF9dv/zbepq19S+9EvZ1F511oV+5rmZi+7nx5trXWxvPU1RBimZibmJyfyo +r9oLMa330n+XcUqmf7b++uvljem43wv90Bs9M9W4P9++td/2vXN1r5JRV9+h6zK3meh4rb+/e9Fv +/5j99RjRv3nvEC9taZ8Bs7rjUuTNdT/npe28t3R/GbuPE4/zdOnJTP1X/Rb3rTVXtn1O1MtWxqV9 +14iWq+vm+/64ss9AuZ81Uzf52i23L3+xXUy7n3HN3i//+JSz8fmfbS+/Ufmb2dM3064/rXU3bfWt +i4eubv5p6czL+NTe/FZi/purujHuQm70PIO8vU3PXfTT3rVlrJ6H2ev57LDPlvM1/2cve1t9W7XV +rZiv+bia6+aXf2u/ejXc9fzV/7bkNrtfuqjsePj7AbkwSzwlnhKPS4mnxFPiKfGUeEo8JZ4ST4mn +xOMuJR4t8axKPCWeEk+Jx6XE8yWeEk+Jp8RT4inxlHhKPC4lnpoSz4ajYjKwEo+H21p0TV+7VdzU +xY+tnv/nmymm26jed9efi6x8+dyvyiv7bG3lv+7tmu67fyt1If+am3LzeUq/Ltsn6++u97OvXjZj +V7VfvItvdgu/sb1x8bocrp7qrle9DWeF3taWt/ev67ho7qmd/Ls6d1U38/3XK3Yepz8jrv78/tOl +2fTv1P827TYFL23Z8h6yqa1c5eTNPV/cvO7193Wbfcd637rSDefU2baniZpn3OxruG7a9te69qqf +fay+zInuqMvGqp7+u1BVl+qxeTfbSn1vu2bVS8n9N1TEU9N1XF3u4oauaqsTd1dfzdyskXv91uNZ +320rfqamSwomc+q6xO7kY0yDxD7Mlcnsx2yKbb8y235t/iW/PrOagaahIeo3Mlq3rW5zuqMfJu5d +Hmoj2iGv2eNqU/1k12NN4VXVP/7jfkxEPey/N87O+1+KjZeKixeV8z2Vrx9RV+cu1Vsz/JT+5fN+ +A3duXzc+ZnTU5PTFyu2Ka81uE7+Nm8/WnbnfdpqhL787fNPM5Ws/17budUTHW3t3ufn4a5fL2uvu ++jBl01eR+c5arZv7ttU9bzt1FfHXb4XGbd2GZsm559mGfYZ/a+357lwS1fHQ2pzt2PqQzWx1v+Kp +oaMz92KXZjbRSm3Vcq3mau719uLtTmPz/G3Gb2RMRkx3XW535Fxf3Y/dubwR1VfbjryweRcXuZPN +Uj/3cW2/sqqfoi5v087N67WFfW6ZnCvV7fi6nXW/fRfTlvH7Ev3Q3QyX84ZzWu91ndeKjn3Ivd7q +r36OiWvbtZcN9Y3P+hXbdTVjfyp/7mleI/J6frvvtO7u7v7U8177dzxf16zevOGkoG72L+fc/NN2 +5c+9TDRXPmdD1M7F/dvVX9Q+z9vu/V/Nv3q+mJOZvd87ezWfM6OzL+cNJ2WduZfR7w/1Mq9N743x ++dd1ertqu7rxJa5n3PTdvuWM2OuIdov5e9Wl8xyRb9Vtz3kd592z9lq2ZFvGavyZ6xjT79bx9W2y +bTM2ql7vGZo9fqfu6frcXYP8Q/Z75Q0nxW3T2o1NLdv28dfU1lpxUx4dDXP5MjamOmNjnj/vMi9u +t7/bHXJ+Kn4y7rqiJRp6Mmvu3S3jDSfll39NU22X8zY3j10e+239z6yzf9vQ7H7xWvPlalU8W64b +Tor5nqper/N+u/o+o6r9O7+Z92K7L9wNJ8Uud3u9GvT2vi7fJnIb39uisaniWrVcqZvqcujPuFBT +c391dh/+rdMNZ5XW/8qMxqs2bTbdddispriy1WzGztxwXFrZG5OR1/bY0jO70cC1jTecFFzePHVl +3/7lDSdF164zZ3tbup6n32oXXD3kztRFxcc9ZP9bX2xLXD7uzNM07H29lemdt8puaY6m+Lhq7JLW +eN2svrud64meb4ecyI+MZvvKZt24yupsf6l3p92fyGiL1yw/3zv5k3916VkvXU43tuU11rZ2c1vL +XVvI7q3b5squ3W58i5q7Dl3NlpPT3JfuXzfaLUP9y9XOldedK/tUdaXu26XBvj3yv3p2ou5iNPv/ +PMNdvfjIre+LNZEz+3y12SGb2yp7rnJ57Xmn2epeGethJvu7serl563/f75c73W1NEj318/Vy2t7 +F3mVOXm5+RNdF1f79o5t8RncOTrbwmVP973dtG9e5eR2OWvD9l52j4bsa9ZuyX64S1duOClrBtec +67mQjxXfjxXzWx9tnf9qauIyRv42S228W7f280t21bTF9NzedQZo6mq6/s/w1q/72V+VcT3yyu7d +Pf+2W7+n+Zvr/njsS5m3O3OPsZduuyNbd++d2jrk5s3vxtvr09MmI26zoX2uLS42UF1+43RstlTH +xdy7eH5+3bp2vR01hZ85k/l8IVrj5uu5/bLc62Wa6cfqy/iue/Ea/5WX4Zra7i/D4929R+7ePrY7 +9EfEPH7Ez85eW1Rfp/aY63ibfO7m93cG6sjHr5afesvPs3u/3RT7si/tnO/TEtGstc2VP7HVXD4P +mVmPT0+5D1cus//pmq47vrb14vyVml+6Ke/b8uylJ1r/XsfYiufKuu2Kjqz5ifoitOS25bT7bl0u +SlRsdd/zbH7dV3O+5MM2e8SFjN++3fzN577LeGu2eGq9OuvWW3qarusXE/+3rTOXiwy4v7918dq2 +eyo+shubP/8h4uIt3fzGN+9czHjqdtd6m/nK7dyLnGz2yave9of5Zp/K9/bovowZEw3PcvV+pnP2 +4t1n3+e6dU/OU8VTZstsRdvD1S6K78fr+FHdeB265kpOfUM8te5dn72umPjHufBEt6qWityde525 +uLYQUTf5jl1X98yQ+/9Eja2q23a8bjnfdf35zVqzt/E5bXMVRcz22vjWtsq5i32RPfsYF6attJxu +qARUxslQD6PSMUQzEgAAAGMRCACIGBCKR+Ri+VwNMaH1ARQAA6dYIDIcJBaJBEISWTwikMRACmMY +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 + + + + \ No newline at end of file diff --git a/src/environments/api.key.example.ts b/src/environments/api.key.example.ts new file mode 100644 index 00000000..bbde4fcd --- /dev/null +++ b/src/environments/api.key.example.ts @@ -0,0 +1,10 @@ +export const apiKeys = { + produccion: '', + develop: '', + local: '', +}; + +export const url = { + produccion: '', + demo: '', +}; diff --git a/src/environments/environment.dev.ts b/src/environments/environment.dev.ts index 0432aef0..98ca5a5f 100644 --- a/src/environments/environment.dev.ts +++ b/src/environments/environment.dev.ts @@ -1,5 +1,9 @@ +import { certificate, url } from './api.key'; + export const environment = { - production: true, - API_END_POINT: 'https://prescription-validator-api.herokuapp.com/api', - ANDES_API: 'https://app.andes.gob.ar/api' + production: false, + API_END_POINT: 'https://recetardemo.andes.gob.ar/api', + ANDES_API: 'https://app.andes.gob.ar/api', + CERTIFICATE_SECRET_KEY: certificate.demo, + FRONTEND_URL: url.demo }; diff --git a/src/environments/environment.prod.ts b/src/environments/environment.prod.ts index 7b175f71..d5c1fd02 100644 --- a/src/environments/environment.prod.ts +++ b/src/environments/environment.prod.ts @@ -1,5 +1,9 @@ +import { certificate, url } from './api.key'; + export const environment = { - production: true, - API_END_POINT: 'https://recetar.andes.gob.ar/api', - ANDES_API: 'https://app.andes.gob.ar/api' + production: true, + API_END_POINT: 'https://recetar.andes.gob.ar/api', + ANDES_API: 'https://app.andes.gob.ar/api', + CERTIFICATE_SECRET_KEY: certificate.produccion, + FRONTEND_URL: url.produccion }; diff --git a/src/environments/environment.ts b/src/environments/environment.ts index ce297580..e17dfdee 100644 --- a/src/environments/environment.ts +++ b/src/environments/environment.ts @@ -2,10 +2,13 @@ // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. +import { certificate } from './api.key'; export const environment = { - production: false, - API_END_POINT: 'http://localhost:4000/api', - ANDES_API: 'https://app.andes.gob.ar/api', + production: false, + API_END_POINT: 'http://localhost:4000/api', + ANDES_API: 'https://app.andes.gob.ar/api', + CERTIFICATE_SECRET_KEY: certificate.local, + FRONTEND_URL: 'http://localhost:4200', }; /* * For easier debugging in development mode, you can import the following file @@ -14,4 +17,4 @@ export const environment = { * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ -// import 'zone.js/dist/zone-error'; // Included with Angular CLI. +// import 'zone.js/plugins/zone-error'; // Included with Angular CLI. diff --git a/src/polyfills.ts b/src/polyfills.ts index 03711e5d..67581db7 100644 --- a/src/polyfills.ts +++ b/src/polyfills.ts @@ -55,7 +55,7 @@ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ -import 'zone.js/dist/zone'; // Included with Angular CLI. +import 'zone.js'; // Included with Angular CLI. /*************************************************************************************************** diff --git a/src/styles.sass b/src/styles.sass index 69be290a..602ba05b 100644 --- a/src/styles.sass +++ b/src/styles.sass @@ -12,7 +12,6 @@ body .wrapper width: 80% height: auto - min-height: calc(100vh - (#{$header-height} + #{$footer-height} + #{$app-component})) margin: auto @media (min-width: $xx-larger-devices) and (max-width: $xxx-larger-devices) min-width: calc(#{$xx-larger-devices} - 20px) diff --git a/src/test.ts b/src/test.ts index 50193eb0..20423564 100644 --- a/src/test.ts +++ b/src/test.ts @@ -1,6 +1,6 @@ // This file is required by karma.conf.js and loads recursively all the .spec and framework files -import 'zone.js/dist/zone-testing'; +import 'zone.js/testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, diff --git a/tsconfig.json b/tsconfig.json index 909957d4..7ea70f6c 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -13,13 +13,14 @@ "@pharmacists/*": ["app/pharmacists/*"], "@animations/*": ["app/animations/*"], "@root/*": ["./*"], + "@audit/*": ["app/audit/*"] }, "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, - "module": "esnext", + "module": "es2020", "moduleResolution": "node", "importHelpers": true, "target": "es2015", diff --git a/tslint.json b/tslint.json index c8d70f15..6ccb655d 100644 --- a/tslint.json +++ b/tslint.json @@ -1,13 +1,21 @@ { "extends": "tslint:recommended", "rules": { + "align": { + "options": [ + "parameters", + "statements" + ] + }, "array-type": false, "arrow-parens": false, + "arrow-return-shorthand": true, "deprecation": { "severity": "warning" }, "component-class-suffix": true, "contextual-lifecycle": true, + "curly": true, "directive-class-suffix": true, "directive-selector": [ true, @@ -21,10 +29,17 @@ "app", "kebab-case" ], + "eofline": true, "import-blacklist": [ true, "rxjs/Rx" ], + "import-spacing": true, + "indent": { + "options": [ + "spaces" + ] + }, "interface-name": false, "max-classes-per-file": false, "max-line-length": [ @@ -79,11 +94,60 @@ "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, + "semicolon": { + "options": [ + "always" + ] + }, + "space-before-function-paren": { + "options": { + "anonymous": "never", + "asyncArrow": "always", + "constructor": "never", + "method": "never", + "named": "never" + } + }, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, + "typedef-whitespace": { + "options": [ + { + "call-signature": "nospace", + "index-signature": "nospace", + "parameter": "nospace", + "property-declaration": "nospace", + "variable-declaration": "nospace" + }, + { + "call-signature": "onespace", + "index-signature": "onespace", + "parameter": "onespace", + "property-declaration": "onespace", + "variable-declaration": "onespace" + } + ] + }, "use-lifecycle-interface": true, - "use-pipe-transform-interface": true + "use-pipe-transform-interface": true, + "variable-name": { + "options": [ + "ban-keywords", + "check-format", + "allow-pascal-case" + ] + }, + "whitespace": { + "options": [ + "check-branch", + "check-decl", + "check-operator", + "check-separator", + "check-type", + "check-typecast" + ] + } }, "rulesDirectory": [ "codelyzer"