diff --git a/.browserslistrc b/.browserslistrc new file mode 100644 index 0000000000000000000000000000000000000000..4f9ac26980c156a3d525267010d5f78144b43519 --- /dev/null +++ b/.browserslistrc @@ -0,0 +1,16 @@ +# This file is used by the build system to adjust CSS and JS output to support the specified browsers below. +# For additional information regarding the format and rule options, please see: +# https://github.com/browserslist/browserslist#queries + +# For the full list of supported browsers by the Angular framework, please see: +# https://angular.io/guide/browser-support + +# You can see what browsers were selected by your queries by running: +# npx browserslist + +last 1 Chrome version +last 1 Firefox version +last 2 Edge major versions +last 2 Safari major versions +last 2 iOS major versions +Firefox ESR diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000000000000000000000000000000000000..59d9a3a3e73ffc640517ef488f6f89d6270195d1 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,16 @@ +# Editor configuration, see https://editorconfig.org +root = true + +[*] +charset = utf-8 +indent_style = space +indent_size = 2 +insert_final_newline = true +trim_trailing_whitespace = true + +[*.ts] +quote_type = single + +[*.md] +max_line_length = off +trim_trailing_whitespace = false diff --git a/.eslintrc.json b/.eslintrc.json new file mode 100644 index 0000000000000000000000000000000000000000..ded3b3e10b54ac4783642d9aea56b4e830920877 --- /dev/null +++ b/.eslintrc.json @@ -0,0 +1,211 @@ +{ + "root": true, + "ignorePatterns": [ + "projects/**/*" + ], + "overrides": [ + { + "files": [ + "*.ts" + ], + "parserOptions": { + "project": [ + "tsconfig.json" + ], + "createDefaultProgram": true + }, + "extends": [ + "plugin:@angular-eslint/recommended", + "plugin:@angular-eslint/template/process-inline-templates" + ], + "rules": { + "padding-line-between-statements": [ + "error", + { + "blankLine": "always", + "prev": "*", + "next": "return" + }, + { + "blankLine": "always", + "prev": [ + "const", + "let", + "var" + ], + "next": "*" + }, + { + "blankLine": "any", + "prev": [ + "const", + "let", + "var" + ], + "next": [ + "const", + "let", + "var" + ] + }, + { + "blankLine": "always", + "prev": "*", + "next": "block" + }, + { + "blankLine": "always", + "prev": "block", + "next": "*" + }, + { + "blankLine": "always", + "prev": "*", + "next": "block-like" + }, + { + "blankLine": "always", + "prev": "block-like", + "next": "*" + } + ], + "function-paren-newline": [ + "off" + ], + "indent": [ + "error", + 2, + { + "SwitchCase": 1 + } + ], + "semi": [ + "error", + "always" + ], + "max-len": [ + "error", + { + "code": 120 + } + ], + "quotes": [ + "error", + "single" + ], + "comma-dangle": [ + "error", + "only-multiline" + ], + "object-curly-spacing": [ + "error", + "always" + ], + "arrow-parens": [ + "error", + "always" + ], + "linebreak-style": [ + "off" + ], + "no-multiple-empty-lines": [ + "error" + ], + "space-before-blocks": [ + "error" + ], + "no-var": [ + "error" + ], + "no-duplicate-imports": [ + "error" + ], + "no-prototype-builtins": [ + "off" + ], + "@typescript-eslint/no-unsafe-assignment": [ + "off" + ], + "@typescript-eslint/no-inferrable-types": [ + "off" + ], + "@angular-eslint/no-output-rename": [ + "off" + ], + "@angular-eslint/no-output-on-prefix": [ + "off" + ], + "@typescript-eslint/no-floating-promises": [ + "off" + ], + "@typescript-eslint/unbound-method": [ + "off" + ], + "@typescript-eslint/no-empty-function": [ + "off" + ], + "@typescript-eslint/no-unsafe-member-access": [ + "off" + ], + "@typescript-eslint/no-unsafe-call": [ + "off" + ], + "@typescript-eslint/no-explicit-any": [ + "off" + ], + "@typescript-eslint/no-unsafe-return": [ + "off" + ], + "@typescript-eslint/explicit-module-boundary-types": [ + "off" + ], + "@typescript-eslint/explicit-member-accessibility": [ + "error", + { + "accessibility": "explicit", + "overrides": { + "accessors": "explicit", + "constructors": "no-public", + "methods": "explicit", + "properties": "explicit", + "parameterProperties": "explicit" + } + } + ], + "@angular-eslint/directive-selector": [ + "error", + { + "type": "attribute", + "prefix": "os", + "style": "camelCase" + } + ], + "@angular-eslint/component-selector": [ + "error", + { + "type": "element", + "prefix": "os", + "style": "kebab-case" + } + ] + } + }, + { + "files": [ + "*.html" + ], + "extends": [ + "plugin:@angular-eslint/template/recommended" + ], + "rules": {} + }, + { + "files": [ + "*.ts" + ], + "extends": [ + "plugin:ngrx/recommended" + ] + } + ] +} diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..0711527ef9d5c117396e6c03290a76658e6384ed --- /dev/null +++ b/.gitignore @@ -0,0 +1,42 @@ +# See http://help.github.com/ignore-files/ for more about ignoring files. + +# Compiled output +/dist +/tmp +/out-tsc +/bazel-out + +# Node +/node_modules +npm-debug.log +yarn-error.log + +# IDEs and editors +.idea/ +.project +.classpath +.c9/ +*.launch +.settings/ +*.sublime-workspace + +# Visual Studio Code +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json +.history/* + +# Miscellaneous +/.angular/cache +.sass-cache/ +/connect.lock +/coverage +/libpeerconnection.log +testem.log +/typings + +# System files +.DS_Store +Thumbs.db diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..fd9e5e747b2aba2392c4827d18ee0f7da9c17887 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,21 @@ +FROM node:16.14.2-alpine as builder + +WORKDIR /offshift + +COPY . /offshift/ + +RUN npm install + +RUN npm run build:prod + +FROM nginx:1.21.6-alpine + +COPY nginx.conf /etc/nginx/conf.d/default.conf + +RUN rm -rf /usr/share/nginx/html/* + +COPY --from=builder /offshift/dist /usr/share/nginx/html + +EXPOSE 8080 + +CMD ["nginx", "-g", "daemon off;"] diff --git a/README.md b/README.md index f3b17fd80bf58a69cfa198a370a8ee54ea92711e..d4c8d8479befe26e0e33739575fe79d75f7a906e 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,41 @@ -# Pilot Frontend +# OffshiftFe +This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.2.6. + +## Development server + +Run `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files. + +## Code scaffolding + +Run `ng generate component component-name` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module`. + +## Build + +Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory. + +## Running unit tests + +Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io). + +## Running end-to-end tests + +Run `ng e2e` to execute the end-to-end tests via a platform of your choice. To use this command, you need to first add a package that implements end-to-end testing capabilities. + +## Further help + +To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page. + +## Docker + +###Frontend + +`docker build -t offshift-frontend .` + +`docker run -p 8080:80 offshift-frontend` + +###Client + +`docker build -t offshift-client .` + +`docker run -p 10000:10000 offshift-client` diff --git a/angular.json b/angular.json new file mode 100644 index 0000000000000000000000000000000000000000..856f28dcc1aa0cf66a7888e2ae433a330c8cdd6c --- /dev/null +++ b/angular.json @@ -0,0 +1,146 @@ +{ + "$schema": "./node_modules/@angular/cli/lib/config/schema.json", + "version": 1, + "newProjectRoot": "projects", + "projects": { + "offshift-fe": { + "projectType": "application", + "schematics": { + "@schematics/angular:component": { + "style": "scss", + "changeDetection": "OnPush" + }, + "@schematics/angular:application": { + "strict": true + } + }, + "root": "", + "sourceRoot": "src", + "prefix": "os", + "architect": { + "build": { + "builder": "@angular-devkit/build-angular:browser", + "options": { + "outputPath": "dist/offshift-fe", + "index": "src/index.html", + "main": "src/main.ts", + "polyfills": "src/polyfills.ts", + "tsConfig": "tsconfig.app.json", + "inlineStyleLanguage": "scss", + "assets": [ + "src/favicon.ico", + "src/assets" + ], + "styles": [ + "./node_modules/primeicons/primeicons.css", + "./node_modules/primeng/resources/primeng.min.css", + "src/styles.scss" + ], + "scripts": [ + "./node_modules/chart.js/dist/chart.min.js" + ], + "allowedCommonJsDependencies": [ + "core-js/modules/es.array.filter", + "core-js/modules/es.array.for-each", + "core-js/modules/es.array.iterator", + "core-js/modules/es.array.reduce", + "core-js/modules/es.function.name", + "core-js/modules/es.object.assign", + "core-js/modules/es.object.to-string", + "core-js/modules/es.parse-int", + "core-js/modules/es.regexp.exec", + "core-js/modules/es.string.iterator", + "core-js/modules/es.string.match", + "core-js/modules/es.string.replace", + "core-js/modules/es.weak-map", + "core-js/modules/web.dom-collections.iterator", + "web3", + "hash.js" + ] + }, + "configurations": { + "production": { + "budgets": [ + { + "type": "initial", + "maximumWarning": "4mb", + "maximumError": "5mb" + }, + { + "type": "anyComponentStyle", + "maximumWarning": "10kb", + "maximumError": "12kb" + } + ], + "fileReplacements": [ + { + "replace": "src/environments/environment.ts", + "with": "src/environments/environment.prod.ts" + } + ], + "outputHashing": "all" + }, + "development": { + "buildOptimizer": false, + "optimization": false, + "vendorChunk": true, + "extractLicenses": false, + "sourceMap": true, + "namedChunks": true + } + }, + "defaultConfiguration": "production" + }, + "serve": { + "builder": "@angular-devkit/build-angular:dev-server", + "configurations": { + "production": { + "browserTarget": "offshift-fe:build:production" + }, + "development": { + "browserTarget": "offshift-fe:build:development" + } + }, + "defaultConfiguration": "development" + }, + "extract-i18n": { + "builder": "@angular-devkit/build-angular:extract-i18n", + "options": { + "browserTarget": "offshift-fe:build" + } + }, + "test": { + "builder": "@angular-devkit/build-angular:karma", + "options": { + "main": "src/test.ts", + "polyfills": "src/polyfills.ts", + "tsConfig": "tsconfig.spec.json", + "karmaConfig": "karma.conf.js", + "inlineStyleLanguage": "scss", + "assets": [ + "src/favicon.ico", + "src/assets" + ], + "styles": [ + "src/styles.scss" + ], + "scripts": [] + } + }, + "lint": { + "builder": "@angular-eslint/builder:lint", + "options": { + "lintFilePatterns": [ + "src/**/*.ts", + "src/**/*.html" + ] + } + } + } + } + }, + "defaultProject": "offshift-fe", + "cli": { + "defaultCollection": "@angular-eslint/schematics" + } +} diff --git a/karma.conf.js b/karma.conf.js new file mode 100644 index 0000000000000000000000000000000000000000..634ff5cd2738376c507456a672e24784e9234e4e --- /dev/null +++ b/karma.conf.js @@ -0,0 +1,44 @@ +// Karma configuration file, see link for more information +// https://karma-runner.github.io/1.0/config/configuration-file.html + +module.exports = function (config) { + config.set({ + basePath: '', + frameworks: ['jasmine', '@angular-devkit/build-angular'], + plugins: [ + require('karma-jasmine'), + require('karma-chrome-launcher'), + require('karma-jasmine-html-reporter'), + require('karma-coverage'), + require('@angular-devkit/build-angular/plugins/karma') + ], + client: { + jasmine: { + // you can add configuration options for Jasmine here + // the possible options are listed at https://jasmine.github.io/api/edge/Configuration.html + // for example, you can disable the random execution with `random: false` + // or set a specific seed with `seed: 4321` + }, + clearContext: false // leave Jasmine Spec Runner output visible in browser + }, + jasmineHtmlReporter: { + suppressAll: true // removes the duplicated traces + }, + coverageReporter: { + dir: require('path').join(__dirname, './coverage/offshift-fe'), + subdir: '.', + reporters: [ + { type: 'html' }, + { type: 'text-summary' } + ] + }, + reporters: ['progress', 'kjhtml'], + port: 9876, + colors: true, + logLevel: config.LOG_INFO, + autoWatch: true, + browsers: ['Chrome'], + singleRun: false, + restartOnFileChange: true + }); +}; diff --git a/nginx.conf b/nginx.conf new file mode 100644 index 0000000000000000000000000000000000000000..77c786001c3737f77e4e87215e8f8e462ad445fd --- /dev/null +++ b/nginx.conf @@ -0,0 +1,24 @@ +server { + + listen 80; + + sendfile on; + + default_type application/octet-stream; + + gzip on; + gzip_http_version 1.1; + gzip_disable "MSIE [1-6]\."; + gzip_min_length 1000; + gzip_vary on; + gzip_proxied expired no-cache no-store private auth; + gzip_types text/plain text/css application/json application/javascript application/x-javascript text/xml application/xml application/xml+rss text/javascript; + gzip_comp_level 9; + + root /usr/share/nginx/html; + + location / { + try_files $uri $uri/ /index.html =404; + } + +} diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000000000000000000000000000000000000..9ec43345721b12eae23bba6e5900123db7428590 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,32467 @@ +{ + "name": "offshift-fe", + "version": "0.0.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "offshift-fe", + "version": "0.0.0", + "dependencies": { + "@angular/animations": "~13.2.0", + "@angular/cdk": "^13.3.0", + "@angular/common": "~13.2.0", + "@angular/compiler": "~13.2.0", + "@angular/core": "~13.2.0", + "@angular/forms": "~13.2.0", + "@angular/platform-browser": "~13.2.0", + "@angular/platform-browser-dynamic": "~13.2.0", + "@angular/router": "~13.2.0", + "@ethersproject/address": "^5.6.0", + "@fontsource/material-icons": "^4.5.2", + "@fontsource/metropolis": "^4.5.1", + "@metamask/jazzicon": "^2.0.0", + "@ngrx/component": "^13.0.2", + "@ngrx/effects": "^13.0.2", + "@ngrx/entity": "^13.0.2", + "@ngrx/router-store": "^13.0.2", + "@ngrx/store": "^13.0.2", + "@ngrx/store-devtools": "^13.0.2", + "@ngx-translate/core": "^14.0.0", + "@ngx-translate/http-loader": "^7.0.0", + "@uiowa/digit-only": "^3.2.1", + "@walletconnect/web3-provider": "^1.7.5", + "bignumber.js": "^9.0.2", + "chart.js": "^3.7.1", + "primeicons": "^5.0.0", + "primeng": "^13.2.1", + "rxjs": "~7.5.0", + "simplebar-angular": "^2.3.6", + "tslib": "^2.3.0", + "web3": "^1.7.1", + "web3-eth-contract": "^1.7.1", + "web3-utils": "^1.7.1", + "web3modal": "^1.9.5", + "zone.js": "~0.11.4" + }, + "devDependencies": { + "@angular-devkit/build-angular": "~13.2.6", + "@angular-eslint/builder": "13.1.0", + "@angular-eslint/eslint-plugin": "13.1.0", + "@angular-eslint/eslint-plugin-template": "13.1.0", + "@angular-eslint/schematics": "13.1.0", + "@angular-eslint/template-parser": "13.1.0", + "@angular/cli": "~13.2.6", + "@angular/compiler-cli": "~13.2.0", + "@types/jasmine": "~3.10.0", + "@types/node": "^12.11.1", + "@typescript-eslint/eslint-plugin": "5.11.0", + "@typescript-eslint/parser": "5.11.0", + "assert": "^2.0.0", + "browser": "^0.2.6", + "crypto-browserify": "^3.12.0", + "eslint": "^8.2.0", + "eslint-plugin-ngrx": "^2.0.0", + "https-browserify": "^1.0.0", + "jasmine-core": "~4.0.0", + "karma": "~6.3.0", + "karma-chrome-launcher": "~3.1.0", + "karma-coverage": "~2.1.0", + "karma-jasmine": "~4.0.0", + "karma-jasmine-html-reporter": "~1.7.0", + "os-browserify": "^0.3.0", + "stream-browserify": "^3.0.0", + "stream-http": "^3.2.0", + "typescript": "~4.5.2", + "url": "^0.11.0" + } + }, + "node_modules/@ampproject/remapping": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-1.1.1.tgz", + "integrity": "sha512-YVAcA4DKLOj296CF5SrQ8cYiMRiUGc2sqFpLxsDGWE34suHqhGP/5yMsDHKsrh8hs8I5TiRVXNwKPWQpX3iGjw==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "sourcemap-codec": "1.4.8" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@angular-devkit/architect": { + "version": "0.1302.6", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1302.6.tgz", + "integrity": "sha512-NztzorUMfwJeRaT7SY00Y8WSqc2lQYuF11yNoyEm7Dae3V7VZ28rW2Z9RwibP27rYQL0RjSMaz2wKITHX2vOAw==", + "dev": true, + "dependencies": { + "@angular-devkit/core": "13.2.6", + "rxjs": "6.6.7" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular-devkit/architect/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/@angular-devkit/architect/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/@angular-devkit/build-angular": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-13.2.6.tgz", + "integrity": "sha512-Y2ojy6xbZ0kwScppcutLHBP8eW0qNOjburTISSBU/L5l/9FOeZ1E7yAreKuVu/qibZiLbSJfAhk+SLwhRHFSSQ==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "1.1.1", + "@angular-devkit/architect": "0.1302.6", + "@angular-devkit/build-webpack": "0.1302.6", + "@angular-devkit/core": "13.2.6", + "@babel/core": "7.16.12", + "@babel/generator": "7.16.8", + "@babel/helper-annotate-as-pure": "7.16.7", + "@babel/plugin-proposal-async-generator-functions": "7.16.8", + "@babel/plugin-transform-async-to-generator": "7.16.8", + "@babel/plugin-transform-runtime": "7.16.10", + "@babel/preset-env": "7.16.11", + "@babel/runtime": "7.16.7", + "@babel/template": "7.16.7", + "@discoveryjs/json-ext": "0.5.6", + "@ngtools/webpack": "13.2.6", + "ansi-colors": "4.1.1", + "babel-loader": "8.2.3", + "babel-plugin-istanbul": "6.1.1", + "browserslist": "^4.9.1", + "cacache": "15.3.0", + "circular-dependency-plugin": "5.2.2", + "copy-webpack-plugin": "10.2.1", + "core-js": "3.20.3", + "critters": "0.0.16", + "css-loader": "6.5.1", + "esbuild-wasm": "0.14.22", + "glob": "7.2.0", + "https-proxy-agent": "5.0.0", + "inquirer": "8.2.0", + "jsonc-parser": "3.0.0", + "karma-source-map-support": "1.4.0", + "less": "4.1.2", + "less-loader": "10.2.0", + "license-webpack-plugin": "4.0.2", + "loader-utils": "3.2.0", + "mini-css-extract-plugin": "2.5.3", + "minimatch": "3.0.4", + "open": "8.4.0", + "ora": "5.4.1", + "parse5-html-rewriting-stream": "6.0.1", + "piscina": "3.2.0", + "postcss": "8.4.5", + "postcss-import": "14.0.2", + "postcss-loader": "6.2.1", + "postcss-preset-env": "7.2.3", + "regenerator-runtime": "0.13.9", + "resolve-url-loader": "5.0.0", + "rxjs": "6.6.7", + "sass": "1.49.0", + "sass-loader": "12.4.0", + "semver": "7.3.5", + "source-map-loader": "3.0.1", + "source-map-support": "0.5.21", + "stylus": "0.56.0", + "stylus-loader": "6.2.0", + "terser": "5.11.0", + "text-table": "0.2.0", + "tree-kill": "1.2.2", + "tslib": "2.3.1", + "webpack": "5.67.0", + "webpack-dev-middleware": "5.3.0", + "webpack-dev-server": "4.7.3", + "webpack-merge": "5.8.0", + "webpack-subresource-integrity": "5.1.0" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "optionalDependencies": { + "esbuild": "0.14.22" + }, + "peerDependencies": { + "@angular/compiler-cli": "^13.0.0", + "@angular/localize": "^13.0.0", + "@angular/service-worker": "^13.0.0", + "karma": "^6.3.0", + "ng-packagr": "^13.0.0", + "protractor": "^7.0.0", + "tailwindcss": "^2.0.0 || ^3.0.0", + "typescript": ">=4.4.3 <4.6" + }, + "peerDependenciesMeta": { + "@angular/localize": { + "optional": true + }, + "@angular/service-worker": { + "optional": true + }, + "karma": { + "optional": true + }, + "ng-packagr": { + "optional": true + }, + "protractor": { + "optional": true + }, + "tailwindcss": { + "optional": true + } + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/esbuild": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.14.22.tgz", + "integrity": "sha512-CjFCFGgYtbFOPrwZNJf7wsuzesx8kqwAffOlbYcFDLFuUtP8xloK1GH+Ai13Qr0RZQf9tE7LMTHJ2iVGJ1SKZA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "esbuild-android-arm64": "0.14.22", + "esbuild-darwin-64": "0.14.22", + "esbuild-darwin-arm64": "0.14.22", + "esbuild-freebsd-64": "0.14.22", + "esbuild-freebsd-arm64": "0.14.22", + "esbuild-linux-32": "0.14.22", + "esbuild-linux-64": "0.14.22", + "esbuild-linux-arm": "0.14.22", + "esbuild-linux-arm64": "0.14.22", + "esbuild-linux-mips64le": "0.14.22", + "esbuild-linux-ppc64le": "0.14.22", + "esbuild-linux-riscv64": "0.14.22", + "esbuild-linux-s390x": "0.14.22", + "esbuild-netbsd-64": "0.14.22", + "esbuild-openbsd-64": "0.14.22", + "esbuild-sunos-64": "0.14.22", + "esbuild-windows-32": "0.14.22", + "esbuild-windows-64": "0.14.22", + "esbuild-windows-arm64": "0.14.22" + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/rxjs/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/@angular-devkit/build-webpack": { + "version": "0.1302.6", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1302.6.tgz", + "integrity": "sha512-TYEh2n9tPe932rEIgdiSpojOqtDppW2jzb/empVqCkLF7WUZsXKvTanttZC34L6R2VD6SAGWhb6JDg75ghUVYA==", + "dev": true, + "dependencies": { + "@angular-devkit/architect": "0.1302.6", + "rxjs": "6.6.7" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "webpack": "^5.30.0", + "webpack-dev-server": "^4.0.0" + } + }, + "node_modules/@angular-devkit/build-webpack/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/@angular-devkit/build-webpack/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/@angular-devkit/core": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-13.2.6.tgz", + "integrity": "sha512-8h2mWdBTN/dYwZuzKMg2IODlOWMdbJcpQG4XVrkk9ejCPP+3aX5Aa3glCe/voN6eBNiRfs8YDM0jxmpN2aWVtg==", + "dev": true, + "dependencies": { + "ajv": "8.9.0", + "ajv-formats": "2.1.1", + "fast-json-stable-stringify": "2.1.0", + "magic-string": "0.25.7", + "rxjs": "6.6.7", + "source-map": "0.7.3" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^3.5.2" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } + } + }, + "node_modules/@angular-devkit/core/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/@angular-devkit/core/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/@angular-devkit/schematics": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-13.2.6.tgz", + "integrity": "sha512-mPgSqdnZRuPSMeUA+T+mwVCrq2yhXpcYm1/Rjbhy09CyHs4wSrFv21WHCrE6shlvXpcmwr0n+I0DIeagAPmjUA==", + "dev": true, + "dependencies": { + "@angular-devkit/core": "13.2.6", + "jsonc-parser": "3.0.0", + "magic-string": "0.25.7", + "ora": "5.4.1", + "rxjs": "6.6.7" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular-devkit/schematics/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/@angular-devkit/schematics/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/@angular-eslint/builder": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/builder/-/builder-13.1.0.tgz", + "integrity": "sha512-RdyeetctnipVdCBrU/mipJ2XKiLC1yGmK1Sfbbgwu0s49CAdOArY/b+b8OU3yyy4EO1EGKQMlzs6F3wTYgiZCA==", + "dev": true, + "dependencies": { + "@nrwl/devkit": "13.1.3" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0", + "typescript": "*" + } + }, + "node_modules/@angular-eslint/bundled-angular-compiler": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/bundled-angular-compiler/-/bundled-angular-compiler-13.1.0.tgz", + "integrity": "sha512-0VSAZ3zrHkKdbvogQ4GLSf+lKojtPL3LXLlvXU9xNgNsqw68+gSNwaWd595tXoQCmpwWpTerKUbyIsGnPA7EYA==", + "dev": true + }, + "node_modules/@angular-eslint/eslint-plugin": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/eslint-plugin/-/eslint-plugin-13.1.0.tgz", + "integrity": "sha512-WiggBWPhhpSjcYVHJiawCduCsydM/RPudUE8zxv0Nmj/APuzNgvUr6E//uYTrhNv9EIJoZutRovw7R4Y/yXj4Q==", + "dev": true, + "dependencies": { + "@angular-eslint/utils": "13.1.0", + "@typescript-eslint/experimental-utils": "5.11.0" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0", + "typescript": "*" + } + }, + "node_modules/@angular-eslint/eslint-plugin-template": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/eslint-plugin-template/-/eslint-plugin-template-13.1.0.tgz", + "integrity": "sha512-ceZAMjufE58aduOW/UwjrbCRWocYC0zOEJ2jUkPt6jlL8yzc+SC6UitO0VmMgUsCizHueav5/3gKy05xqwk/CA==", + "dev": true, + "dependencies": { + "@angular-eslint/bundled-angular-compiler": "13.1.0", + "@typescript-eslint/experimental-utils": "5.11.0", + "aria-query": "^4.2.2", + "axobject-query": "^2.2.0" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0", + "typescript": "*" + } + }, + "node_modules/@angular-eslint/schematics": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/schematics/-/schematics-13.1.0.tgz", + "integrity": "sha512-/gVtkRP09cGhnUF3tr0phwNA5/ml94V3cqO8X4Z4QmyAaIwxuOJ0mJvWrVN7aurURxh9WoeWD/HXOvtC5igtpQ==", + "dev": true, + "dependencies": { + "@angular-eslint/eslint-plugin": "13.1.0", + "@angular-eslint/eslint-plugin-template": "13.1.0", + "ignore": "5.2.0", + "strip-json-comments": "3.1.1", + "tmp": "0.2.1" + }, + "peerDependencies": { + "@angular/cli": ">= 13.0.0 < 14.0.0" + } + }, + "node_modules/@angular-eslint/schematics/node_modules/tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "dev": true, + "dependencies": { + "rimraf": "^3.0.0" + }, + "engines": { + "node": ">=8.17.0" + } + }, + "node_modules/@angular-eslint/template-parser": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/template-parser/-/template-parser-13.1.0.tgz", + "integrity": "sha512-gKV+kms+kYm1HdToH3j4HL1RrjvMHscVkhwjoV1WbJColnfDivVAZ6/5/J92/A/8r7vJptQkftsbiaGKDyg47w==", + "dev": true, + "dependencies": { + "@angular-eslint/bundled-angular-compiler": "13.1.0", + "eslint-scope": "^5.1.0" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0", + "typescript": "*" + } + }, + "node_modules/@angular-eslint/utils": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/utils/-/utils-13.1.0.tgz", + "integrity": "sha512-iLmYMXNk+1sFMIlYXN8/Z5UcNAOno38v10lzo4bMjCpzXKkMa0O2b+4qi+469iUJAU6RAZ5weUL+S2Wtlr0ooA==", + "dev": true, + "dependencies": { + "@angular-eslint/bundled-angular-compiler": "13.1.0", + "@typescript-eslint/experimental-utils": "5.11.0" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0", + "typescript": "*" + } + }, + "node_modules/@angular/animations": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-13.2.6.tgz", + "integrity": "sha512-DrjpKo68uR3lSLQQXosoTCbjKQS6IKRCpR14E2t8fo0AX8i2hkB8je4SrhdCyB7FgFN7l2kgUYo4Qa8+BOB+aA==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/core": "13.2.6" + } + }, + "node_modules/@angular/cdk": { + "version": "13.3.0", + "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-13.3.0.tgz", + "integrity": "sha512-TyTcs9/Vd0TyQIjRf40xCDrTBK2GGCUrrHCVuHTXIqL8yvaGRnz815fL9X3hSZySCcbRV4NeK1yWeiZ9jf4Vxw==", + "dependencies": { + "tslib": "^2.3.0" + }, + "optionalDependencies": { + "parse5": "^5.0.0" + }, + "peerDependencies": { + "@angular/common": "^13.0.0 || ^14.0.0-0", + "@angular/core": "^13.0.0 || ^14.0.0-0", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@angular/cdk/node_modules/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 + }, + "node_modules/@angular/cli": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-13.2.6.tgz", + "integrity": "sha512-xIjEaQI5sWemXXc7GXLm4u9UL5sjtrQL/y1PJvvk/Jsa8+kIT+MutOfZfC7zcdAh9fqHd8mokH3guFV8BJdFxA==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "@angular-devkit/architect": "0.1302.6", + "@angular-devkit/core": "13.2.6", + "@angular-devkit/schematics": "13.2.6", + "@schematics/angular": "13.2.6", + "@yarnpkg/lockfile": "1.1.0", + "ansi-colors": "4.1.1", + "debug": "4.3.3", + "ini": "2.0.0", + "inquirer": "8.2.0", + "jsonc-parser": "3.0.0", + "npm-package-arg": "8.1.5", + "npm-pick-manifest": "6.1.1", + "open": "8.4.0", + "ora": "5.4.1", + "pacote": "12.0.3", + "resolve": "1.22.0", + "semver": "7.3.5", + "symbol-observable": "4.0.0", + "uuid": "8.3.2" + }, + "bin": { + "ng": "bin/ng.js" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular/common": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-13.2.6.tgz", + "integrity": "sha512-t4XRb9db4UeRcPs5aHNtGuXRKSvGBlTEr0zzSeoKzHD9TCaO4dSDISh9obS9hThaPuBmPKRUHN5KE1HFmqnSHg==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/core": "13.2.6", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@angular/compiler": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-13.2.6.tgz", + "integrity": "sha512-LHU29J2/c/03WHkwtzUSElTBsXbzkKdYARodnNfsFdLPsWhyvzO3cqlcZYteFJxEy3dVH+ZrYDjqQ9Sp17aIgA==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0" + } + }, + "node_modules/@angular/compiler-cli": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-13.2.6.tgz", + "integrity": "sha512-QtlLKj3m6a2nkewFxhg+a3tQ2gEIBzMfI2c1laWUfAfJJ56phj79k8Z/kf2HQxypphWixyTK+ugpTlMdvvOquA==", + "dev": true, + "dependencies": { + "@babel/core": "^7.17.2", + "chokidar": "^3.0.0", + "convert-source-map": "^1.5.1", + "dependency-graph": "^0.11.0", + "magic-string": "^0.26.0", + "reflect-metadata": "^0.1.2", + "semver": "^7.0.0", + "sourcemap-codec": "^1.4.8", + "tslib": "^2.3.0", + "yargs": "^17.2.1" + }, + "bin": { + "ng-xi18n": "bundles/src/bin/ng_xi18n.js", + "ngc": "bundles/src/bin/ngc.js", + "ngcc": "bundles/ngcc/main-ngcc.js" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/compiler": "13.2.6", + "typescript": ">=4.4.2 <4.6" + } + }, + "node_modules/@angular/compiler-cli/node_modules/@ampproject/remapping": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.1.2.tgz", + "integrity": "sha512-hoyByceqwKirw7w3Z7gnIIZC3Wx3J484Y3L/cMpXFbr7d9ZQj2mODrirNzcJa+SM3UlpWXYvKV4RlRpFXlWgXg==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@angular/compiler-cli/node_modules/@babel/core": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.7.tgz", + "integrity": "sha512-djHlEfFHnSnTAcPb7dATbiM5HxGOP98+3JLBZtjRb5I7RXrw7kFRoG2dXM8cm3H+o11A8IFH/uprmJpwFynRNQ==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.17.7", + "@babel/helper-compilation-targets": "^7.17.7", + "@babel/helper-module-transforms": "^7.17.7", + "@babel/helpers": "^7.17.7", + "@babel/parser": "^7.17.7", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.17.3", + "@babel/types": "^7.17.0", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.1.2", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@angular/compiler-cli/node_modules/@babel/core/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@angular/compiler-cli/node_modules/@babel/generator": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.7.tgz", + "integrity": "sha512-oLcVCTeIFadUoArDTwpluncplrYBmTCCZZgXCbgNGvOBBiSDDK3eWO4b/+eOTli5tKv1lg+a5/NAXg+nTcei1w==", + "dev": true, + "dependencies": { + "@babel/types": "^7.17.0", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@angular/compiler-cli/node_modules/magic-string": { + "version": "0.26.1", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.26.1.tgz", + "integrity": "sha512-ndThHmvgtieXe8J/VGPjG+Apu7v7ItcD5mhEIvOscWjPF/ccOiLxHaSuCAS2G+3x4GKsAbT8u7zdyamupui8Tg==", + "dev": true, + "dependencies": { + "sourcemap-codec": "^1.4.8" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@angular/compiler-cli/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@angular/core": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-13.2.6.tgz", + "integrity": "sha512-ctWsxuaSO3d3afLW+wkJSyiEIA2uhaTKNps9x5wz/oZJDaUDYVa4PM4x7/UHn2bXzBjXjN9LSW8h9F31iwmcTg==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "rxjs": "^6.5.3 || ^7.4.0", + "zone.js": "~0.11.4" + } + }, + "node_modules/@angular/forms": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-13.2.6.tgz", + "integrity": "sha512-3IikvNtO0RBiGb2AWl8aYcE3ivXHPIJz+JOn9Wz9XXSkYx75D3GjuJlz+fVIgz+7Q7tJuS6Q2E5qat/ldeDmoA==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/common": "13.2.6", + "@angular/core": "13.2.6", + "@angular/platform-browser": "13.2.6", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@angular/platform-browser": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-13.2.6.tgz", + "integrity": "sha512-Gc/1TqysW+P+K3NeQihmHWs4KF1mjJT20s06r+YcETnPP11uPk+UxQl7gJNsDV587DYO/wT3oISXVpRw4UJhdQ==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/animations": "13.2.6", + "@angular/common": "13.2.6", + "@angular/core": "13.2.6" + }, + "peerDependenciesMeta": { + "@angular/animations": { + "optional": true + } + } + }, + "node_modules/@angular/platform-browser-dynamic": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-13.2.6.tgz", + "integrity": "sha512-m77+pzwZw+4kiRhxzrj1kE3N1K82I8Xt+vEBKSL2Xv42hCX0T37erC6KlztFEDj4A68s5+/0C5vfwhEiDcr/Cw==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/common": "13.2.6", + "@angular/compiler": "13.2.6", + "@angular/core": "13.2.6", + "@angular/platform-browser": "13.2.6" + } + }, + "node_modules/@angular/router": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-13.2.6.tgz", + "integrity": "sha512-dA9vL4mPLp+iNegzuvm9FaEWirFI2ZK3WQgbdoxoIpneym+BxRTkNDzPcvEaqfUf7eDGRBqlWakFDrd+H2QEbg==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/common": "13.2.6", + "@angular/core": "13.2.6", + "@angular/platform-browser": "13.2.6", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@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 + }, + "node_modules/@babel/code-frame": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", + "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==", + "dependencies": { + "@babel/highlight": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.7.tgz", + "integrity": "sha512-p8pdE6j0a29TNGebNm7NzYZWB3xVZJBZ7XGs42uAKzQo8VQ3F0By/cQCtUEABwIqw5zo6WA4NbmxsfzADzMKnQ==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.16.12", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.16.12.tgz", + "integrity": "sha512-dK5PtG1uiN2ikk++5OzSYsitZKny4wOCD0nrO4TqnW4BVBTQ2NGS3NgilvT/TEyxTST7LNyWV/T4tXDoD3fOgg==", + "dependencies": { + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.16.8", + "@babel/helper-compilation-targets": "^7.16.7", + "@babel/helper-module-transforms": "^7.16.7", + "@babel/helpers": "^7.16.7", + "@babel/parser": "^7.16.12", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.16.10", + "@babel/types": "^7.16.8", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.1.2", + "semver": "^6.3.0", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/core/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@babel/generator": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.16.8.tgz", + "integrity": "sha512-1ojZwE9+lOXzcWdWmO6TbUzDfqLD39CmEhN8+2cX9XkDo5yW1OpgfejfliysR2AWLpMamTiOiAp/mtroaymhpw==", + "dependencies": { + "@babel/types": "^7.16.8", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/generator/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.7.tgz", + "integrity": "sha512-s6t2w/IPQVTAET1HitoowRGXooX8mCgtuP5195wD/QJPV6wYjpujCGF7JuMODVX2ZAJOf1GT6DT9MHEZvLOFSw==", + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.16.7.tgz", + "integrity": "sha512-C6FdbRaxYjwVu/geKW4ZeQ0Q31AftgRcdSnZ5/jsH6BzCJbtvXvhpfkbkThYSuutZA7nCXpPR6AD9zd1dprMkA==", + "dev": true, + "dependencies": { + "@babel/helper-explode-assignable-expression": "^7.16.7", + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.7.tgz", + "integrity": "sha512-UFzlz2jjd8kroj0hmCFV5zr+tQPi1dpC2cRsDV/3IEW8bJfCPrPpmcSN6ZS8RqIq4LXcmpipCQFPddyFA5Yc7w==", + "dependencies": { + "@babel/compat-data": "^7.17.7", + "@babel/helper-validator-option": "^7.16.7", + "browserslist": "^4.17.5", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.17.6", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.17.6.tgz", + "integrity": "sha512-SogLLSxXm2OkBbSsHZMM4tUi8fUzjs63AT/d0YQIzr6GSd8Hxsbk2KYDX0k0DweAzGMj/YWeiCsorIdtdcW8Eg==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-function-name": "^7.16.7", + "@babel/helper-member-expression-to-functions": "^7.16.7", + "@babel/helper-optimise-call-expression": "^7.16.7", + "@babel/helper-replace-supers": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.17.0.tgz", + "integrity": "sha512-awO2So99wG6KnlE+TPs6rn83gCz5WlEePJDTnLEqbchMVrBeAujURVphRdigsk094VhvZehFoNOihSlcBjwsXA==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "regexpu-core": "^5.0.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.1.tgz", + "integrity": "sha512-J9hGMpJQmtWmj46B3kBHmL38UhJGhYX7eqkcq+2gsstyYt341HmPeWspihX43yVRA0mS+8GGk2Gckc7bY/HCmA==", + "dependencies": { + "@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" + }, + "peerDependencies": { + "@babel/core": "^7.4.0-0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz", + "integrity": "sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==", + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-explode-assignable-expression": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.16.7.tgz", + "integrity": "sha512-KyUenhWMC8VrxzkGP0Jizjo4/Zx+1nNZhgocs+gLzyZyB8SHidhoq9KK/8Ato4anhwsivfkBLftky7gvzbZMtQ==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.16.7.tgz", + "integrity": "sha512-QfDfEnIUyyBSR3HtrtGECuZ6DAyCkYFp7GHl75vFtTnn6pjKeK0T1DB5lLkFvBea8MdaiUABx3osbgLyInoejA==", + "dependencies": { + "@babel/helper-get-function-arity": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-get-function-arity": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.7.tgz", + "integrity": "sha512-flc+RLSOBXzNzVhcLu6ujeHUrD6tANAOU5ojrRx/as+tbzf8+stUCj7+IfRRoAbEZqj/ahXEMsjhOhgeZsrnTw==", + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz", + "integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==", + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.17.7.tgz", + "integrity": "sha512-thxXgnQ8qQ11W2wVUObIqDL4p148VMxkt5T/qpN5k2fboRyzFGFmKsTGViquyM5QHKUy48OZoca8kw4ajaDPyw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.17.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz", + "integrity": "sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==", + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.7.tgz", + "integrity": "sha512-VmZD99F3gNTYB7fJRDTi+u6l/zxY0BE6OIxPSU7a50s6ZUQkHwSDmV92FfM+oCG0pZRVojGYhkR8I0OGeCVREw==", + "dependencies": { + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-module-imports": "^7.16.7", + "@babel/helper-simple-access": "^7.17.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "@babel/helper-validator-identifier": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.17.3", + "@babel/types": "^7.17.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.7.tgz", + "integrity": "sha512-EtgBhg7rd/JcnpZFXpBy0ze1YRfdm7BnBX4uKMBd3ixa3RGAE002JZB66FJyNH7g0F38U05pXmA5P8cBh7z+1w==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.16.7.tgz", + "integrity": "sha512-Qg3Nk7ZxpgMrsox6HreY1ZNKdBq7K72tDSliA6dCl5f007jR4ne8iD5UzuNnCJH2xBf2BEEVGr+/OL6Gdp7RxA==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.16.8.tgz", + "integrity": "sha512-fm0gH7Flb8H51LqJHy3HJ3wnE1+qtYR2A99K06ahwrawLdOFsCEWjZOrYricXJHoPSudNKxrMBUPEIPxiIIvBw==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-wrap-function": "^7.16.8", + "@babel/types": "^7.16.8" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.16.7.tgz", + "integrity": "sha512-y9vsWilTNaVnVh6xiJfABzsNpgDPKev9HnAgz6Gb1p6UUwf9NepdlsV7VXGCftJM+jqD5f7JIEubcpLjZj5dBw==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-member-expression-to-functions": "^7.16.7", + "@babel/helper-optimise-call-expression": "^7.16.7", + "@babel/traverse": "^7.16.7", + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.17.7.tgz", + "integrity": "sha512-txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA==", + "dependencies": { + "@babel/types": "^7.17.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.16.0.tgz", + "integrity": "sha512-+il1gTy0oHwUsBQZyJvukbB4vPMdcYBrFHa0Uc4AizLxbq6BOYC51Rv4tWocX9BLBDLZ4kc6qUFpQ6HRgL+3zw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz", + "integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==", + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", + "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz", + "integrity": "sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.16.8.tgz", + "integrity": "sha512-8RpyRVIAW1RcDDGTA+GpPAwV22wXCfKOoM9bet6TLkGIFTkRQSkH1nMQ5Yet4MpoXe1ZwHPVtNasc2w0uZMqnw==", + "dev": true, + "dependencies": { + "@babel/helper-function-name": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.16.8", + "@babel/types": "^7.16.8" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.7.tgz", + "integrity": "sha512-TKsj9NkjJfTBxM7Phfy7kv6yYc4ZcOo+AaWGqQOKTPDOmcGkIFb5xNA746eKisQkm4yavUYh4InYM9S+VnO01w==", + "dependencies": { + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.17.3", + "@babel/types": "^7.17.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.16.10", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.10.tgz", + "integrity": "sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.16.7", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.7.tgz", + "integrity": "sha512-bm3AQf45vR4gKggRfvJdYJ0gFLoCbsPxiFLSH6hTVYABptNHY6l9NrhnucVjQ/X+SPtLANT9lc0fFhikj+VBRA==", + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.16.7.tgz", + "integrity": "sha512-anv/DObl7waiGEnC24O9zqL0pSuI9hljihqiDuFHC8d7/bjr/4RLGPWuc8rYOff/QPzbEPSkzG8wGG9aDuhHRg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.16.7.tgz", + "integrity": "sha512-di8vUHRdf+4aJ7ltXhaDbPoszdkh59AQtJM5soLsuHpQJdFQZOA4uGj0V2u/CZ8bJ/u8ULDL5yq6FO/bCXnKHw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0", + "@babel/plugin-proposal-optional-chaining": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-proposal-async-generator-functions": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.16.8.tgz", + "integrity": "sha512-71YHIvMuiuqWJQkebWJtdhQTfd4Q4mF76q2IX37uZPkG9+olBxsX+rH1vkhFto4UeJZ9dPY2s+mDvhDm1u2BGQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-remap-async-to-generator": "^7.16.8", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-class-properties": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.16.7.tgz", + "integrity": "sha512-IobU0Xme31ewjYOShSIqd/ZGM/r/cuOz2z0MDbNrhF5FW+ZVgi0f2lyeoj9KFPDOAqsYxmLWZte1WOwlvY9aww==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-class-static-block": { + "version": "7.17.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.17.6.tgz", + "integrity": "sha512-X/tididvL2zbs7jZCeeRJ8167U/+Ac135AM6jCAx6gYXDUviZV5Ku9UDvWS2NCuWlFjIRXklYhwo6HhAC7ETnA==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.17.6", + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-proposal-dynamic-import": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.16.7.tgz", + "integrity": "sha512-I8SW9Ho3/8DRSdmDdH3gORdyUuYnk1m4cMxUAdu5oy4n3OfN8flDEH+d60iG7dUfi0KkYwSvoalHzzdRzpWHTg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-export-namespace-from": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.16.7.tgz", + "integrity": "sha512-ZxdtqDXLRGBL64ocZcs7ovt71L3jhC1RGSyR996svrCi3PYqHNkb3SwPJCs8RIzD86s+WPpt2S73+EHCGO+NUA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-json-strings": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.16.7.tgz", + "integrity": "sha512-lNZ3EEggsGY78JavgbHsK9u5P3pQaW7k4axlgFLYkMd7UBsiNahCITShLjNQschPyjtO6dADrL24757IdhBrsQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.16.7.tgz", + "integrity": "sha512-K3XzyZJGQCr00+EtYtrDjmwX7o7PLK6U9bi1nCwkQioRFVUv6dJoxbQjtWVtP+bCPy82bONBKG8NPyQ4+i6yjg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.16.7.tgz", + "integrity": "sha512-aUOrYU3EVtjf62jQrCj63pYZ7k6vns2h/DQvHPWGmsJRYzWXZ6/AsfgpiRy6XiuIDADhJzP2Q9MwSMKauBQ+UQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-numeric-separator": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.16.7.tgz", + "integrity": "sha512-vQgPMknOIgiuVqbokToyXbkY/OmmjAzr/0lhSIbG/KmnzXPGwW/AdhdKpi+O4X/VkWiWjnkKOBiqJrTaC98VKw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-object-rest-spread": { + "version": "7.17.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.17.3.tgz", + "integrity": "sha512-yuL5iQA/TbZn+RGAfxQXfi7CNLmKi1f8zInn4IgobuCWcAb7i+zj4TYzQ9l8cEzVyJ89PDGuqxK1xZpUDISesw==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.17.0", + "@babel/helper-compilation-targets": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-optional-catch-binding": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.16.7.tgz", + "integrity": "sha512-eMOH/L4OvWSZAE1VkHbr1vckLG1WUcHGJSLqqQwl2GaUqG6QjddvrOaTUMNYiv77H5IKPMZ9U9P7EaHwvAShfA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-optional-chaining": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.16.7.tgz", + "integrity": "sha512-eC3xy+ZrUcBtP7x+sq62Q/HYd674pPTb/77XZMb5wbDPGWIdUbSr4Agr052+zaUPSb+gGRnjxXfKFvx5iMJ+DA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-methods": { + "version": "7.16.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.16.11.tgz", + "integrity": "sha512-F/2uAkPlXDr8+BHpZvo19w3hLFKge+k75XUprE6jaqKxjGkSYcK+4c+bup5PdW/7W/Rpjwql7FTVEDW+fRAQsw==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.16.10", + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.16.7.tgz", + "integrity": "sha512-rMQkjcOFbm+ufe3bTZLyOfsOUOxyvLXZJCTARhJr+8UMSoZmqTe1K1BgkFcrW37rAchWg57yI69ORxiWvUINuQ==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-create-class-features-plugin": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-unicode-property-regex": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.16.7.tgz", + "integrity": "sha512-QRK0YI/40VLhNVGIjRNAAQkEHws0cswSdFFjpFyt943YmJIU1da9uW63Iu6NFV6CxTZW5eTDCrwZUstBWgp/Rg==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@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, + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@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, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@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", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@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, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@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", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@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, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@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, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@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, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@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, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@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, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.16.7.tgz", + "integrity": "sha512-9ffkFFMbvzTvv+7dTp/66xvZAWASuPD5Tl9LK3Z9vhOmANo6j94rik+5YMBt4CwHVMWLWpMsriIc2zsa3WW3xQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.16.8.tgz", + "integrity": "sha512-MtmUmTJQHCnyJVrScNzNlofQJ3dLFuobYn3mwOTKHnSCMtbNsqvF71GQmJfFjdrXSsAA7iysFmYWw4bXZ20hOg==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-remap-async-to-generator": "^7.16.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.16.7.tgz", + "integrity": "sha512-JUuzlzmF40Z9cXyytcbZEZKckgrQzChbQJw/5PuEHYeqzCsvebDx0K0jWnIIVcmmDOAVctCgnYs0pMcrYj2zJg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.16.7.tgz", + "integrity": "sha512-ObZev2nxVAYA4bhyusELdo9hb3H+A56bxH3FZMbEImZFiEDYVHXQSJ1hQKFlDnlt8G9bBrCZ5ZpURZUrV4G5qQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.16.7.tgz", + "integrity": "sha512-WY7og38SFAGYRe64BrjKf8OrE6ulEHtr5jEYaZMwox9KebgqPi67Zqz8K53EKk1fFEJgm96r32rkKZ3qA2nCWQ==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-function-name": "^7.16.7", + "@babel/helper-optimise-call-expression": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-replace-supers": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.16.7.tgz", + "integrity": "sha512-gN72G9bcmenVILj//sv1zLNaPyYcOzUho2lIJBMh/iakJ9ygCo/hEF9cpGb61SCMEDxbbyBoVQxrt+bWKu5KGw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.17.7.tgz", + "integrity": "sha512-XVh0r5yq9sLR4vZ6eVZe8FKfIcSgaTBxVBRSYokRj2qksf6QerYnTxz9/GTuKTH/n/HwLP7t6gtlybHetJ/6hQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.16.7.tgz", + "integrity": "sha512-Lyttaao2SjZF6Pf4vk1dVKv8YypMpomAbygW+mU5cYP3S5cWTfCJjG8xV6CFdzGFlfWK81IjL9viiTvpb6G7gQ==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.16.7.tgz", + "integrity": "sha512-03DvpbRfvWIXyK0/6QiR1KMTWeT6OcQ7tbhjrXyFS02kjuX/mu5Bvnh5SDSWHxyawit2g5aWhKwI86EE7GUnTw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.16.7.tgz", + "integrity": "sha512-8UYLSlyLgRixQvlYH3J2ekXFHDFLQutdy7FfFAMm3CPZ6q9wHCwnUyiXpQCe3gVVnQlHc5nsuiEVziteRNTXEA==", + "dev": true, + "dependencies": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.16.7.tgz", + "integrity": "sha512-/QZm9W92Ptpw7sjI9Nx1mbcsWz33+l8kuMIQnDwgQBG5s3fAfQvkRjQ7NqXhtNcKOnPkdICmUHyCaWW06HCsqg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.16.7.tgz", + "integrity": "sha512-SU/C68YVwTRxqWj5kgsbKINakGag0KTgq9f2iZEXdStoAbOzLHEBRYzImmA6yFo8YZhJVflvXmIHUO7GWHmxxA==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.16.7", + "@babel/helper-function-name": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.16.7.tgz", + "integrity": "sha512-6tH8RTpTWI0s2sV6uq3e/C9wPo4PTqqZps4uF0kzQ9/xPLFQtipynvmT1g/dOfEJ+0EQsHhkQ/zyRId8J2b8zQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.16.7.tgz", + "integrity": "sha512-mBruRMbktKQwbxaJof32LT9KLy2f3gH+27a5XSuXo6h7R3vqltl0PgZ80C8ZMKw98Bf8bqt6BEVi3svOh2PzMw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.16.7.tgz", + "integrity": "sha512-KaaEtgBL7FKYwjJ/teH63oAmE3lP34N3kshz8mm4VMAw7U3PxjVwwUmxEFksbgsNUaO3wId9R2AVQYSEGRa2+g==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7", + "babel-plugin-dynamic-import-node": "^2.3.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.17.7.tgz", + "integrity": "sha512-ITPmR2V7MqioMJyrxUo2onHNC3e+MvfFiFIR0RP21d3PtlVb6sfzoxNKiphSZUOM9hEIdzCcZe83ieX3yoqjUA==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.17.7", + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-simple-access": "^7.17.7", + "babel-plugin-dynamic-import-node": "^2.3.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.16.7.tgz", + "integrity": "sha512-DuK5E3k+QQmnOqBR9UkusByy5WZWGRxfzV529s9nPra1GE7olmxfqO2FHobEOYSPIjPBTr4p66YDcjQnt8cBmw==", + "dev": true, + "dependencies": { + "@babel/helper-hoist-variables": "^7.16.7", + "@babel/helper-module-transforms": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-validator-identifier": "^7.16.7", + "babel-plugin-dynamic-import-node": "^2.3.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.16.7.tgz", + "integrity": "sha512-EMh7uolsC8O4xhudF2F6wedbSHm1HHZ0C6aJ7K67zcDNidMzVcxWdGr+htW9n21klm+bOn+Rx4CBsAntZd3rEQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.16.8.tgz", + "integrity": "sha512-j3Jw+n5PvpmhRR+mrgIh04puSANCk/T/UA3m3P1MjJkhlK906+ApHhDIqBQDdOgL/r1UYpz4GNclTXxyZrYGSw==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.16.7.tgz", + "integrity": "sha512-xiLDzWNMfKoGOpc6t3U+etCE2yRnn3SM09BXqWPIZOBpL2gvVrBWUKnsJx0K/ADi5F5YC5f8APFfWrz25TdlGg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.16.7.tgz", + "integrity": "sha512-14J1feiQVWaGvRxj2WjyMuXS2jsBkgB3MdSN5HuC2G5nRspa5RK9COcs82Pwy5BuGcjb+fYaUj94mYcOj7rCvw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-replace-supers": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.16.7.tgz", + "integrity": "sha512-AT3MufQ7zZEhU2hwOA11axBnExW0Lszu4RL/tAlUJBuNoRak+wehQW8h6KcXOcgjY42fHtDxswuMhMjFEuv/aw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.16.7.tgz", + "integrity": "sha512-z4FGr9NMGdoIl1RqavCqGG+ZuYjfZ/hkCIeuH6Do7tXmSm0ls11nYVSJqFEUOSJbDab5wC6lRE/w6YjVcr6Hqw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.16.7.tgz", + "integrity": "sha512-mF7jOgGYCkSJagJ6XCujSQg+6xC1M77/03K2oBmVJWoFGNUtnVJO4WHKJk3dnPC8HCcj4xBQP1Egm8DWh3Pb3Q==", + "dev": true, + "dependencies": { + "regenerator-transform": "^0.14.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.16.7.tgz", + "integrity": "sha512-KQzzDnZ9hWQBjwi5lpY5v9shmm6IVG0U9pB18zvMu2i4H90xpT4gmqwPYsn8rObiadYe2M0gmgsiOIF5A/2rtg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime": { + "version": "7.16.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.16.10.tgz", + "integrity": "sha512-9nwTiqETv2G7xI4RvXHNfpGdr8pAA+Q/YtN3yLK7OoK7n9OibVm/xymJ838a9A6E/IciOLPj82lZk0fW6O4O7w==", + "dependencies": { + "@babel/helper-module-imports": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7", + "babel-plugin-polyfill-corejs2": "^0.3.0", + "babel-plugin-polyfill-corejs3": "^0.5.0", + "babel-plugin-polyfill-regenerator": "^0.3.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.16.7.tgz", + "integrity": "sha512-hah2+FEnoRoATdIb05IOXf+4GzXYTq75TVhIn1PewihbpyrNWUt2JbudKQOETWw6QpLe+AIUpJ5MVLYTQbeeUg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.16.7.tgz", + "integrity": "sha512-+pjJpgAngb53L0iaA5gU/1MLXJIfXcYepLgXB3esVRf4fqmj8f2cxM3/FKaHsZms08hFQJkFccEWuIpm429TXg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.16.7.tgz", + "integrity": "sha512-NJa0Bd/87QV5NZZzTuZG5BPJjLYadeSZ9fO6oOUoL4iQx+9EEuw/eEM92SrsT19Yc2jgB1u1hsjqDtH02c3Drw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.16.7.tgz", + "integrity": "sha512-VwbkDDUeenlIjmfNeDX/V0aWrQH2QiVyJtwymVQSzItFDTpxfyJh3EVaQiS0rIN/CqbLGr0VcGmuwyTdZtdIsA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.16.7.tgz", + "integrity": "sha512-p2rOixCKRJzpg9JB4gjnG4gjWkWa89ZoYUnl9snJ1cWIcTH/hvxZqfO+WjG6T8DRBpctEol5jw1O5rA8gkCokQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.16.7.tgz", + "integrity": "sha512-TAV5IGahIz3yZ9/Hfv35TV2xEm+kaBDaZQCn2S/hG9/CZ0DktxJv9eKfPc7yYCvOYR4JGx1h8C+jcSOvgaaI/Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.16.7.tgz", + "integrity": "sha512-oC5tYYKw56HO75KZVLQ+R/Nl3Hro9kf8iG0hXoaHP7tjAyCpvqBiSNe6vGrZni1Z6MggmUOC6A7VP7AVmw225Q==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.16.11", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.16.11.tgz", + "integrity": "sha512-qcmWG8R7ZW6WBRPZK//y+E3Cli151B20W1Rv7ln27vuPaXU/8TKms6jFdiJtF7UDTxcrb7mZd88tAeK9LjdT8g==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.16.8", + "@babel/helper-compilation-targets": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-validator-option": "^7.16.7", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.16.7", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.16.7", + "@babel/plugin-proposal-async-generator-functions": "^7.16.8", + "@babel/plugin-proposal-class-properties": "^7.16.7", + "@babel/plugin-proposal-class-static-block": "^7.16.7", + "@babel/plugin-proposal-dynamic-import": "^7.16.7", + "@babel/plugin-proposal-export-namespace-from": "^7.16.7", + "@babel/plugin-proposal-json-strings": "^7.16.7", + "@babel/plugin-proposal-logical-assignment-operators": "^7.16.7", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.16.7", + "@babel/plugin-proposal-numeric-separator": "^7.16.7", + "@babel/plugin-proposal-object-rest-spread": "^7.16.7", + "@babel/plugin-proposal-optional-catch-binding": "^7.16.7", + "@babel/plugin-proposal-optional-chaining": "^7.16.7", + "@babel/plugin-proposal-private-methods": "^7.16.11", + "@babel/plugin-proposal-private-property-in-object": "^7.16.7", + "@babel/plugin-proposal-unicode-property-regex": "^7.16.7", + "@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.16.7", + "@babel/plugin-transform-async-to-generator": "^7.16.8", + "@babel/plugin-transform-block-scoped-functions": "^7.16.7", + "@babel/plugin-transform-block-scoping": "^7.16.7", + "@babel/plugin-transform-classes": "^7.16.7", + "@babel/plugin-transform-computed-properties": "^7.16.7", + "@babel/plugin-transform-destructuring": "^7.16.7", + "@babel/plugin-transform-dotall-regex": "^7.16.7", + "@babel/plugin-transform-duplicate-keys": "^7.16.7", + "@babel/plugin-transform-exponentiation-operator": "^7.16.7", + "@babel/plugin-transform-for-of": "^7.16.7", + "@babel/plugin-transform-function-name": "^7.16.7", + "@babel/plugin-transform-literals": "^7.16.7", + "@babel/plugin-transform-member-expression-literals": "^7.16.7", + "@babel/plugin-transform-modules-amd": "^7.16.7", + "@babel/plugin-transform-modules-commonjs": "^7.16.8", + "@babel/plugin-transform-modules-systemjs": "^7.16.7", + "@babel/plugin-transform-modules-umd": "^7.16.7", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.16.8", + "@babel/plugin-transform-new-target": "^7.16.7", + "@babel/plugin-transform-object-super": "^7.16.7", + "@babel/plugin-transform-parameters": "^7.16.7", + "@babel/plugin-transform-property-literals": "^7.16.7", + "@babel/plugin-transform-regenerator": "^7.16.7", + "@babel/plugin-transform-reserved-words": "^7.16.7", + "@babel/plugin-transform-shorthand-properties": "^7.16.7", + "@babel/plugin-transform-spread": "^7.16.7", + "@babel/plugin-transform-sticky-regex": "^7.16.7", + "@babel/plugin-transform-template-literals": "^7.16.7", + "@babel/plugin-transform-typeof-symbol": "^7.16.7", + "@babel/plugin-transform-unicode-escapes": "^7.16.7", + "@babel/plugin-transform-unicode-regex": "^7.16.7", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.16.8", + "babel-plugin-polyfill-corejs2": "^0.3.0", + "babel-plugin-polyfill-corejs3": "^0.5.0", + "babel-plugin-polyfill-regenerator": "^0.3.0", + "core-js-compat": "^3.20.2", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", + "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "dev": true, + "dependencies": { + "@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" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.16.7.tgz", + "integrity": "sha512-9E9FJowqAsytyOY6LG+1KuueckRL+aQW+mKvXRXnuFGyRAyepJPmEo9vgMfXUA6O9u3IeEdv9MAkppFcaQwogQ==", + "dependencies": { + "regenerator-runtime": "^0.13.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/runtime-corejs3": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.17.7.tgz", + "integrity": "sha512-TvliGJjhxis5m7xIMvlXH/xG8Oa/LK0SCUCyfKD6nLi42n5fB4WibDJ0g9trmmBB6hwpMNx+Lzbxy9/4gpMaVw==", + "dev": true, + "dependencies": { + "core-js-pure": "^3.20.2", + "regenerator-runtime": "^0.13.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz", + "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==", + "dependencies": { + "@babel/code-frame": "^7.16.7", + "@babel/parser": "^7.16.7", + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.17.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.3.tgz", + "integrity": "sha512-5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw==", + "dependencies": { + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.17.3", + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-function-name": "^7.16.7", + "@babel/helper-hoist-variables": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "@babel/parser": "^7.17.3", + "@babel/types": "^7.17.0", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/@babel/generator": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.7.tgz", + "integrity": "sha512-oLcVCTeIFadUoArDTwpluncplrYBmTCCZZgXCbgNGvOBBiSDDK3eWO4b/+eOTli5tKv1lg+a5/NAXg+nTcei1w==", + "dependencies": { + "@babel/types": "^7.17.0", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@babel/types": { + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.17.0.tgz", + "integrity": "sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.16.7", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@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, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/@csstools/postcss-progressive-custom-properties": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-1.3.0.tgz", + "integrity": "sha512-ASA9W1aIy5ygskZYuWams4BzafD12ULvSypmaLJT2jvQ8G0M3I8PRQhC0h7mG0Z3LI05+agZjqSR9+K9yaQQjA==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.3" + } + }, + "node_modules/@discoveryjs/json-ext": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.6.tgz", + "integrity": "sha512-ws57AidsDvREKrZKYffXddNkyaF14iHNHm8VQnZH6t99E8gczjNN0GpvcGny0imC80yQ0tHz1xVUKk/KFQSUyA==", + "dev": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@emotion/is-prop-valid": { + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz", + "integrity": "sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA==", + "dependencies": { + "@emotion/memoize": "0.7.4" + } + }, + "node_modules/@emotion/memoize": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz", + "integrity": "sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==" + }, + "node_modules/@emotion/stylis": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.5.tgz", + "integrity": "sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ==" + }, + "node_modules/@emotion/unitless": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz", + "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==" + }, + "node_modules/@eslint/eslintrc": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.1.tgz", + "integrity": "sha512-bxvbYnBPN1Gibwyp6NrpnFzA3YtRL3BBAyEAFVIpNTm2Rn4Vy87GA5M4aSn3InRrlsbX5N0GW7XIx+U4SAEKdQ==", + "dev": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.3.1", + "globals": "^13.9.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.0.4", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/@eslint/eslintrc/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "13.13.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz", + "integrity": "sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/eslintrc/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@eslint/eslintrc/node_modules/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 + }, + "node_modules/@eslint/eslintrc/node_modules/type-fest": { + "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, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ethereumjs/common": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/@ethereumjs/common/-/common-2.6.2.tgz", + "integrity": "sha512-vDwye5v0SVeuDky4MtKsu+ogkH2oFUV8pBKzH/eNBzT8oI91pKa8WyzDuYuxOQsgNgv5R34LfFDh2aaw3H4HbQ==", + "dependencies": { + "crc-32": "^1.2.0", + "ethereumjs-util": "^7.1.4" + } + }, + "node_modules/@ethereumjs/tx": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@ethereumjs/tx/-/tx-3.5.0.tgz", + "integrity": "sha512-/+ZNbnJhQhXC83Xuvy6I9k4jT5sXiV0tMR9C+AzSSpcCV64+NB8dTE1m3x98RYMqb8+TLYWA+HML4F5lfXTlJw==", + "dependencies": { + "@ethereumjs/common": "^2.6.1", + "ethereumjs-util": "^7.1.4" + } + }, + "node_modules/@ethersproject/abi": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.0.7.tgz", + "integrity": "sha512-Cqktk+hSIckwP/W8O47Eef60VwmoSC/L3lY0+dIBhQPCNn9E4V7rwmm2aFrNRRDJfFlGuZ1khkQUOc3oBX+niw==", + "dependencies": { + "@ethersproject/address": "^5.0.4", + "@ethersproject/bignumber": "^5.0.7", + "@ethersproject/bytes": "^5.0.4", + "@ethersproject/constants": "^5.0.4", + "@ethersproject/hash": "^5.0.4", + "@ethersproject/keccak256": "^5.0.3", + "@ethersproject/logger": "^5.0.5", + "@ethersproject/properties": "^5.0.3", + "@ethersproject/strings": "^5.0.4" + } + }, + "node_modules/@ethersproject/abstract-provider": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/abstract-provider/-/abstract-provider-5.6.0.tgz", + "integrity": "sha512-oPMFlKLN+g+y7a79cLK3WiLcjWFnZQtXWgnLAbHZcN3s7L4v90UHpTOrLk+m3yr0gt+/h9STTM6zrr7PM8uoRw==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/networks": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/transactions": "^5.6.0", + "@ethersproject/web": "^5.6.0" + } + }, + "node_modules/@ethersproject/abstract-signer": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/abstract-signer/-/abstract-signer-5.6.0.tgz", + "integrity": "sha512-WOqnG0NJKtI8n0wWZPReHtaLkDByPL67tn4nBaDAhmVq8sjHTPbCdz4DRhVu/cfTOvfy9w3iq5QZ7BX7zw56BQ==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abstract-provider": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0" + } + }, + "node_modules/@ethersproject/address": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/address/-/address-5.6.0.tgz", + "integrity": "sha512-6nvhYXjbXsHPS+30sHZ+U4VMagFC/9zAk6Gd/h3S21YW4+yfb0WfRtaAIZ4kfM4rrVwqiy284LP0GtL5HXGLxQ==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/keccak256": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/rlp": "^5.6.0" + } + }, + "node_modules/@ethersproject/base64": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/base64/-/base64-5.6.0.tgz", + "integrity": "sha512-2Neq8wxJ9xHxCF9TUgmKeSh9BXJ6OAxWfeGWvbauPh8FuHEjamgHilllx8KkSd5ErxyHIX7Xv3Fkcud2kY9ezw==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.6.0" + } + }, + "node_modules/@ethersproject/bignumber": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/bignumber/-/bignumber-5.6.0.tgz", + "integrity": "sha512-VziMaXIUHQlHJmkv1dlcd6GY2PmT0khtAqaMctCIDogxkrarMzA9L94KN1NeXqqOfFD6r0sJT3vCTOFSmZ07DA==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "bn.js": "^4.11.9" + } + }, + "node_modules/@ethersproject/bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.0.tgz", + "integrity": "sha512-3hJPlYemb9V4VLfJF5BfN0+55vltPZSHU3QKUyP9M3Y2TcajbiRrz65UG+xVHOzBereB1b9mn7r12o177xgN7w==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/logger": "^5.6.0" + } + }, + "node_modules/@ethersproject/constants": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/constants/-/constants-5.6.0.tgz", + "integrity": "sha512-SrdaJx2bK0WQl23nSpV/b1aq293Lh0sUaZT/yYKPDKn4tlAbkH96SPJwIhwSwTsoQQZxuh1jnqsKwyymoiBdWA==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bignumber": "^5.6.0" + } + }, + "node_modules/@ethersproject/hash": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/hash/-/hash-5.6.0.tgz", + "integrity": "sha512-fFd+k9gtczqlr0/BruWLAu7UAOas1uRRJvOR84uDf4lNZ+bTkGl366qvniUZHKtlqxBRU65MkOobkmvmpHU+jA==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abstract-signer": "^5.6.0", + "@ethersproject/address": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/keccak256": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/strings": "^5.6.0" + } + }, + "node_modules/@ethersproject/keccak256": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.6.0.tgz", + "integrity": "sha512-tk56BJ96mdj/ksi7HWZVWGjCq0WVl/QvfhFQNeL8fxhBlGoP+L80uDCiQcpJPd+2XxkivS3lwRm3E0CXTfol0w==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.6.0", + "js-sha3": "0.8.0" + } + }, + "node_modules/@ethersproject/logger": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", + "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ] + }, + "node_modules/@ethersproject/networks": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/networks/-/networks-5.6.0.tgz", + "integrity": "sha512-DaVzgyThzHgSDLuURhvkp4oviGoGe9iTZW4jMEORHDRCgSZ9K9THGFKqL+qGXqPAYLEgZTf5z2w56mRrPR1MjQ==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/logger": "^5.6.0" + } + }, + "node_modules/@ethersproject/properties": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/properties/-/properties-5.6.0.tgz", + "integrity": "sha512-szoOkHskajKePTJSZ46uHUWWkbv7TzP2ypdEK6jGMqJaEt2sb0jCgfBo0gH0m2HBpRixMuJ6TBRaQCF7a9DoCg==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/logger": "^5.6.0" + } + }, + "node_modules/@ethersproject/rlp": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/rlp/-/rlp-5.6.0.tgz", + "integrity": "sha512-dz9WR1xpcTL+9DtOT/aDO+YyxSSdO8YIS0jyZwHHSlAmnxA6cKU3TrTd4Xc/bHayctxTgGLYNuVVoiXE4tTq1g==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0" + } + }, + "node_modules/@ethersproject/signing-key": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/signing-key/-/signing-key-5.6.0.tgz", + "integrity": "sha512-S+njkhowmLeUu/r7ir8n78OUKx63kBdMCPssePS89So1TH4hZqnWFsThEd/GiXYp9qMxVrydf7KdM9MTGPFukA==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "bn.js": "^4.11.9", + "elliptic": "6.5.4", + "hash.js": "1.1.7" + } + }, + "node_modules/@ethersproject/strings": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/strings/-/strings-5.6.0.tgz", + "integrity": "sha512-uv10vTtLTZqrJuqBZR862ZQjTIa724wGPWQqZrofaPI/kUsf53TBG0I0D+hQ1qyNtllbNzaW+PDPHHUI6/65Mg==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/constants": "^5.6.0", + "@ethersproject/logger": "^5.6.0" + } + }, + "node_modules/@ethersproject/transactions": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/transactions/-/transactions-5.6.0.tgz", + "integrity": "sha512-4HX+VOhNjXHZyGzER6E/LVI2i6lf9ejYeWD6l4g50AdmimyuStKc39kvKf1bXWQMg7QNVh+uC7dYwtaZ02IXeg==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/address": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/constants": "^5.6.0", + "@ethersproject/keccak256": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/rlp": "^5.6.0", + "@ethersproject/signing-key": "^5.6.0" + } + }, + "node_modules/@ethersproject/web": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/web/-/web-5.6.0.tgz", + "integrity": "sha512-G/XHj0hV1FxI2teHRfCGvfBUHFmU+YOSbCxlAMqJklxSa7QMiHFQfAxvwY2PFqgvdkxEKwRNr/eCjfAPEm2Ctg==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/base64": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/strings": "^5.6.0" + } + }, + "node_modules/@fontsource/material-icons": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/@fontsource/material-icons/-/material-icons-4.5.2.tgz", + "integrity": "sha512-J6Slv1GhQ42TF/DbEIvsebIe1rYvkMrEglVsPYvKAnbQzpm7m7Uv4bkpbsqxjXJvaJZWefg1sXqvCOYAyBTfIA==" + }, + "node_modules/@fontsource/metropolis": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/@fontsource/metropolis/-/metropolis-4.5.1.tgz", + "integrity": "sha512-YJXoEHp6nAz+3UEQ9Hx95i1w898EWdt3qzJB0xFqJuxXCsf6ftk7msbxsI5jeLam+UjfIWK7s6NPK/1B04LHcQ==" + }, + "node_modules/@gar/promisify": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", + "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", + "dev": true + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz", + "integrity": "sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==", + "dev": true, + "dependencies": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@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 + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@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, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.5.tgz", + "integrity": "sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.11", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz", + "integrity": "sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.4.tgz", + "integrity": "sha512-vFv9ttIedivx0ux3QSjhgtCVjPZd5l46ZOMDSCwnH1yUO2e964gO8LZGyv2QkqcgR6TnBU1v+1IFqmeoG+0UJQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "node_modules/@juggle/resize-observer": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@juggle/resize-observer/-/resize-observer-3.3.1.tgz", + "integrity": "sha512-zMM9Ds+SawiUkakS7y94Ymqx+S0ORzpG3frZirN3l+UlXUmSUR7hF4wxCVqW+ei94JzV5kt0uXBcoOEAuiydrw==" + }, + "node_modules/@metamask/jazzicon": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@metamask/jazzicon/-/jazzicon-2.0.0.tgz", + "integrity": "sha512-7M+WSZWKcQAo0LEhErKf1z+D3YX0tEDAcGvcKbDyvDg34uvgeKR00mFNIYwAhdAS9t8YXxhxZgsrRBBg6X8UQg==", + "dependencies": { + "color": "^0.11.3", + "mersenne-twister": "^1.1.0" + } + }, + "node_modules/@metamask/safe-event-emitter": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@metamask/safe-event-emitter/-/safe-event-emitter-2.0.0.tgz", + "integrity": "sha512-/kSXhY692qiV1MXu6EeOZvg5nECLclxNXcKCxJ3cXQgYuRymRHpdx/t7JXfsK+JLjwA1e1c1/SBrlQYpusC29Q==" + }, + "node_modules/@ngrx/component": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@ngrx/component/-/component-13.0.2.tgz", + "integrity": "sha512-Izq984Soqt/ze/XyNLTvFjdMkuGLwarfe0hT9qjVO8cHgI5hEAvjwklv+JHmM1dtJOZ+USoM0rgwaUU5iInQfA==", + "dependencies": { + "tslib": "^2.0.0" + }, + "peerDependencies": { + "@angular/common": "^13.0.0", + "@angular/core": "^13.0.0", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@ngrx/effects": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@ngrx/effects/-/effects-13.0.2.tgz", + "integrity": "sha512-7yW/KCxlRatDkdEriSnORlOYX8+1QAWEjPulNmHSPwehkzTQ3fIPfRBQy8xP8bnjwvGxnEZNwQlU4q1KVYOfhg==", + "dependencies": { + "tslib": "^2.0.0" + }, + "peerDependencies": { + "@angular/core": "^13.0.0", + "@ngrx/store": "13.0.2", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@ngrx/entity": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@ngrx/entity/-/entity-13.0.2.tgz", + "integrity": "sha512-sAN/YDvDNy4fmCOWU8LfPp8YI8XJcvmO89XTRSoJjo3O9BIbCSEw2gYHe1V7gWHLY5Pr9wiMybKhd4RHtzFHgQ==", + "dependencies": { + "tslib": "^2.0.0" + }, + "peerDependencies": { + "@angular/core": "^13.0.0", + "@ngrx/store": "13.0.2", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@ngrx/router-store": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@ngrx/router-store/-/router-store-13.0.2.tgz", + "integrity": "sha512-XrzHjrD2hhnXdGeIpQm/msN77hoAL/QD3ZYGFJs3yT5d3x/T3L1JFlra7wC0OlKJkOs6zAh5Kz9cJ94YO/TEtQ==", + "dependencies": { + "tslib": "^2.0.0" + }, + "peerDependencies": { + "@angular/common": "^13.0.0", + "@angular/core": "^13.0.0", + "@angular/router": "^13.0.0", + "@ngrx/store": "13.0.2", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@ngrx/store": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@ngrx/store/-/store-13.0.2.tgz", + "integrity": "sha512-F7tsc3oCvKh+62MKiXTrvSeaxR41u4p8bch3BLjz12F37376rMuBnXf+V1thsPTZ6RB6aycAi821EQYVXFCXZg==", + "dependencies": { + "tslib": "^2.0.0" + }, + "peerDependencies": { + "@angular/core": "^13.0.0", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@ngrx/store-devtools": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@ngrx/store-devtools/-/store-devtools-13.0.2.tgz", + "integrity": "sha512-fcQ5A7cv9PONFvqlpFPXHswWjEflJvqrNt6wmywlxMtJDjkgzCHpvRiJqup/FiTosblRERoeZXN0oHW3Er3+rw==", + "dependencies": { + "tslib": "^2.0.0" + }, + "peerDependencies": { + "@ngrx/store": "13.0.2", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@ngtools/webpack": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-13.2.6.tgz", + "integrity": "sha512-N8SvRV91+/57TcAfbghc0k0tKCukw/7KqbDaLPAQTGFekJ4xMGT3elMzOyBXTH3Hvp5HL8/hiBt2tG04qiMf+w==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "@angular/compiler-cli": "^13.0.0", + "typescript": ">=4.4.3 <4.6", + "webpack": "^5.30.0" + } + }, + "node_modules/@ngx-translate/core": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/@ngx-translate/core/-/core-14.0.0.tgz", + "integrity": "sha512-UevdwNCXMRCdJv//0kC8h2eSfmi02r29xeE8E9gJ1Al4D4jEJ7eiLPdjslTMc21oJNGguqqWeEVjf64SFtvw2w==", + "dependencies": { + "tslib": "^2.3.0" + }, + "peerDependencies": { + "@angular/core": ">=13.0.0", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@ngx-translate/http-loader": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@ngx-translate/http-loader/-/http-loader-7.0.0.tgz", + "integrity": "sha512-j+NpXXlcGVdyUNyY/qsJrqqeAdJdizCd+GKh3usXExSqy1aE9866jlAIL+xrfDU4w+LiMoma5pgE4emvFebZmA==", + "dependencies": { + "tslib": "^2.3.0" + }, + "peerDependencies": { + "@angular/common": ">=13.0.0", + "@ngx-translate/core": ">=14.0.0", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@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, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@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, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@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, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@npmcli/fs": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-1.1.1.tgz", + "integrity": "sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==", + "dev": true, + "dependencies": { + "@gar/promisify": "^1.0.1", + "semver": "^7.3.5" + } + }, + "node_modules/@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, + "dependencies": { + "@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" + } + }, + "node_modules/@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, + "dependencies": { + "npm-bundled": "^1.1.1", + "npm-normalize-package-bin": "^1.0.1" + }, + "bin": { + "installed-package-contents": "index.js" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@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, + "dependencies": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@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 + }, + "node_modules/@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, + "dependencies": { + "infer-owner": "^1.0.4" + } + }, + "node_modules/@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, + "dependencies": { + "@npmcli/node-gyp": "^1.0.2", + "@npmcli/promise-spawn": "^1.3.2", + "node-gyp": "^8.2.0", + "read-package-json-fast": "^2.0.1" + } + }, + "node_modules/@nrwl/cli": { + "version": "13.9.0", + "resolved": "https://registry.npmjs.org/@nrwl/cli/-/cli-13.9.0.tgz", + "integrity": "sha512-jYpVpkxtO/cImcMtwbpDtkQ0P2mgxc7CrjoAzzbfflYJGjCvv5GgJGGlOmwDgevcIZv16OLmMzk2jebMcGbnHw==", + "dev": true, + "dependencies": { + "nx": "13.9.0" + }, + "bin": { + "nx": "bin/nx.js" + } + }, + "node_modules/@nrwl/cli/node_modules/@nrwl/tao": { + "version": "13.9.0", + "resolved": "https://registry.npmjs.org/@nrwl/tao/-/tao-13.9.0.tgz", + "integrity": "sha512-U6qhpoIZDhYdMLmSuvWm1jmHT/us32yMf68hrHBolR2OQtDLv9eDaKFEs7symiLQFG3jswfQBNSVaKSvoUW6HQ==", + "dev": true, + "dependencies": { + "nx": "13.9.0" + }, + "bin": { + "tao": "index.js" + } + }, + "node_modules/@nrwl/cli/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@nrwl/cli/node_modules/chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@nrwl/cli/node_modules/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, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@nrwl/cli/node_modules/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 + }, + "node_modules/@nrwl/cli/node_modules/fast-glob": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz", + "integrity": "sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@nrwl/cli/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@nrwl/cli/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@nrwl/cli/node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/@nrwl/cli/node_modules/nx": { + "version": "13.9.0", + "resolved": "https://registry.npmjs.org/nx/-/nx-13.9.0.tgz", + "integrity": "sha512-OMoyuSRE0excccrsoHf5CUosDeDQbk1SjC98QhD5BJfrP7E55RVRy/ew0xnpu3E/QnplDBlQcJNSPWsTwqzO8w==", + "dev": true, + "dependencies": { + "@nrwl/cli": "13.9.0", + "@nrwl/tao": "13.9.0", + "@swc-node/register": "^1.4.2", + "@swc/core": "^1.2.146", + "chalk": "4.1.0", + "enquirer": "~2.3.6", + "fast-glob": "3.2.7", + "fs-extra": "^9.1.0", + "ignore": "^5.0.4", + "jsonc-parser": "3.0.0", + "rxjs": "^6.5.4", + "rxjs-for-await": "0.0.2", + "semver": "7.3.4", + "tmp": "~0.2.1", + "tsconfig-paths": "^3.9.0", + "tslib": "^2.3.0", + "v8-compile-cache": "2.3.0", + "yargs-parser": "20.0.0" + }, + "bin": { + "nx": "bin/nx.js" + } + }, + "node_modules/@nrwl/cli/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/@nrwl/cli/node_modules/rxjs-for-await": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/rxjs-for-await/-/rxjs-for-await-0.0.2.tgz", + "integrity": "sha512-IJ8R/ZCFMHOcDIqoABs82jal00VrZx8Xkgfe7TOKoaRPAW5nH/VFlG23bXpeGdrmtqI9UobFPgUKgCuFc7Lncw==", + "dev": true, + "peerDependencies": { + "rxjs": "^6.0.0" + } + }, + "node_modules/@nrwl/cli/node_modules/rxjs/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/@nrwl/cli/node_modules/semver": { + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", + "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@nrwl/cli/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@nrwl/cli/node_modules/tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "dev": true, + "dependencies": { + "rimraf": "^3.0.0" + }, + "engines": { + "node": ">=8.17.0" + } + }, + "node_modules/@nrwl/cli/node_modules/yargs-parser": { + "version": "20.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.0.0.tgz", + "integrity": "sha512-8eblPHTL7ZWRkyjIZJjnGf+TijiKJSwA24svzLRVvtgoi/RZiKa9fFQTrlx0OKLnyHSdt/enrdadji6WFfESVA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/@nrwl/devkit": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/@nrwl/devkit/-/devkit-13.1.3.tgz", + "integrity": "sha512-TAAsZJvVc/obeH0rZKY6miVhyM2GHGb8qIWp9MAIdLlXf4VDcNC7rxwb5OrGVSwuTTjqGYBGPUx0yEogOOJthA==", + "dev": true, + "dependencies": { + "@nrwl/tao": "13.1.3", + "ejs": "^3.1.5", + "ignore": "^5.0.4", + "rxjs": "^6.5.4", + "semver": "7.3.4", + "tslib": "^2.0.0" + } + }, + "node_modules/@nrwl/devkit/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/@nrwl/devkit/node_modules/rxjs/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/@nrwl/devkit/node_modules/semver": { + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", + "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@nrwl/tao": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/@nrwl/tao/-/tao-13.1.3.tgz", + "integrity": "sha512-/IwJgSgCBD1SaF+n8RuXX2OxDAh8ut/+P8pMswjm8063ac30UlAHjQ4XTYyskLH8uoUmNi2hNaGgHUrkwt7tQA==", + "dev": true, + "dependencies": { + "chalk": "4.1.0", + "enquirer": "~2.3.6", + "fs-extra": "^9.1.0", + "jsonc-parser": "3.0.0", + "nx": "13.1.3", + "rxjs": "^6.5.4", + "rxjs-for-await": "0.0.2", + "semver": "7.3.4", + "tmp": "~0.2.1", + "tslib": "^2.0.0", + "yargs-parser": "20.0.0" + }, + "bin": { + "tao": "index.js" + } + }, + "node_modules/@nrwl/tao/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@nrwl/tao/node_modules/chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@nrwl/tao/node_modules/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, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@nrwl/tao/node_modules/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 + }, + "node_modules/@nrwl/tao/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@nrwl/tao/node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/@nrwl/tao/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/@nrwl/tao/node_modules/rxjs-for-await": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/rxjs-for-await/-/rxjs-for-await-0.0.2.tgz", + "integrity": "sha512-IJ8R/ZCFMHOcDIqoABs82jal00VrZx8Xkgfe7TOKoaRPAW5nH/VFlG23bXpeGdrmtqI9UobFPgUKgCuFc7Lncw==", + "dev": true, + "peerDependencies": { + "rxjs": "^6.0.0" + } + }, + "node_modules/@nrwl/tao/node_modules/rxjs/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/@nrwl/tao/node_modules/semver": { + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", + "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@nrwl/tao/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@nrwl/tao/node_modules/tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "dev": true, + "dependencies": { + "rimraf": "^3.0.0" + }, + "engines": { + "node": ">=8.17.0" + } + }, + "node_modules/@nrwl/tao/node_modules/yargs-parser": { + "version": "20.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.0.0.tgz", + "integrity": "sha512-8eblPHTL7ZWRkyjIZJjnGf+TijiKJSwA24svzLRVvtgoi/RZiKa9fFQTrlx0OKLnyHSdt/enrdadji6WFfESVA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/@schematics/angular": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-13.2.6.tgz", + "integrity": "sha512-8NzHMX9+FSgaB0lJYxlTJv9OcBuolwZJqo9M/yX3RPSqSHghA33jWwgVbV551hBJOpbVEePerG1DQkIC99DXKA==", + "dev": true, + "dependencies": { + "@angular-devkit/core": "13.2.6", + "@angular-devkit/schematics": "13.2.6", + "jsonc-parser": "3.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/@socket.io/base64-arraybuffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@socket.io/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz", + "integrity": "sha512-dOlCBKnDw4iShaIsH/bxujKTM18+2TOAsYz+KSc11Am38H4q5Xw8Bbz97ZYdrVNM+um3p7w86Bvvmcn9q+5+eQ==", + "dev": true, + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/@swc-node/core": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/@swc-node/core/-/core-1.8.2.tgz", + "integrity": "sha512-IoJ7tGHQ6JOMSmFe4VhP64uLmFKMNasS0QEgUrLFQ0h/dTvpQMynnoGBEJoPL6LfsebZ/q4uKqbpWrth6/yrAA==", + "dev": true, + "dependencies": { + "@swc/core": "^1.2.119" + }, + "engines": { + "node": ">= 10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Brooooooklyn" + } + }, + "node_modules/@swc-node/register": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@swc-node/register/-/register-1.4.2.tgz", + "integrity": "sha512-wLZz0J7BTO//1Eq7e4eBQjKF380Hr2eVemz849msQSKcVM1D7UJUt/dP2TinEVGx++/BXJ/0q37i6n9Iw0EM0w==", + "dev": true, + "dependencies": { + "@swc-node/core": "^1.8.2", + "@swc-node/sourcemap-support": "^0.1.11", + "chalk": "4", + "debug": "^4.3.3", + "pirates": "^4.0.4", + "tslib": "^2.3.1", + "typescript": "^4.5.3" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Brooooooklyn" + } + }, + "node_modules/@swc-node/register/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@swc-node/register/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@swc-node/register/node_modules/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, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@swc-node/register/node_modules/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 + }, + "node_modules/@swc-node/register/node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/@swc-node/register/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@swc-node/sourcemap-support": { + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@swc-node/sourcemap-support/-/sourcemap-support-0.1.11.tgz", + "integrity": "sha512-b+Mn3oQl+7nUSt7hPzIbY9B30YhcFo1PT4kd9P4QmD6raycmIealOAhAdZID/JevphzsOXHQB4OqJm7Yi5tMcA==", + "dev": true, + "dependencies": { + "source-map-support": "^0.5.21" + } + }, + "node_modules/@swc/core": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.2.156.tgz", + "integrity": "sha512-icEIxirqpbKXX7tESdfBpa7XdpX0pSWtREfhWgWHXsWiSiOjQ4Vij4fAAdIOOXxm1amCCKjr6bThOIiA0dtTug==", + "dev": true, + "bin": { + "swcx": "run_swcx.js" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/swc" + }, + "optionalDependencies": { + "@swc/core-android-arm-eabi": "1.2.156", + "@swc/core-android-arm64": "1.2.156", + "@swc/core-darwin-arm64": "1.2.156", + "@swc/core-darwin-x64": "1.2.156", + "@swc/core-freebsd-x64": "1.2.156", + "@swc/core-linux-arm-gnueabihf": "1.2.156", + "@swc/core-linux-arm64-gnu": "1.2.156", + "@swc/core-linux-arm64-musl": "1.2.156", + "@swc/core-linux-x64-gnu": "1.2.156", + "@swc/core-linux-x64-musl": "1.2.156", + "@swc/core-win32-arm64-msvc": "1.2.156", + "@swc/core-win32-ia32-msvc": "1.2.156", + "@swc/core-win32-x64-msvc": "1.2.156" + } + }, + "node_modules/@swc/core-android-arm-eabi": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core-android-arm-eabi/-/core-android-arm-eabi-1.2.156.tgz", + "integrity": "sha512-epFJaBn/tqWxtprFucJfbJgRtCoamKUO2vxQ1VYp69VTQ78cF4kdizoxjlHjt4ZMZ+Y4AKULAtwqs4zDrQIxXg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-android-arm64": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core-android-arm64/-/core-android-arm64-1.2.156.tgz", + "integrity": "sha512-gdGjd0GuAoBPJvKAbSwnzbvBBHvmmHjETH7hoTUxRlmB1QETrI7AnM3RZ75l6HtHu+RjgsiuBk2yiHbic1Hh7Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-darwin-arm64": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.2.156.tgz", + "integrity": "sha512-kFnWPrxOfIIYRqv8DCGOT8KsMPgbblLJQ45TKT1wCkCsQ3xmujC86XZMWx7xyYmDd+V6QbfawLBJvb4Pq4jvFw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-darwin-x64": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.2.156.tgz", + "integrity": "sha512-G0H2zJKIWsUx9+QpontN1Rlm2g+pLuaFzHDeULRYnxEyZl2tUcvi2TuKi3imjpr26xBx9Zesz9vSThmwU9Ll2A==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-freebsd-x64": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core-freebsd-x64/-/core-freebsd-x64-1.2.156.tgz", + "integrity": "sha512-S9PsqcVgG10plsoWDGAUjoH0GbM8t9PR1JFx+sAHY1JKUxSW4iwMZDGTzIrIRO3agTMZLgpoLG/LV+1Ljcrr+Q==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm-gnueabihf": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.2.156.tgz", + "integrity": "sha512-nQP/c4tvxlyCQXSByNhS4lCxSCJZ/FrCbEv5l0tAcMKdO21fYSHduAvAisQAMfyTZHCL+2ubTeWV0pd8P432Ug==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm64-gnu": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.2.156.tgz", + "integrity": "sha512-kRSCfVWfvukxvOFWGts1u+qoRYUbw5Hlqty0PG3/lVoDM6pu6wK4TZEEERLbUuN7TDWKbpEchpG01kGtW/g9Cg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm64-musl": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.2.156.tgz", + "integrity": "sha512-SowJYHa2NjVCkPdg004npZj6bMdQel74G6DUD9zl8tw8QV9MLRTgp0cg6EJZdBTSjQ3M79HQYIB4cMGjm1qbJA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-x64-gnu": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.2.156.tgz", + "integrity": "sha512-qcP4xn9NDm4BkZvLDeSdRfbSUrTG87Usb0ZVtoW6L2cXBZtaOWSS62s1eALUQDDehA/HpB4qgwVFUdvzHwx8qg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-x64-musl": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.2.156.tgz", + "integrity": "sha512-l6xzgNuKB6QQYxWNMDTNVAnle/mNk35AgD83otiKoL23o8m0gxExm8OQbd0HEi/Wf6BrPl3rlxsGpYWvOJHztQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-arm64-msvc": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.2.156.tgz", + "integrity": "sha512-og3lIrHcQY0Fjxdt5LLMvUqYn1EbqrWFhpn5S9b3M5hkQO+rbZZulONWdHT0xmRzuPvyeK7ZEyLdzItWEeym8A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-ia32-msvc": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.2.156.tgz", + "integrity": "sha512-08TMu53hImO8SlQmaElRQEr7z8TTtdXl9/18ZnHv1jcAIEk/5BdP8SeQaTtf2l3uQjdKdZWFZrAK12Jek4pe9w==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-x64-msvc": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.2.156.tgz", + "integrity": "sha512-oLfkNd+SN8gWKaT9i0awbagq2oYyLqw8GhU3bZmMI1Ssx2u2IBA1mW07LPAnXsKNEGqnayc6cY0pyCN4IVEgLQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "dependencies": { + "defer-to-connect": "^1.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@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, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@types/bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha512-pqr857jrp2kPuO9uRjZ3PwnJTjoQy+fcdxvBTvHm6dkmEL9q+hDD/2j/0ELOBPtPnS8LjCX0gI9nbl8lVkadpg==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "dev": true, + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/bonjour": { + "version": "3.5.10", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz", + "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/component-emitter": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/@types/component-emitter/-/component-emitter-1.2.11.tgz", + "integrity": "sha512-SRXjM+tfsSlA9VuG8hGO2nft2p8zjXCK1VcC6N4NXbBbYbSia9kzCChYQajIjzIqOOOuh5Ock6MmV2oux4jDZQ==", + "dev": true + }, + "node_modules/@types/connect": { + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", + "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect-history-api-fallback": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz", + "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==", + "dev": true, + "dependencies": { + "@types/express-serve-static-core": "*", + "@types/node": "*" + } + }, + "node_modules/@types/cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", + "dev": true + }, + "node_modules/@types/cors": { + "version": "2.8.12", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz", + "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==", + "dev": true + }, + "node_modules/@types/eslint": { + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.1.tgz", + "integrity": "sha512-GE44+DNEyxxh2Kc6ro/VkIj+9ma0pO0bwv9+uHSyBrikYOHr8zYcdPvnBOp1aw8s+CjRvuSx7CyWqRrNFQ59mA==", + "dev": true, + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.3", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.3.tgz", + "integrity": "sha512-PB3ldyrcnAicT35TWPs5IcwKD8S333HMaa2VVv4+wdvebJkjWuW/xESoB8IwRcog8HYVYamb1g/R31Qv5Bx03g==", + "dev": true, + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "node_modules/@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 + }, + "node_modules/@types/express": { + "version": "4.17.13", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz", + "integrity": "sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==", + "dev": true, + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.18", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "4.17.28", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.28.tgz", + "integrity": "sha512-P1BJAEAW3E2DJUlkgq4tOL3RyMunoWXqbSCygWo5ZIWTjUgN1YnaXWW4VWl/oc8vs/XoYibEGBKP0uZyF4AHig==", + "dev": true, + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*" + } + }, + "node_modules/@types/http-proxy": { + "version": "1.17.8", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.8.tgz", + "integrity": "sha512-5kPLG5BKpWYkw/LVOGWpiq3nEVqxiN32rTgI53Sk12/xHFQ2rG3ehI9IO+O3W2QoKeyB92dJkoka8SUm6BX1pA==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/jasmine": { + "version": "3.10.3", + "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-3.10.3.tgz", + "integrity": "sha512-SWyMrjgdAUHNQmutvDcKablrJhkDLy4wunTme8oYLjKp41GnHGxMRXr2MQMvy/qy8H3LdzwQk9gH4hZ6T++H8g==", + "dev": true + }, + "node_modules/@types/json-schema": { + "version": "7.0.9", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.9.tgz", + "integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==", + "dev": true + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", + "dev": true + }, + "node_modules/@types/mime": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz", + "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==", + "dev": true + }, + "node_modules/@types/node": { + "version": "12.20.47", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.47.tgz", + "integrity": "sha512-BzcaRsnFuznzOItW1WpQrDHM7plAa7GIDMZ6b5pnMbkqEtM/6WCOhvZar39oeMQP79gwvFUWjjptE7/KGcNqFg==" + }, + "node_modules/@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "dev": true + }, + "node_modules/@types/pbkdf2": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@types/pbkdf2/-/pbkdf2-3.1.0.tgz", + "integrity": "sha512-Cf63Rv7jCQ0LaL8tNXmEyqTHuIJxRdlS5vMh1mj5voN4+QFhVZnlZruezqpWYDiJ8UTzhP0VmeLXCmBk66YrMQ==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", + "dev": true + }, + "node_modules/@types/range-parser": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", + "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", + "dev": true + }, + "node_modules/@types/retry": { + "version": "0.12.1", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.1.tgz", + "integrity": "sha512-xoDlM2S4ortawSWORYqsdU+2rxdh4LRW9ytc3zmT37RIKQh6IHyKwwtKhKis9ah8ol07DCkZxPt8BBvPjC6v4g==", + "dev": true + }, + "node_modules/@types/secp256k1": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@types/secp256k1/-/secp256k1-4.0.3.tgz", + "integrity": "sha512-Da66lEIFeIz9ltsdMZcpQvmrmmoqrfju8pm1BH8WbYjZSwUgCwXLb9C+9XYogwBITnbsSaMdVPb2ekf7TV+03w==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", + "dev": true, + "dependencies": { + "@types/express": "*" + } + }, + "node_modules/@types/serve-static": { + "version": "1.13.10", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.10.tgz", + "integrity": "sha512-nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ==", + "dev": true, + "dependencies": { + "@types/mime": "^1", + "@types/node": "*" + } + }, + "node_modules/@types/sockjs": { + "version": "0.3.33", + "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz", + "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/ws": { + "version": "8.5.3", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.3.tgz", + "integrity": "sha512-6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/yargs": { + "version": "17.0.10", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", + "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", + "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==", + "dev": true + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "5.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.11.0.tgz", + "integrity": "sha512-HJh33bgzXe6jGRocOj4FmefD7hRY4itgjzOrSs3JPrTNXsX7j5+nQPciAUj/1nZtwo2kAc3C75jZO+T23gzSGw==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "5.11.0", + "@typescript-eslint/type-utils": "5.11.0", + "@typescript-eslint/utils": "5.11.0", + "debug": "^4.3.2", + "functional-red-black-tree": "^1.0.1", + "ignore": "^5.1.8", + "regexpp": "^3.2.0", + "semver": "^7.3.5", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^5.0.0", + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/experimental-utils": { + "version": "5.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.11.0.tgz", + "integrity": "sha512-EPvC/bU2n1LKtzKWP1AjGWkp7r8tJ8giVlZHIODo6q7SAd6J+/9vjtEKHK2G/Qp+D2IGPsQge+oadDR3CZcFtQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/utils": "5.11.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "5.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.11.0.tgz", + "integrity": "sha512-x0DCjetHZYBRovJdr3U0zG9OOdNXUaFLJ82ehr1AlkArljJuwEsgnud+Q7umlGDFLFrs8tU8ybQDFocp/eX8mQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "5.11.0", + "@typescript-eslint/types": "5.11.0", + "@typescript-eslint/typescript-estree": "5.11.0", + "debug": "^4.3.2" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "5.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.11.0.tgz", + "integrity": "sha512-z+K4LlahDFVMww20t/0zcA7gq/NgOawaLuxgqGRVKS0PiZlCTIUtX0EJbC0BK1JtR4CelmkPK67zuCgpdlF4EA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.11.0", + "@typescript-eslint/visitor-keys": "5.11.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "5.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.11.0.tgz", + "integrity": "sha512-wDqdsYO6ofLaD4DsGZ0jGwxp4HrzD2YKulpEZXmgN3xo4BHJwf7kq49JTRpV0Gx6bxkSUmc9s0EIK1xPbFFpIA==", + "dev": true, + "dependencies": { + "@typescript-eslint/utils": "5.11.0", + "debug": "^4.3.2", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/types": { + "version": "5.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.11.0.tgz", + "integrity": "sha512-cxgBFGSRCoBEhvSVLkKw39+kMzUKHlJGVwwMbPcTZX3qEhuXhrjwaZXWMxVfxDgyMm+b5Q5b29Llo2yow8Y7xQ==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "5.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.11.0.tgz", + "integrity": "sha512-yVH9hKIv3ZN3lw8m/Jy5I4oXO4ZBMqijcXCdA4mY8ull6TPTAoQnKKrcZ0HDXg7Bsl0Unwwx7jcXMuNZc0m4lg==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.11.0", + "@typescript-eslint/visitor-keys": "5.11.0", + "debug": "^4.3.2", + "globby": "^11.0.4", + "is-glob": "^4.0.3", + "semver": "^7.3.5", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "dependencies": { + "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" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "5.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.11.0.tgz", + "integrity": "sha512-g2I480tFE1iYRDyMhxPAtLQ9HAn0jjBtipgTCZmd9I9s11OV8CTsG+YfFciuNDcHqm4csbAgC2aVZCHzLxMSUw==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "@typescript-eslint/scope-manager": "5.11.0", + "@typescript-eslint/types": "5.11.0", + "@typescript-eslint/typescript-estree": "5.11.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "5.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.11.0.tgz", + "integrity": "sha512-E8w/vJReMGuloGxJDkpPlGwhxocxOpSVgSvjiLO5IxZPmxZF30weOeJYyPSEACwM+X4NziYS9q+WkN/2DHYQwA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.11.0", + "eslint-visitor-keys": "^3.0.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@uiowa/digit-only": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/@uiowa/digit-only/-/digit-only-3.2.1.tgz", + "integrity": "sha512-vxMVVcQoEN3DYSJNrHWZ+MfaxfjMkr6rV28hesGH54Jd9UApuBFLTBQMYfsmPH3obRQ1ezjvcXY2gm+0QeiwNg==", + "dependencies": { + "tslib": "^2.3.0" + }, + "peerDependencies": { + "@angular/common": ">=12.0.0", + "@angular/core": ">=12.0.0" + } + }, + "node_modules/@walletconnect/browser-utils": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@walletconnect/browser-utils/-/browser-utils-1.7.5.tgz", + "integrity": "sha512-gm9ufi0n5cGBXoGWDtMVSqIJ0eXYW+ZFuTNVN0fm4oal26J7cPrOdFjzhv5zvx5fKztWQ21DNFZ+PRXBjXg04Q==", + "dependencies": { + "@walletconnect/safe-json": "1.0.0", + "@walletconnect/types": "^1.7.5", + "@walletconnect/window-getters": "1.0.0", + "@walletconnect/window-metadata": "1.0.0", + "detect-browser": "5.2.0" + } + }, + "node_modules/@walletconnect/browser-utils/node_modules/detect-browser": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/detect-browser/-/detect-browser-5.2.0.tgz", + "integrity": "sha512-tr7XntDAu50BVENgQfajMLzacmSe34D+qZc4zjnniz0ZVuw/TZcLcyxHQjYpJTM36sGEkZZlYLnIM1hH7alTMA==" + }, + "node_modules/@walletconnect/client": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@walletconnect/client/-/client-1.7.5.tgz", + "integrity": "sha512-Vh3h1kfhmJ4Jx//H0lmmfDc5Q2s+R73Nh5cetVN41QPRrAcqHE4lR2ZS8XxRCNBl4/gcHZJIZS9J2Ui4tTXBLA==", + "dependencies": { + "@walletconnect/core": "^1.7.5", + "@walletconnect/iso-crypto": "^1.7.5", + "@walletconnect/types": "^1.7.5", + "@walletconnect/utils": "^1.7.5" + } + }, + "node_modules/@walletconnect/core": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@walletconnect/core/-/core-1.7.5.tgz", + "integrity": "sha512-c4B8s9fZ/Ah2p460Hxo4e9pwLQVYT2+dVYAfqaxVzfYjhAokDEtO55Bdm1hujtRjQVqwTvCljKxBB+LgMp3k8w==", + "dependencies": { + "@walletconnect/socket-transport": "^1.7.5", + "@walletconnect/types": "^1.7.5", + "@walletconnect/utils": "^1.7.5" + } + }, + "node_modules/@walletconnect/crypto": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@walletconnect/crypto/-/crypto-1.0.2.tgz", + "integrity": "sha512-+OlNtwieUqVcOpFTvLBvH+9J9pntEqH5evpINHfVxff1XIgwV55PpbdvkHu6r9Ib4WQDOFiD8OeeXs1vHw7xKQ==", + "dependencies": { + "@walletconnect/encoding": "^1.0.1", + "@walletconnect/environment": "^1.0.0", + "@walletconnect/randombytes": "^1.0.2", + "aes-js": "^3.1.2", + "hash.js": "^1.1.7" + } + }, + "node_modules/@walletconnect/encoding": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@walletconnect/encoding/-/encoding-1.0.1.tgz", + "integrity": "sha512-8opL2rs6N6E3tJfsqwS82aZQDL3gmupWUgmvuZ3CGU7z/InZs3R9jkzH8wmYtpbq0sFK3WkJkQRZFFk4BkrmFA==", + "dependencies": { + "is-typedarray": "1.0.0", + "typedarray-to-buffer": "3.1.5" + } + }, + "node_modules/@walletconnect/environment": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@walletconnect/environment/-/environment-1.0.0.tgz", + "integrity": "sha512-4BwqyWy6KpSvkocSaV7WR3BlZfrxLbJSLkg+j7Gl6pTDE+U55lLhJvQaMuDVazXYxcjBsG09k7UlH7cGiUI5vQ==" + }, + "node_modules/@walletconnect/http-connection": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@walletconnect/http-connection/-/http-connection-1.7.5.tgz", + "integrity": "sha512-WDy2Y/07c1F107362jel0voeV6QMJuWbwAKNLtxlX8Y9KNzqZAGlHhIZykSWrMjNGwxBaXoqLPmu60uVvodc6A==", + "dependencies": { + "@walletconnect/types": "^1.7.5", + "@walletconnect/utils": "^1.7.5", + "eventemitter3": "4.0.7", + "xhr2-cookies": "1.1.0" + } + }, + "node_modules/@walletconnect/iso-crypto": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@walletconnect/iso-crypto/-/iso-crypto-1.7.5.tgz", + "integrity": "sha512-mJdRs2SqAPOLBBqLhU+ZnAh2c8TL2uDuL/ojV4aBzZ0ZHNT7X2zSOjAiixCb3vvH8GAt30OKmiRo3+ChI/9zvA==", + "dependencies": { + "@walletconnect/crypto": "^1.0.2", + "@walletconnect/types": "^1.7.5", + "@walletconnect/utils": "^1.7.5" + } + }, + "node_modules/@walletconnect/jsonrpc-types": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-types/-/jsonrpc-types-1.0.0.tgz", + "integrity": "sha512-11QXNq5H1PKZk7bP8SxgmCw3HRaDuPOVE+wObqEvmhc7OWYUZqfuaaMb+OXGRSOHL3sbC+XHfdeCxFTMXSFyng==", + "dependencies": { + "keyvaluestorage-interface": "^1.0.0" + } + }, + "node_modules/@walletconnect/jsonrpc-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-utils/-/jsonrpc-utils-1.0.0.tgz", + "integrity": "sha512-qUHbKUK6sHeHn67qtHZoLoYk5hS6x1arTPjKDRkY93/6Fx+ZmNIpdm1owX3l6aYueyegJ7mz43FpvYHUqJ8xcw==", + "dependencies": { + "@walletconnect/environment": "^1.0.0", + "@walletconnect/jsonrpc-types": "^1.0.0" + } + }, + "node_modules/@walletconnect/mobile-registry": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@walletconnect/mobile-registry/-/mobile-registry-1.4.0.tgz", + "integrity": "sha512-ZtKRio4uCZ1JUF7LIdecmZt7FOLnX72RPSY7aUVu7mj7CSfxDwUn6gBuK6WGtH+NZCldBqDl5DenI5fFSvkKYw==", + "deprecated": "Deprecated in favor of dynamic registry available from: https://github.com/walletconnect/walletconnect-registry" + }, + "node_modules/@walletconnect/qrcode-modal": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@walletconnect/qrcode-modal/-/qrcode-modal-1.7.5.tgz", + "integrity": "sha512-LVq35jc3VMGq1EMcGCObQtEiercMDmUHDnc7A3AmUo0LoAbaPo6c8Hq0zqy2+JhtLmxUhU3ktf+szmCoiUDTUQ==", + "dependencies": { + "@walletconnect/browser-utils": "^1.7.5", + "@walletconnect/mobile-registry": "^1.4.0", + "@walletconnect/types": "^1.7.5", + "copy-to-clipboard": "^3.3.1", + "preact": "10.4.1", + "qrcode": "1.4.4" + } + }, + "node_modules/@walletconnect/randombytes": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@walletconnect/randombytes/-/randombytes-1.0.2.tgz", + "integrity": "sha512-ivgOtAyqQnN0rLQmOFPemsgYGysd/ooLfaDA/ACQ3cyqlca56t3rZc7pXfqJOIETx/wSyoF5XbwL+BqYodw27A==", + "dependencies": { + "@walletconnect/encoding": "^1.0.1", + "@walletconnect/environment": "^1.0.0", + "randombytes": "^2.1.0" + } + }, + "node_modules/@walletconnect/safe-json": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@walletconnect/safe-json/-/safe-json-1.0.0.tgz", + "integrity": "sha512-QJzp/S/86sUAgWY6eh5MKYmSfZaRpIlmCJdi5uG4DJlKkZrHEF7ye7gA+VtbVzvTtpM/gRwO2plQuiooIeXjfg==" + }, + "node_modules/@walletconnect/socket-transport": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@walletconnect/socket-transport/-/socket-transport-1.7.5.tgz", + "integrity": "sha512-4TYCxrNWb4f5a1NGsALXidr+/6dOiqgVfUQJ4fdP6R7ijL+7jtdiktguU9FIDq5wFXRE+ZdpCpwSAfOt60q/mQ==", + "dependencies": { + "@walletconnect/types": "^1.7.5", + "@walletconnect/utils": "^1.7.5", + "ws": "7.5.3" + } + }, + "node_modules/@walletconnect/socket-transport/node_modules/ws": { + "version": "7.5.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.3.tgz", + "integrity": "sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg==", + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/@walletconnect/types": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@walletconnect/types/-/types-1.7.5.tgz", + "integrity": "sha512-0HvZzxD93et4DdrYgAvclI1BqclkZS7iPWRtbGg3r+PQhRPbOkNypzBy6XH6wflbmr+WBGdmyJvynHsdhcCqUA==" + }, + "node_modules/@walletconnect/utils": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@walletconnect/utils/-/utils-1.7.5.tgz", + "integrity": "sha512-U954rIIA/g/Cmdqy+n3hMY1DDMmXxGs8w/QmrK9b/H5nkQ3e4QicOyynq5g/JTTesN5HZdDTFiyX9r0GSKa+iA==", + "dependencies": { + "@walletconnect/browser-utils": "^1.7.5", + "@walletconnect/encoding": "^1.0.1", + "@walletconnect/jsonrpc-utils": "^1.0.0", + "@walletconnect/types": "^1.7.5", + "bn.js": "4.11.8", + "js-sha3": "0.8.0", + "query-string": "6.13.5" + } + }, + "node_modules/@walletconnect/utils/node_modules/bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + }, + "node_modules/@walletconnect/utils/node_modules/query-string": { + "version": "6.13.5", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-6.13.5.tgz", + "integrity": "sha512-svk3xg9qHR39P3JlHuD7g3nRnyay5mHbrPctEBDUxUkHRifPHXJDhBUycdCC0NBjXoDf44Gb+IsOZL1Uwn8M/Q==", + "dependencies": { + "decode-uri-component": "^0.2.0", + "split-on-first": "^1.0.0", + "strict-uri-encode": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@walletconnect/utils/node_modules/strict-uri-encode": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz", + "integrity": "sha1-ucczDHBChi9rFC3CdLvMWGbONUY=", + "engines": { + "node": ">=4" + } + }, + "node_modules/@walletconnect/web3-provider": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@walletconnect/web3-provider/-/web3-provider-1.7.5.tgz", + "integrity": "sha512-x+UWOTu7jd9qog9NWhaspOmVRDJPnQrgZBscnaSC+x/aAsi52VUrd1GZ9c5UNZFgss41fdx3Z2KhkPeVrlrbuQ==", + "dependencies": { + "@walletconnect/client": "^1.7.5", + "@walletconnect/http-connection": "^1.7.5", + "@walletconnect/qrcode-modal": "^1.7.5", + "@walletconnect/types": "^1.7.5", + "@walletconnect/utils": "^1.7.5", + "web3-provider-engine": "16.0.1" + } + }, + "node_modules/@walletconnect/window-getters": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@walletconnect/window-getters/-/window-getters-1.0.0.tgz", + "integrity": "sha512-xB0SQsLaleIYIkSsl43vm8EwETpBzJ2gnzk7e0wMF3ktqiTGS6TFHxcprMl5R44KKh4tCcHCJwolMCaDSwtAaA==" + }, + "node_modules/@walletconnect/window-metadata": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@walletconnect/window-metadata/-/window-metadata-1.0.0.tgz", + "integrity": "sha512-9eFvmJxIKCC3YWOL97SgRkKhlyGXkrHwamfechmqszbypFspaSk+t2jQXAEU7YClHF6Qjw5eYOmy1//zFi9/GA==", + "dependencies": { + "@walletconnect/window-getters": "^1.0.0" + } + }, + "node_modules/@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, + "dependencies": { + "@webassemblyjs/helper-numbers": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1" + } + }, + "node_modules/@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 + }, + "node_modules/@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 + }, + "node_modules/@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 + }, + "node_modules/@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, + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@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 + }, + "node_modules/@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, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1" + } + }, + "node_modules/@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, + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@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, + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@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 + }, + "node_modules/@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, + "dependencies": { + "@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" + } + }, + "node_modules/@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, + "dependencies": { + "@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" + } + }, + "node_modules/@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, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1" + } + }, + "node_modules/@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, + "dependencies": { + "@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" + } + }, + "node_modules/@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, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@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 + }, + "node_modules/@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 + }, + "node_modules/@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 + }, + "node_modules/abab": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz", + "integrity": "sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==", + "dev": true + }, + "node_modules/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 + }, + "node_modules/abstract-leveldown": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.6.3.tgz", + "integrity": "sha512-2++wDf/DYqkPR3o5tbfdhF96EfMApo1GpPfzOsR/ZYXdkSmELlvOOEAl9iKkRsktMPHdGjO4rtkBpf2I7TiTeA==", + "dependencies": { + "xtend": "~4.0.0" + } + }, + "node_modules/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==", + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz", + "integrity": "sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-import-assertions": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", + "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", + "dev": true, + "peerDependencies": { + "acorn": "^8" + } + }, + "node_modules/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, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/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, + "dependencies": { + "loader-utils": "^2.0.0", + "regex-parser": "^2.2.11" + }, + "engines": { + "node": ">=8.9" + } + }, + "node_modules/adjust-sourcemap-loader/node_modules/loader-utils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", + "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/aes-js": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-3.1.2.tgz", + "integrity": "sha512-e5pEa2kBnBOgR4Y/p20pskXI74UEz7de8ZGVo58asOtvSVG5YAbJeELPZxOmt+Bnz3rX753YKhfIn4X4l1PPRQ==" + }, + "node_modules/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, + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/agentkeepalive": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz", + "integrity": "sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA==", + "dev": true, + "dependencies": { + "debug": "^4.1.0", + "depd": "^1.1.2", + "humanize-ms": "^1.2.1" + }, + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/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, + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "8.9.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.9.0.tgz", + "integrity": "sha512-qOKJyNj/h+OWx7s5DePL6Zu1KeM9jPZhwBqs+7DzP6bGOvqzVCSf0xueYmVuaC/oQ/VtS2zLMLHdQFbkka+XDQ==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "dev": true, + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/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, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/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, + "engines": { + "node": ">=6" + } + }, + "node_modules/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, + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/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, + "engines": [ + "node >= 0.8.0" + ], + "bin": { + "ansi-html": "bin/ansi-html" + } + }, + "node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/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==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/anymatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/aproba": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", + "dev": true + }, + "node_modules/are-we-there-yet": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.0.tgz", + "integrity": "sha512-0GWpv50YSOcLXaN6/FAKY3vfRbllXWV2xvfA/oKJF8pzFhWXPV+yjhJXDBbjscDYowv7Yw1A3uigpzn5iEGTyw==", + "dev": true, + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16" + } + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/aria-query": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-4.2.2.tgz", + "integrity": "sha512-o/HelwhuKpTj/frsOsbNLNgnNGVIFsVP/SW2BSF14gVl7kAfMOJ6/8wUAUvG1R1NHKrfG+2sHZTu0yauT1qBrA==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.10.2", + "@babel/runtime-corejs3": "^7.10.2" + }, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/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 + }, + "node_modules/array-union": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-3.0.1.tgz", + "integrity": "sha512-1OvF9IbWwaeiM9VhzYXVQacMibxpXOMYVNIvMtKRyX9SImBXpKcFr8XvFDeEslCyuH/t6KRt7HEO94AlP8Iatw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/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==", + "dependencies": { + "safer-buffer": "~2.1.0" + } + }, + "node_modules/asn1.js": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", + "dependencies": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/assert": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz", + "integrity": "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==", + "dev": true, + "dependencies": { + "es6-object-assign": "^1.1.0", + "is-nan": "^1.2.1", + "object-is": "^1.0.1", + "util": "^0.12.0" + } + }, + "node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "dependencies": { + "lodash": "^4.17.14" + } + }, + "node_modules/async-eventemitter": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/async-eventemitter/-/async-eventemitter-0.2.4.tgz", + "integrity": "sha512-pd20BwL7Yt1zwDFy+8MX8F1+WCT8aQeKj0kQnTrH9WaeRETlRamVhD0JtRPmrV4GfOJ2F9CvdQkZeZhnh2TuHw==", + "dependencies": { + "async": "^2.4.0" + } + }, + "node_modules/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==" + }, + "node_modules/async-mutex": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/async-mutex/-/async-mutex-0.2.6.tgz", + "integrity": "sha512-Hs4R+4SPgamu6rSGW8C7cV9gaWUKEHykfzCCvIRuaVv636Ju10ZdeUbvb4TBEW0INuq2DHZqXbK4Nd3yG4RaRw==", + "dependencies": { + "tslib": "^2.0.0" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/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, + "bin": { + "atob": "bin/atob.js" + }, + "engines": { + "node": ">= 4.5.0" + } + }, + "node_modules/autoprefixer": { + "version": "10.4.2", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.2.tgz", + "integrity": "sha512-9fOPpHKuDW1w/0EKfRmVnxTDt8166MAnLI3mgZ1JCnhNtYWxcJ6Ud5CO/AVOZi/AvFa8DY9RTy3h3+tFBlrrdQ==", + "dev": true, + "dependencies": { + "browserslist": "^4.19.1", + "caniuse-lite": "^1.0.30001297", + "fraction.js": "^4.1.2", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.0", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", + "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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=", + "engines": { + "node": "*" + } + }, + "node_modules/aws4": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", + "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==" + }, + "node_modules/axobject-query": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz", + "integrity": "sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==", + "dev": true + }, + "node_modules/babel-loader": { + "version": "8.2.3", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.3.tgz", + "integrity": "sha512-n4Zeta8NC3QAsuyiizu0GkmRcQ6clkV9WFUnUf1iXP//IeSKbWjofW3UHyZVwlOB4y039YQKefawyTn64Zwbuw==", + "dev": true, + "dependencies": { + "find-cache-dir": "^3.3.1", + "loader-utils": "^1.4.0", + "make-dir": "^3.1.0", + "schema-utils": "^2.6.5" + }, + "engines": { + "node": ">= 8.9" + }, + "peerDependencies": { + "@babel/core": "^7.0.0", + "webpack": ">=2" + } + }, + "node_modules/babel-loader/node_modules/json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/babel-loader/node_modules/loader-utils": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", + "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/babel-plugin-dynamic-import-node": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", + "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "dev": true, + "dependencies": { + "object.assign": "^4.1.0" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.1.tgz", + "integrity": "sha512-v7/T6EQcNfVLfcN2X8Lulb7DjprieyLWJK/zOWH5DUYcAgex9sP3h25Q+DLsX9TloXe3y1O8l2q2Jv9q8UVB9w==", + "dependencies": { + "@babel/compat-data": "^7.13.11", + "@babel/helper-define-polyfill-provider": "^0.3.1", + "semver": "^6.1.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.2.tgz", + "integrity": "sha512-G3uJih0XWiID451fpeFaYGVuxHEjzKTHtc9uGFEjR6hHrvNzeS/PX+LLLcetJcytsB5m4j+K3o/EpXJNb/5IEQ==", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.3.1", + "core-js-compat": "^3.21.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz", + "integrity": "sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A==", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.3.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-styled-components": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/babel-plugin-styled-components/-/babel-plugin-styled-components-2.0.6.tgz", + "integrity": "sha512-Sk+7o/oa2HfHv3Eh8sxoz75/fFvEdHsXV4grdeHufX0nauCmymlnN0rGhIvfpMQSJMvGutJ85gvCGea4iqmDpg==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.0", + "@babel/helper-module-imports": "^7.16.0", + "babel-plugin-syntax-jsx": "^6.18.0", + "lodash": "^4.17.11", + "picomatch": "^2.3.0" + }, + "peerDependencies": { + "styled-components": ">= 2" + } + }, + "node_modules/babel-plugin-syntax-jsx": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", + "integrity": "sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY=" + }, + "node_modules/backoff": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/backoff/-/backoff-2.5.0.tgz", + "integrity": "sha1-9hbtqdPktmuMp/ynn2lXIsX44m8=", + "dependencies": { + "precond": "0.2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/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 + }, + "node_modules/base-x": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.9.tgz", + "integrity": "sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ==", + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/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, + "engines": { + "node": "^4.5.0 || >= 5.9" + } + }, + "node_modules/batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", + "dev": true + }, + "node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dependencies": { + "tweetnacl": "^0.14.3" + } + }, + "node_modules/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, + "engines": { + "node": "*" + } + }, + "node_modules/bignumber.js": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.2.tgz", + "integrity": "sha512-GAcQvbpsM0pUb0zw1EI0KhQEZ+lRwR5fYaAp3vPOYuP7aDvGy6cVN6XHLauvF8SOga2y0dcLcjt3iQDTSEliyw==", + "engines": { + "node": "*" + } + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dev": true, + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/blakejs": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/blakejs/-/blakejs-1.1.1.tgz", + "integrity": "sha512-bLG6PHOCZJKNshTjGRBvET0vTciwQE6zFKOKKXPDJfwFBd4Ac0yBfPZqcGvGJap50l7ktvlpFqc2jGVaUgbJgg==" + }, + "node_modules/bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" + }, + "node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-SAAwOxgoCKMGs9uUAUFHygfLAyaniaoun6I8mFY9pRAJL9+Kec34aU+oIjDhTycub1jozEfEwx1W1IuOYxVSFw==", + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "1.8.1", + "iconv-lite": "0.4.24", + "on-finished": "~2.3.0", + "qs": "6.9.7", + "raw-body": "2.4.3", + "type-is": "~1.6.18" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/body-parser/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/bonjour": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz", + "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", + "dev": true, + "dependencies": { + "array-flatten": "^2.1.0", + "deep-equal": "^1.0.1", + "dns-equal": "^1.0.0", + "dns-txt": "^2.0.2", + "multicast-dns": "^6.0.1", + "multicast-dns-service-types": "^1.1.0" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", + "dev": true + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" + }, + "node_modules/browser": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/browser/-/browser-0.2.6.tgz", + "integrity": "sha1-sr1AU59tHK+rEreUOVTX51j2tj4=", + "dev": true, + "dependencies": { + "cheerio": "x.x.x", + "junjo": ">=0.2.6", + "termcolor": "x.x.x", + "u2r": "x.x.x" + } + }, + "node_modules/browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dependencies": { + "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" + } + }, + "node_modules/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==", + "dependencies": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "node_modules/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==", + "dependencies": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/browserify-rsa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", + "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", + "dependencies": { + "bn.js": "^5.0.0", + "randombytes": "^2.0.1" + } + }, + "node_modules/browserify-rsa/node_modules/bn.js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz", + "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==" + }, + "node_modules/browserify-sign": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", + "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", + "dependencies": { + "bn.js": "^5.1.1", + "browserify-rsa": "^4.0.1", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.5.3", + "inherits": "^2.0.4", + "parse-asn1": "^5.1.5", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + } + }, + "node_modules/browserify-sign/node_modules/bn.js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz", + "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==" + }, + "node_modules/browserify-sign/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/browserslist": { + "version": "4.20.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.0.tgz", + "integrity": "sha512-bnpOoa+DownbciXj0jVGENf8VYQnE2LNWomhYuCsMmmx9Jd9lwq0WXODuwpSsp8AVdKM2/HorrzxAfbKvWTByQ==", + "dependencies": { + "caniuse-lite": "^1.0.30001313", + "electron-to-chromium": "^1.4.76", + "escalade": "^3.1.1", + "node-releases": "^2.0.2", + "picocolors": "^1.0.0" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + } + }, + "node_modules/bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha1-vhYedsNU9veIrkBx9j806MTwpCo=", + "dependencies": { + "base-x": "^3.0.2" + } + }, + "node_modules/bs58check": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", + "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", + "dependencies": { + "bs58": "^4.0.0", + "create-hash": "^1.1.0", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/btoa": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz", + "integrity": "sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g==", + "bin": { + "btoa": "bin/btoa.js" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-alloc": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", + "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", + "dependencies": { + "buffer-alloc-unsafe": "^1.1.0", + "buffer-fill": "^1.0.0" + } + }, + "node_modules/buffer-alloc-unsafe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", + "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==" + }, + "node_modules/buffer-fill": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", + "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=" + }, + "node_modules/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==" + }, + "node_modules/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 + }, + "node_modules/buffer-to-arraybuffer": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/buffer-to-arraybuffer/-/buffer-to-arraybuffer-0.0.5.tgz", + "integrity": "sha1-YGSkD6dutDxyOrqe+PbhIW0QURo=" + }, + "node_modules/buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" + }, + "node_modules/bufferutil": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.6.tgz", + "integrity": "sha512-jduaYOYtnio4aIAyc6UbvPCVcgq7nYpVnucyxr6eCYg/Woad9Hf/oxxBRDnGGjPfjUm6j5O/uBWhIu4iLebFaw==", + "hasInstallScript": true, + "dependencies": { + "node-gyp-build": "^4.3.0" + }, + "engines": { + "node": ">=6.14.2" + } + }, + "node_modules/builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", + "dev": true + }, + "node_modules/builtins": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", + "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", + "dev": true + }, + "node_modules/bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cacache": { + "version": "15.3.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz", + "integrity": "sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==", + "dev": true, + "dependencies": { + "@npmcli/fs": "^1.0.0", + "@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" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cacheable-request/node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cacheable-request/node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelize": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.0.tgz", + "integrity": "sha1-FkpUg+Yw+kMh5a8HAg5TGDGyYJs=" + }, + "node_modules/can-use-dom": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/can-use-dom/-/can-use-dom-0.1.0.tgz", + "integrity": "sha1-IsxKNKCrxDlQ9CxkEQJKP2NmtFo=" + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001317", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001317.tgz", + "integrity": "sha512-xIZLh8gBm4dqNX0gkzrBeyI86J2eCjWzYAs40q88smG844YIrN4tVQl/RhquHvKEKImWWFIVh1Lxe5n1G/N+GQ==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + } + }, + "node_modules/caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, + "node_modules/chart.js": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-3.7.1.tgz", + "integrity": "sha512-8knRegQLFnPQAheZV8MjxIXc5gQEfDFD897BJgv/klO/vtIyFFmgMXrNfgrXpbTr/XbTturxRgxIXx/Y+ASJBA==" + }, + "node_modules/checkpoint-store": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/checkpoint-store/-/checkpoint-store-1.1.0.tgz", + "integrity": "sha1-BOTLUWuRQziTWB5tRgGnjpVS6gY=", + "dependencies": { + "functional-red-black-tree": "^1.0.1" + } + }, + "node_modules/cheerio": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz", + "integrity": "sha1-qbqoYKP5tZWmuBsahocxIe06Jp4=", + "dev": true, + "dependencies": { + "css-select": "~1.2.0", + "dom-serializer": "~0.1.0", + "entities": "~1.1.1", + "htmlparser2": "^3.9.1", + "lodash.assignin": "^4.0.9", + "lodash.bind": "^4.1.4", + "lodash.defaults": "^4.0.1", + "lodash.filter": "^4.4.0", + "lodash.flatten": "^4.2.0", + "lodash.foreach": "^4.3.0", + "lodash.map": "^4.4.0", + "lodash.merge": "^4.4.0", + "lodash.pick": "^4.2.1", + "lodash.reduce": "^4.4.0", + "lodash.reject": "^4.4.0", + "lodash.some": "^4.4.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cheerio/node_modules/css-select": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", + "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "dev": true, + "dependencies": { + "boolbase": "~1.0.0", + "css-what": "2.1", + "domutils": "1.5.1", + "nth-check": "~1.0.1" + } + }, + "node_modules/cheerio/node_modules/css-what": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", + "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/cheerio/node_modules/dom-serializer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", + "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", + "dev": true, + "dependencies": { + "domelementtype": "^1.3.0", + "entities": "^1.1.1" + } + }, + "node_modules/cheerio/node_modules/domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", + "dev": true + }, + "node_modules/cheerio/node_modules/domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "dev": true, + "dependencies": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "node_modules/cheerio/node_modules/entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", + "dev": true + }, + "node_modules/cheerio/node_modules/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==", + "dev": true, + "dependencies": { + "boolbase": "~1.0.0" + } + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.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" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "dev": true, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/cids": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/cids/-/cids-0.7.5.tgz", + "integrity": "sha512-zT7mPeghoWAu+ppn8+BS1tQ5qGmbMfB4AregnQjA/qHY3GC1m1ptI9GkWNlgeu38r7CuRdXB47uY2XgAYt6QVA==", + "deprecated": "This module has been superseded by the multiformats module", + "dependencies": { + "buffer": "^5.5.0", + "class-is": "^1.1.0", + "multibase": "~0.6.0", + "multicodec": "^1.0.0", + "multihashes": "~0.4.15" + }, + "engines": { + "node": ">=4.0.0", + "npm": ">=3.0.0" + } + }, + "node_modules/cids/node_modules/multicodec": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/multicodec/-/multicodec-1.0.4.tgz", + "integrity": "sha512-NDd7FeS3QamVtbgfvu5h7fd1IlbaC4EQ0/pgU4zqE2vdHCmBGsUa0TiM8/TdSeG6BMPC92OOCf8F1ocE/Wkrrg==", + "deprecated": "This module has been superseded by the multiformats module", + "dependencies": { + "buffer": "^5.6.0", + "varint": "^5.0.0" + } + }, + "node_modules/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==", + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/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, + "engines": { + "node": ">=6.0.0" + }, + "peerDependencies": { + "webpack": ">=4.0.1" + } + }, + "node_modules/class-is": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/class-is/-/class-is-1.1.0.tgz", + "integrity": "sha512-rhjH9AG1fvabIDoGRVH587413LPjTZgmDF9fOFCbFJQV4yuocX1mHxxvXI4g3cGwbVY9wAYIoKlg1N79frJKQw==" + }, + "node_modules/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, + "engines": { + "node": ">=6" + } + }, + "node_modules/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, + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-spinners": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz", + "integrity": "sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/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, + "engines": { + "node": ">= 10" + } + }, + "node_modules/cliui": { + "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, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/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, + "dependencies": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/clone-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", + "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", + "dependencies": { + "mimic-response": "^1.0.0" + } + }, + "node_modules/color": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/color/-/color-0.11.4.tgz", + "integrity": "sha1-bXtcdPtl6EHNSHkq0e1eB7kE12Q=", + "dependencies": { + "clone": "^1.0.2", + "color-convert": "^1.3.0", + "color-string": "^0.3.0" + } + }, + "node_modules/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==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "node_modules/color-string": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-0.3.0.tgz", + "integrity": "sha1-J9RvtnAlxcL6JZk7+/V55HhBuZE=", + "dependencies": { + "color-name": "^1.0.0" + } + }, + "node_modules/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, + "bin": { + "color-support": "bin.js" + } + }, + "node_modules/colorette": { + "version": "2.0.16", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.16.tgz", + "integrity": "sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g==", + "dev": true + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/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 + }, + "node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true + }, + "node_modules/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==", + "dev": true + }, + "node_modules/compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "dev": true, + "dependencies": { + "mime-db": ">= 1.43.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/compression": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "dev": true, + "dependencies": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/compression/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/compression/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "node_modules/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 + }, + "node_modules/connect": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", + "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "finalhandler": "1.1.2", + "parseurl": "~1.3.3", + "utils-merge": "1.0.1" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/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, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/connect/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/connect/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", + "dev": true + }, + "node_modules/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==", + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-disposition/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/content-hash": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/content-hash/-/content-hash-2.5.2.tgz", + "integrity": "sha512-FvIQKy0S1JaWV10sMsA7TRx8bpU+pqPkhbsfvOJAdjRXvYxEckAwQWGwtRjiaJfh+E0DvcWUGqcdjwMGFjsSdw==", + "dependencies": { + "cids": "^0.7.1", + "multicodec": "^0.5.5", + "multihashes": "^0.4.15" + } + }, + "node_modules/content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/convert-source-map": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", + "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", + "dependencies": { + "safe-buffer": "~5.1.1" + } + }, + "node_modules/cookie": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", + "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + }, + "node_modules/cookiejar": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.3.tgz", + "integrity": "sha512-JxbCBUdrfr6AQjOXrxoTvAMJO4HBTUIlBzslcJPAz+/KT8yk53fXun51u+RenNYvad/+Vc2DIz5o9UxlCDymFQ==" + }, + "node_modules/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, + "dependencies": { + "is-what": "^3.14.1" + }, + "funding": { + "url": "https://github.com/sponsors/mesqueeb" + } + }, + "node_modules/copy-to-clipboard": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.3.1.tgz", + "integrity": "sha512-i13qo6kIHTTpCm8/Wup+0b1mVWETvu2kIMzKoK8FpkLkFxlt0znUAHcMzox+T8sPlqtZXq3CulEjQHsYiGFJUw==", + "dependencies": { + "toggle-selection": "^1.0.6" + } + }, + "node_modules/copy-webpack-plugin": { + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-10.2.1.tgz", + "integrity": "sha512-nr81NhCAIpAWXGCK5thrKmfCQ6GDY0L5RN0U+BnIn/7Us55+UCex5ANNsNKmIVtDRnk0Ecf+/kzp9SUVrrBMLg==", + "dev": true, + "dependencies": { + "fast-glob": "^3.2.7", + "glob-parent": "^6.0.1", + "globby": "^12.0.2", + "normalize-path": "^3.0.0", + "schema-utils": "^4.0.0", + "serialize-javascript": "^6.0.0" + }, + "engines": { + "node": ">= 12.20.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + } + }, + "node_modules/copy-webpack-plugin/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/copy-webpack-plugin/node_modules/schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/core-js": { + "version": "3.20.3", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.20.3.tgz", + "integrity": "sha512-vVl8j8ph6tRS3B8qir40H7yw7voy17xL0piAjlbBUsH7WIfzoedL/ZOr1OV9FyZQLWXsayOJyV4tnRyXR85/ag==", + "hasInstallScript": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-compat": { + "version": "3.21.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.21.1.tgz", + "integrity": "sha512-gbgX5AUvMb8gwxC7FLVWYT7Kkgu/y7+h/h1X43yJkNqhlK2fuYyQimqvKGNZFAY6CKii/GFKJ2cp/1/42TN36g==", + "dependencies": { + "browserslist": "^4.19.1", + "semver": "7.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-compat/node_modules/semver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", + "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/core-js-pure": { + "version": "3.21.1", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.21.1.tgz", + "integrity": "sha512-12VZfFIu+wyVbBebyHmRTuEE/tZrB4tJToWcwAMcsp3h4+sHR+fMJWbKpYiCRWlhFBq+KNyO8rIV9rTkeVmznQ==", + "dev": true, + "hasInstallScript": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" + }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/cosmiconfig": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz", + "integrity": "sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==", + "dev": true, + "dependencies": { + "@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" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/crc-32": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.1.tgz", + "integrity": "sha512-Dn/xm/1vFFgs3nfrpEVScHoIslO9NZRITWGz/1E/St6u4xw99vfZzVkW0OSnzx2h9egej9xwMCEut6sqwokM/w==", + "dependencies": { + "exit-on-epipe": "~1.0.1", + "printj": "~1.3.1" + }, + "bin": { + "crc32": "bin/crc32.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/create-ecdh": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", + "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", + "dependencies": { + "bn.js": "^4.1.0", + "elliptic": "^6.5.3" + } + }, + "node_modules/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==", + "dependencies": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "node_modules/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==", + "dependencies": { + "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" + } + }, + "node_modules/critters": { + "version": "0.0.16", + "resolved": "https://registry.npmjs.org/critters/-/critters-0.0.16.tgz", + "integrity": "sha512-JwjgmO6i3y6RWtLYmXwO5jMd+maZt8Tnfu7VVISmEWyQqfLpB8soBswf8/2bu6SBXxtKA68Al3c+qIG1ApT68A==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "css-select": "^4.2.0", + "parse5": "^6.0.1", + "parse5-htmlparser2-tree-adapter": "^6.0.1", + "postcss": "^8.3.7", + "pretty-bytes": "^5.3.0" + } + }, + "node_modules/critters/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/critters/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/critters/node_modules/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, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/critters/node_modules/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 + }, + "node_modules/critters/node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/critters/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cross-fetch": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-2.2.5.tgz", + "integrity": "sha512-xqYAhQb4NhCJSRym03dwxpP1bYXpK3y7UN83Bo2WFi3x1Zmzn0SL/6xGoPr+gpt4WmNrgCCX3HPysvOwFOW36w==", + "dependencies": { + "node-fetch": "2.6.1", + "whatwg-fetch": "2.0.4" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/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==", + "dependencies": { + "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" + }, + "engines": { + "node": "*" + } + }, + "node_modules/css": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", + "integrity": "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==", + "dev": true, + "dependencies": { + "inherits": "^2.0.4", + "source-map": "^0.6.1", + "source-map-resolve": "^0.6.0" + } + }, + "node_modules/css-blank-pseudo": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-3.0.3.tgz", + "integrity": "sha512-VS90XWtsHGqoM0t4KpH053c4ehxZ2E6HtGI7x68YFV0pTo/QmkV/YFA+NnlvK8guxZVNWGQhVNJGC39Q8XF4OQ==", + "dev": true, + "dependencies": { + "postcss-selector-parser": "^6.0.9" + }, + "bin": { + "css-blank-pseudo": "dist/cli.cjs" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/css-color-keywords": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz", + "integrity": "sha1-/qJhbcZ2spYmhrOvjb2+GAskTgU=", + "engines": { + "node": ">=4" + } + }, + "node_modules/css-has-pseudo": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-3.0.4.tgz", + "integrity": "sha512-Vse0xpR1K9MNlp2j5w1pgWIJtm1a8qS0JwS9goFYcImjlHEmywP9VUF05aGBXzGpDJF86QXk4L0ypBmwPhGArw==", + "dev": true, + "dependencies": { + "postcss-selector-parser": "^6.0.9" + }, + "bin": { + "css-has-pseudo": "dist/cli.cjs" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/css-loader": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.5.1.tgz", + "integrity": "sha512-gEy2w9AnJNnD9Kuo4XAP9VflW/ujKoS9c/syO+uWMlm5igc7LysKzPXaDoR2vroROkSwsTS2tGr1yGGEbZOYZQ==", + "dev": true, + "dependencies": { + "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" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/css-prefers-color-scheme": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-6.0.3.tgz", + "integrity": "sha512-4BqMbZksRkJQx2zAjrokiGMd07RqOa2IxIrrN10lyBe9xhn9DEvjUK79J6jkeiv9D9hQFXKb6g1jwU62jziJZA==", + "dev": true, + "bin": { + "css-prefers-color-scheme": "dist/cli.cjs" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/css-select": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.2.1.tgz", + "integrity": "sha512-/aUslKhzkTNCQUB2qTX84lVmfia9NyjP3WpDGtj/WxhwBzWBYUV3DgUpurHTme8UTPcPlAD1DJ+b0nN/t50zDQ==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^5.1.0", + "domhandler": "^4.3.0", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-to-react-native": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.0.0.tgz", + "integrity": "sha512-Ro1yETZA813eoyUp2GDBhG2j+YggidUmzO1/v9eYBKR2EHVEniE2MI/NqpTQ954BMpTPZFsGNPm46qFB9dpaPQ==", + "dependencies": { + "camelize": "^1.0.0", + "css-color-keywords": "^1.0.0", + "postcss-value-parser": "^4.0.2" + } + }, + "node_modules/css-what": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-5.1.0.tgz", + "integrity": "sha512-arSMRWIIFY0hV8pIxZMEfmMI47Wj3R/aWpZDDxWYCPEiOMv6tfOrnpDtgxBYPEQD4V0Y/958+1TdC3iWTFcUPw==", + "dev": true, + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css/node_modules/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, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/cssdb": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-5.1.0.tgz", + "integrity": "sha512-/vqjXhv1x9eGkE/zO6o8ZOI7dgdZbLVLUGyVRbPgk6YipXbW87YzUCcO+Jrmi5bwJlAH6oD+MNeZyRgXea1GZw==", + "dev": true + }, + "node_modules/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, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/custom-event": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", + "integrity": "sha1-XQKkaFCt8bSjF5RqOSj8y1v9BCU=", + "dev": true + }, + "node_modules/d": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", + "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", + "dependencies": { + "es5-ext": "^0.10.50", + "type": "^1.0.1" + } + }, + "node_modules/dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dependencies": { + "assert-plus": "^1.0.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/date-format": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/date-format/-/date-format-4.0.5.tgz", + "integrity": "sha512-zBhRiN/M0gDxUoM2xRtzTjJzSg0XEi1ofYpF84PfXeS3hN2PsGxmc7jw3DNQtFlimRbMmob5FC3G0cJq6jQQpw==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/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=", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "dependencies": { + "mimic-response": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/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==", + "dev": true, + "dependencies": { + "is-arguments": "^1.0.4", + "is-date-object": "^1.0.1", + "is-regex": "^1.0.4", + "object-is": "^1.0.1", + "object-keys": "^1.1.1", + "regexp.prototype.flags": "^1.2.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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 + }, + "node_modules/default-gateway": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", + "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", + "dev": true, + "dependencies": { + "execa": "^5.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/defaults": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", + "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", + "dev": true, + "dependencies": { + "clone": "^1.0.2" + } + }, + "node_modules/defer-to-connect": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==" + }, + "node_modules/deferred-leveldown": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-1.2.2.tgz", + "integrity": "sha512-uukrWD2bguRtXilKt6cAWKyoXrTSMo5m7crUdLfWQmu8kIm88w3QZoUL+6nhpfKVmhHANER6Re3sKoNoZ3IKMA==", + "dependencies": { + "abstract-leveldown": "~2.6.0" + } + }, + "node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/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==", + "dependencies": { + "object-keys": "^1.0.12" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/del": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/del/-/del-6.0.0.tgz", + "integrity": "sha512-1shh9DQ23L16oXSZKB2JxpL7iMy2E0S9d517ptA1P8iw0alkPtQcrKH7ru31rYtKwF499HkTu+DRzq3TCKDFRQ==", + "dev": true, + "dependencies": { + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", + "is-glob": "^4.0.1", + "is-path-cwd": "^2.2.0", + "is-path-inside": "^3.0.2", + "p-map": "^4.0.0", + "rimraf": "^3.0.2", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/del/node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/del/node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "dependencies": { + "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" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/del/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", + "dev": true + }, + "node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/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, + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/des.js": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", + "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", + "dependencies": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + }, + "node_modules/detect-browser": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/detect-browser/-/detect-browser-5.3.0.tgz", + "integrity": "sha512-53rsFbGdwMwlF7qvCt0ypLM5V5/Mbl0szB7GPN8y9NCcbknYOeVVXdrXEq+90IwAfrrzt6Hd+u2E2ntakICU8w==" + }, + "node_modules/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 + }, + "node_modules/di": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", + "integrity": "sha1-gGZJMmzqp8qjMG112YXqJ0i6kTw=", + "dev": true + }, + "node_modules/diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dependencies": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, + "node_modules/dijkstrajs": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/dijkstrajs/-/dijkstrajs-1.0.2.tgz", + "integrity": "sha512-QV6PMaHTCNmKSeP6QoXhVTw9snc9VD8MulTT0Bd99Pacp4SS1cjcrYPgBPmibqKVtMJJfqC6XvOXgPMEEPH/fg==" + }, + "node_modules/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, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dns-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", + "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=", + "dev": true + }, + "node_modules/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, + "dependencies": { + "ip": "^1.1.0", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/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, + "dependencies": { + "buffer-indexof": "^1.0.0" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/dom-serialize": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", + "integrity": "sha1-ViromZ9Evl6jB29UGdzVnrQ6yVs=", + "dev": true, + "dependencies": { + "custom-event": "~1.0.0", + "ent": "~2.2.0", + "extend": "^3.0.0", + "void-elements": "^2.0.0" + } + }, + "node_modules/dom-serializer": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz", + "integrity": "sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==", + "dev": true, + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/dom-walk": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz", + "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==" + }, + "node_modules/domelementtype": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", + "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/domhandler": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.0.tgz", + "integrity": "sha512-fC0aXNQXqKSFTr2wDNZDhsEYjCiYsDWl3D01kwt25hm1YIPyDGHvvi3rw+PLqHAl/m71MaiF7d5zvBr0p5UB2g==", + "dev": true, + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dev": true, + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=" + }, + "node_modules/ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dependencies": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + }, + "node_modules/ejs": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.6.tgz", + "integrity": "sha512-9lt9Zse4hPucPkoP7FHDF0LQAlGyF9JVpnClFLFH3aSSbxmyoqINRpp/9wePWJTUl4KOQwRL72Iw3InHPDkoGw==", + "dev": true, + "dependencies": { + "jake": "^10.6.1" + }, + "bin": { + "ejs": "bin/cli.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.4.84", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.84.tgz", + "integrity": "sha512-b+DdcyOiZtLXHdgEG8lncYJdxbdJWJvclPNMg0eLUDcSOSO876WA/pYjdSblUTd7eJdIs4YdIxHWGazx7UPSJw==" + }, + "node_modules/elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "dependencies": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/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 + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/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, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/encoding/node_modules/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, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/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==", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/engine.io": { + "version": "6.1.3", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.1.3.tgz", + "integrity": "sha512-rqs60YwkvWTLLnfazqgZqLa/aKo+9cueVfEi/dZ8PyGyaf8TLOxj++4QMIgeG3Gn0AhrWiFXvghsoY9L9h25GA==", + "dev": true, + "dependencies": { + "@types/cookie": "^0.4.1", + "@types/cors": "^2.8.12", + "@types/node": ">=10.0.0", + "accepts": "~1.3.4", + "base64id": "2.0.0", + "cookie": "~0.4.1", + "cors": "~2.8.5", + "debug": "~4.3.1", + "engine.io-parser": "~5.0.3", + "ws": "~8.2.3" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/engine.io-parser": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.3.tgz", + "integrity": "sha512-BtQxwF27XUNnSafQLvDi0dQ8s3i6VgzSoQMJacpIcGNrlUdfHSKbgm3jmjCVvQluGzqwujQMPAoMai3oYSTurg==", + "dev": true, + "dependencies": { + "@socket.io/base64-arraybuffer": "~1.0.2" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/engine.io/node_modules/ws": { + "version": "8.2.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz", + "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/enhanced-resolve": { + "version": "5.9.2", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.9.2.tgz", + "integrity": "sha512-GIm3fQfwLJ8YZx2smuHpBKkXC1yOk+OBEmKckVyL0i/ea8mqDEykK3ld5dgH1QYPNyT/lIllxV2LULnxCHaHkA==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "dev": true, + "dependencies": { + "ansi-colors": "^4.1.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/ent": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", + "integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0=", + "dev": true + }, + "node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/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, + "engines": { + "node": ">=6" + } + }, + "node_modules/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 + }, + "node_modules/errno": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", + "dependencies": { + "prr": "~1.0.1" + }, + "bin": { + "errno": "cli.js" + } + }, + "node_modules/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, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-abstract": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.1.tgz", + "integrity": "sha512-2vJ6tjA/UfqLm2MPs7jxVybLoB8i1t1Jd9R3kISld20sIxPcTbLuggQOUxeWeAvIUkduv/CfMjuh4WmiXr2v9w==", + "dependencies": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "get-intrinsic": "^1.1.1", + "get-symbol-description": "^1.0.0", + "has": "^1.0.3", + "has-symbols": "^1.0.2", + "internal-slot": "^1.0.3", + "is-callable": "^1.2.4", + "is-negative-zero": "^2.0.1", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.1", + "is-string": "^1.0.7", + "is-weakref": "^1.0.1", + "object-inspect": "^1.11.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.2", + "string.prototype.trimend": "^1.0.4", + "string.prototype.trimstart": "^1.0.4", + "unbox-primitive": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-module-lexer": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", + "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", + "dev": true + }, + "node_modules/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==", + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es5-ext": { + "version": "0.10.58", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.58.tgz", + "integrity": "sha512-LHO+KBBaHGwjy32ibSaMY+ZzjpC4K4I5bPoijICMBL7gXEXfrEUrzssmNP+KigbQEp1dRUnGkry/vUnxOqptLQ==", + "hasInstallScript": true, + "dependencies": { + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.3", + "next-tick": "^1.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "dependencies": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "node_modules/es6-object-assign": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/es6-object-assign/-/es6-object-assign-1.1.0.tgz", + "integrity": "sha1-wsNYJlYkfDnqEHyx5mUrb58kUjw=", + "dev": true + }, + "node_modules/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==", + "dependencies": { + "d": "^1.0.1", + "ext": "^1.1.2" + } + }, + "node_modules/esbuild-android-arm64": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.22.tgz", + "integrity": "sha512-k1Uu4uC4UOFgrnTj2zuj75EswFSEBK+H6lT70/DdS4mTAOfs2ECv2I9ZYvr3w0WL0T4YItzJdK7fPNxcPw6YmQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-darwin-64": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.22.tgz", + "integrity": "sha512-d8Ceuo6Vw6HM3fW218FB6jTY6O3r2WNcTAU0SGsBkXZ3k8SDoRLd3Nrc//EqzdgYnzDNMNtrWegK2Qsss4THhw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-darwin-arm64": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.22.tgz", + "integrity": "sha512-YAt9Tj3SkIUkswuzHxkaNlT9+sg0xvzDvE75LlBo4DI++ogSgSmKNR6B4eUhU5EUUepVXcXdRIdqMq9ppeRqfw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-freebsd-64": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.22.tgz", + "integrity": "sha512-ek1HUv7fkXMy87Qm2G4IRohN+Qux4IcnrDBPZGXNN33KAL0pEJJzdTv0hB/42+DCYWylSrSKxk3KUXfqXOoH4A==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-freebsd-arm64": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.22.tgz", + "integrity": "sha512-zPh9SzjRvr9FwsouNYTqgqFlsMIW07O8mNXulGeQx6O5ApgGUBZBgtzSlBQXkHi18WjrosYfsvp5nzOKiWzkjQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-32": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.22.tgz", + "integrity": "sha512-SnpveoE4nzjb9t2hqCIzzTWBM0RzcCINDMBB67H6OXIuDa4KqFqaIgmTchNA9pJKOVLVIKd5FYxNiJStli21qg==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-64": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.22.tgz", + "integrity": "sha512-Zcl9Wg7gKhOWWNqAjygyqzB+fJa19glgl2JG7GtuxHyL1uEnWlpSMytTLMqtfbmRykIHdab797IOZeKwk5g0zg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-arm": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.22.tgz", + "integrity": "sha512-soPDdbpt/C0XvOOK45p4EFt8HbH5g+0uHs5nUKjHVExfgR7du734kEkXR/mE5zmjrlymk5AA79I0VIvj90WZ4g==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-arm64": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.22.tgz", + "integrity": "sha512-8q/FRBJtV5IHnQChO3LHh/Jf7KLrxJ/RCTGdBvlVZhBde+dk3/qS9fFsUy+rs3dEi49aAsyVitTwlKw1SUFm+A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-mips64le": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.22.tgz", + "integrity": "sha512-SiNDfuRXhGh1JQLLA9JPprBgPVFOsGuQ0yDfSPTNxztmVJd8W2mX++c4FfLpAwxuJe183mLuKf7qKCHQs5ZnBQ==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-ppc64le": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.22.tgz", + "integrity": "sha512-6t/GI9I+3o1EFm2AyN9+TsjdgWCpg2nwniEhjm2qJWtJyJ5VzTXGUU3alCO3evopu8G0hN2Bu1Jhz2YmZD0kng==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-riscv64": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.22.tgz", + "integrity": "sha512-AyJHipZKe88sc+tp5layovquw5cvz45QXw5SaDgAq2M911wLHiCvDtf/07oDx8eweCyzYzG5Y39Ih568amMTCQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-s390x": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.22.tgz", + "integrity": "sha512-Sz1NjZewTIXSblQDZWEFZYjOK6p8tV6hrshYdXZ0NHTjWE+lwxpOpWeElUGtEmiPcMT71FiuA9ODplqzzSxkzw==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-netbsd-64": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.22.tgz", + "integrity": "sha512-TBbCtx+k32xydImsHxvFgsOCuFqCTGIxhzRNbgSL1Z2CKhzxwT92kQMhxort9N/fZM2CkRCPPs5wzQSamtzEHA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-openbsd-64": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.22.tgz", + "integrity": "sha512-vK912As725haT313ANZZZN+0EysEEQXWC/+YE4rQvOQzLuxAQc2tjbzlAFREx3C8+uMuZj/q7E5gyVB7TzpcTA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-sunos-64": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.22.tgz", + "integrity": "sha512-/mbJdXTW7MTcsPhtfDsDyPEOju9EOABvCjeUU2OJ7fWpX/Em/H3WYDa86tzLUbcVg++BScQDzqV/7RYw5XNY0g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-wasm": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.14.22.tgz", + "integrity": "sha512-FOSAM29GN1fWusw0oLMv6JYhoheDIh5+atC72TkJKfIUMID6yISlicoQSd9gsNSFsNBvABvtE2jR4JB1j4FkFw==", + "dev": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-windows-32": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.22.tgz", + "integrity": "sha512-1vRIkuvPTjeSVK3diVrnMLSbkuE36jxA+8zGLUOrT4bb7E/JZvDRhvtbWXWaveUc/7LbhaNFhHNvfPuSw2QOQg==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-windows-64": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.22.tgz", + "integrity": "sha512-AxjIDcOmx17vr31C5hp20HIwz1MymtMjKqX4qL6whPj0dT9lwxPexmLj6G1CpR3vFhui6m75EnBEe4QL82SYqw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-windows-arm64": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.22.tgz", + "integrity": "sha512-5wvQ+39tHmRhNpu2Fx04l7QfeK3mQ9tKzDqqGR8n/4WUxsFxnVLfDRBGirIfk4AfWlxk60kqirlODPoT5LqMUg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + }, + "node_modules/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=", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/eslint": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.11.0.tgz", + "integrity": "sha512-/KRpd9mIRg2raGxHRGwW9ZywYNAClZrHjdueHcrVDuO3a6bj83eoTirCCk0M0yPwOjWYKHwRVRid+xK4F/GHgA==", + "dev": true, + "dependencies": { + "@eslint/eslintrc": "^1.2.1", + "@humanwhocodes/config-array": "^0.9.2", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.1.1", + "eslint-utils": "^3.0.0", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.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": "^6.0.1", + "globals": "^13.6.0", + "ignore": "^5.2.0", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^4.1.0", + "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", + "regexpp": "^3.2.0", + "strip-ansi": "^6.0.1", + "strip-json-comments": "^3.1.0", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-etc": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/eslint-etc/-/eslint-etc-5.1.0.tgz", + "integrity": "sha512-Rmjl01h5smi5cbsFne2xpTuch2xNnwXiX2lbS4HttXUN5FwXKAwG1UEFBVGO1nC091YO/QyVahyfNPJSX2ae+g==", + "dev": true, + "dependencies": { + "@typescript-eslint/experimental-utils": "^5.0.0", + "tsutils": "^3.17.1", + "tsutils-etc": "^1.4.1" + }, + "peerDependencies": { + "eslint": "^8.0.0", + "typescript": "^4.0.0" + } + }, + "node_modules/eslint-plugin-ngrx": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-ngrx/-/eslint-plugin-ngrx-2.0.4.tgz", + "integrity": "sha512-pNLZM3dlqowBMz/SoeYFHWC15NLtwv25q4/usWSPRfn2viDJzhdGRjphIyYG7zzgh3urHvBPhBuRwGE4hn57ng==", + "dev": true, + "dependencies": { + "@angular-devkit/schematics": "^13.0.3", + "@typescript-eslint/experimental-utils": "^5.4.0", + "eslint-etc": "^5.1.0", + "semver": "^7.3.5", + "strip-json-comments": "3.1.1" + }, + "peerDependencies": { + "eslint": ">=8.0.0", + "typescript": ">=4.4.0" + } + }, + "node_modules/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, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/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, + "dependencies": { + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=5" + } + }, + "node_modules/eslint-utils/node_modules/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, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/eslint/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/eslint/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/eslint/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/eslint/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/eslint/node_modules/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, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/eslint/node_modules/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 + }, + "node_modules/eslint/node_modules/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, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/eslint-scope": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", + "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/eslint/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/eslint/node_modules/globals": { + "version": "13.13.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz", + "integrity": "sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/eslint/node_modules/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 + }, + "node_modules/eslint/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/type-fest": { + "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, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/espree": { + "version": "9.3.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.1.tgz", + "integrity": "sha512-bvdyLmJMfwkV3NCRl5ZhJf22zBFo1y8bYh3VYb+bfzqNB4Je68P2sSuXyuFquzWLebHpNd2/d5uv7yoP9ISnGQ==", + "dev": true, + "dependencies": { + "acorn": "^8.7.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/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, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esquery/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/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, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/eth-block-tracker": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/eth-block-tracker/-/eth-block-tracker-4.4.3.tgz", + "integrity": "sha512-A8tG4Z4iNg4mw5tP1Vung9N9IjgMNqpiMoJ/FouSFwNCGHv2X0mmOYwtQOJzki6XN7r7Tyo01S29p7b224I4jw==", + "dependencies": { + "@babel/plugin-transform-runtime": "^7.5.5", + "@babel/runtime": "^7.5.5", + "eth-query": "^2.1.0", + "json-rpc-random-id": "^1.0.1", + "pify": "^3.0.0", + "safe-event-emitter": "^1.0.1" + } + }, + "node_modules/eth-block-tracker/node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "engines": { + "node": ">=4" + } + }, + "node_modules/eth-ens-namehash": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/eth-ens-namehash/-/eth-ens-namehash-2.0.8.tgz", + "integrity": "sha1-IprEbsqG1S4MmR58sq74P/D2i88=", + "dependencies": { + "idna-uts46-hx": "^2.3.1", + "js-sha3": "^0.5.7" + } + }, + "node_modules/eth-ens-namehash/node_modules/js-sha3": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.5.7.tgz", + "integrity": "sha1-DU/9gALVMzqrr0oj7tL2N0yfKOc=" + }, + "node_modules/eth-json-rpc-filters": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/eth-json-rpc-filters/-/eth-json-rpc-filters-4.2.2.tgz", + "integrity": "sha512-DGtqpLU7bBg63wPMWg1sCpkKCf57dJ+hj/k3zF26anXMzkmtSBDExL8IhUu7LUd34f0Zsce3PYNO2vV2GaTzaw==", + "dependencies": { + "@metamask/safe-event-emitter": "^2.0.0", + "async-mutex": "^0.2.6", + "eth-json-rpc-middleware": "^6.0.0", + "eth-query": "^2.1.2", + "json-rpc-engine": "^6.1.0", + "pify": "^5.0.0" + } + }, + "node_modules/eth-json-rpc-filters/node_modules/pify": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz", + "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eth-json-rpc-infura": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/eth-json-rpc-infura/-/eth-json-rpc-infura-5.1.0.tgz", + "integrity": "sha512-THzLye3PHUSGn1EXMhg6WTLW9uim7LQZKeKaeYsS9+wOBcamRiCQVGHa6D2/4P0oS0vSaxsBnU/J6qvn0MPdow==", + "dependencies": { + "eth-json-rpc-middleware": "^6.0.0", + "eth-rpc-errors": "^3.0.0", + "json-rpc-engine": "^5.3.0", + "node-fetch": "^2.6.0" + } + }, + "node_modules/eth-json-rpc-infura/node_modules/json-rpc-engine": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/json-rpc-engine/-/json-rpc-engine-5.4.0.tgz", + "integrity": "sha512-rAffKbPoNDjuRnXkecTjnsE3xLLrb00rEkdgalINhaYVYIxDwWtvYBr9UFbhTvPB1B2qUOLoFd/cV6f4Q7mh7g==", + "dependencies": { + "eth-rpc-errors": "^3.0.0", + "safe-event-emitter": "^1.0.1" + } + }, + "node_modules/eth-json-rpc-middleware": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/eth-json-rpc-middleware/-/eth-json-rpc-middleware-6.0.0.tgz", + "integrity": "sha512-qqBfLU2Uq1Ou15Wox1s+NX05S9OcAEL4JZ04VZox2NS0U+RtCMjSxzXhLFWekdShUPZ+P8ax3zCO2xcPrp6XJQ==", + "dependencies": { + "btoa": "^1.2.1", + "clone": "^2.1.1", + "eth-query": "^2.1.2", + "eth-rpc-errors": "^3.0.0", + "eth-sig-util": "^1.4.2", + "ethereumjs-util": "^5.1.2", + "json-rpc-engine": "^5.3.0", + "json-stable-stringify": "^1.0.1", + "node-fetch": "^2.6.1", + "pify": "^3.0.0", + "safe-event-emitter": "^1.0.1" + } + }, + "node_modules/eth-json-rpc-middleware/node_modules/clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/eth-json-rpc-middleware/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/eth-json-rpc-middleware/node_modules/json-rpc-engine": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/json-rpc-engine/-/json-rpc-engine-5.4.0.tgz", + "integrity": "sha512-rAffKbPoNDjuRnXkecTjnsE3xLLrb00rEkdgalINhaYVYIxDwWtvYBr9UFbhTvPB1B2qUOLoFd/cV6f4Q7mh7g==", + "dependencies": { + "eth-rpc-errors": "^3.0.0", + "safe-event-emitter": "^1.0.1" + } + }, + "node_modules/eth-json-rpc-middleware/node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "engines": { + "node": ">=4" + } + }, + "node_modules/eth-lib": { + "version": "0.1.29", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.1.29.tgz", + "integrity": "sha512-bfttrr3/7gG4E02HoWTDUcDDslN003OlOoBxk9virpAZQ1ja/jDgwkWB8QfJF7ojuEowrqy+lzp9VcJG7/k5bQ==", + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "nano-json-stream-parser": "^0.1.2", + "servify": "^0.1.12", + "ws": "^3.0.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/eth-lib/node_modules/ws": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", + "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", + "dependencies": { + "async-limiter": "~1.0.0", + "safe-buffer": "~5.1.0", + "ultron": "~1.1.0" + } + }, + "node_modules/eth-query": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/eth-query/-/eth-query-2.1.2.tgz", + "integrity": "sha1-1nQdkAAQa1FRDHLbktY2VFam2l4=", + "dependencies": { + "json-rpc-random-id": "^1.0.0", + "xtend": "^4.0.1" + } + }, + "node_modules/eth-rpc-errors": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eth-rpc-errors/-/eth-rpc-errors-3.0.0.tgz", + "integrity": "sha512-iPPNHPrLwUlR9xCSYm7HHQjWBasor3+KZfRvwEWxMz3ca0yqnlBeJrnyphkGIXZ4J7AMAaOLmwy4AWhnxOiLxg==", + "dependencies": { + "fast-safe-stringify": "^2.0.6" + } + }, + "node_modules/eth-sig-util": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/eth-sig-util/-/eth-sig-util-1.4.2.tgz", + "integrity": "sha1-jZWCAsftuq6Dlwf7pvCf8ydgYhA=", + "deprecated": "Deprecated in favor of '@metamask/eth-sig-util'", + "dependencies": { + "ethereumjs-abi": "git+https://github.com/ethereumjs/ethereumjs-abi.git", + "ethereumjs-util": "^5.1.1" + } + }, + "node_modules/eth-sig-util/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ethereum-bloom-filters": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/ethereum-bloom-filters/-/ethereum-bloom-filters-1.0.10.tgz", + "integrity": "sha512-rxJ5OFN3RwjQxDcFP2Z5+Q9ho4eIdEmSc2ht0fCu8Se9nbXjZ7/031uXoUYJ87KHCOdVeiUuwSnoS7hmYAGVHA==", + "dependencies": { + "js-sha3": "^0.8.0" + } + }, + "node_modules/ethereum-common": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/ethereum-common/-/ethereum-common-0.2.0.tgz", + "integrity": "sha512-XOnAR/3rntJgbCdGhqdaLIxDLWKLmsZOGhHdBKadEr6gEnJLH52k93Ou+TUdFaPN3hJc3isBZBal3U/XZ15abA==" + }, + "node_modules/ethereum-cryptography": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", + "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", + "dependencies": { + "@types/pbkdf2": "^3.0.0", + "@types/secp256k1": "^4.0.1", + "blakejs": "^1.1.0", + "browserify-aes": "^1.2.0", + "bs58check": "^2.1.2", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "hash.js": "^1.1.7", + "keccak": "^3.0.0", + "pbkdf2": "^3.0.17", + "randombytes": "^2.1.0", + "safe-buffer": "^5.1.2", + "scrypt-js": "^3.0.0", + "secp256k1": "^4.0.1", + "setimmediate": "^1.0.5" + } + }, + "node_modules/ethereumjs-abi": { + "version": "0.6.8", + "resolved": "git+ssh://git@github.com/ethereumjs/ethereumjs-abi.git#ee3994657fa7a427238e6ba92a84d0b529bbcde0", + "license": "MIT", + "dependencies": { + "bn.js": "^4.11.8", + "ethereumjs-util": "^6.0.0" + } + }, + "node_modules/ethereumjs-abi/node_modules/ethereumjs-util": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-6.2.1.tgz", + "integrity": "sha512-W2Ktez4L01Vexijrm5EB6w7dg4n/TgpoYU4avuT5T3Vmnw/eCRtiBrJfQYS/DCSvDIOLn2k57GcHdeBcgVxAqw==", + "dependencies": { + "@types/bn.js": "^4.11.3", + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "0.1.6", + "rlp": "^2.2.3" + } + }, + "node_modules/ethereumjs-account": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/ethereumjs-account/-/ethereumjs-account-2.0.5.tgz", + "integrity": "sha512-bgDojnXGjhMwo6eXQC0bY6UK2liSFUSMwwylOmQvZbSl/D7NXQ3+vrGO46ZeOgjGfxXmgIeVNDIiHw7fNZM4VA==", + "dependencies": { + "ethereumjs-util": "^5.0.0", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ethereumjs-account/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ethereumjs-block": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/ethereumjs-block/-/ethereumjs-block-1.7.1.tgz", + "integrity": "sha512-B+sSdtqm78fmKkBq78/QLKJbu/4Ts4P2KFISdgcuZUPDm9x+N7qgBPIIFUGbaakQh8bzuquiRVbdmvPKqbILRg==", + "deprecated": "New package name format for new versions: @ethereumjs/block. Please update.", + "dependencies": { + "async": "^2.0.1", + "ethereum-common": "0.2.0", + "ethereumjs-tx": "^1.2.2", + "ethereumjs-util": "^5.0.0", + "merkle-patricia-tree": "^2.1.2" + } + }, + "node_modules/ethereumjs-block/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ethereumjs-common": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/ethereumjs-common/-/ethereumjs-common-1.5.2.tgz", + "integrity": "sha512-hTfZjwGX52GS2jcVO6E2sx4YuFnf0Fhp5ylo4pEPhEffNln7vS59Hr5sLnp3/QCazFLluuBZ+FZ6J5HTp0EqCA==", + "deprecated": "New package name format for new versions: @ethereumjs/common. Please update." + }, + "node_modules/ethereumjs-tx": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/ethereumjs-tx/-/ethereumjs-tx-1.3.7.tgz", + "integrity": "sha512-wvLMxzt1RPhAQ9Yi3/HKZTn0FZYpnsmQdbKYfUUpi4j1SEIcbkd9tndVjcPrufY3V7j2IebOpC00Zp2P/Ay2kA==", + "deprecated": "New package name format for new versions: @ethereumjs/tx. Please update.", + "dependencies": { + "ethereum-common": "^0.0.18", + "ethereumjs-util": "^5.0.0" + } + }, + "node_modules/ethereumjs-tx/node_modules/ethereum-common": { + "version": "0.0.18", + "resolved": "https://registry.npmjs.org/ethereum-common/-/ethereum-common-0.0.18.tgz", + "integrity": "sha1-L9w1dvIykDNYl26znaeDIT/5Uj8=" + }, + "node_modules/ethereumjs-tx/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ethereumjs-util": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.4.tgz", + "integrity": "sha512-p6KmuPCX4mZIqsQzXfmSx9Y0l2hqf+VkAiwSisW3UKUFdk8ZkAt+AYaor83z2nSi6CU2zSsXMlD80hAbNEGM0A==", + "dependencies": { + "@types/bn.js": "^5.1.0", + "bn.js": "^5.1.2", + "create-hash": "^1.1.2", + "ethereum-cryptography": "^0.1.3", + "rlp": "^2.2.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/ethereumjs-util/node_modules/@types/bn.js": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.0.tgz", + "integrity": "sha512-QSSVYj7pYFN49kW77o2s9xTCwZ8F2xLbjLLSEVh8D2F4JUhZtPAGOFLTD+ffqksBx/u4cE/KImFjyhqCjn/LIA==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/ethereumjs-util/node_modules/bn.js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz", + "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==" + }, + "node_modules/ethereumjs-vm": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/ethereumjs-vm/-/ethereumjs-vm-2.6.0.tgz", + "integrity": "sha512-r/XIUik/ynGbxS3y+mvGnbOKnuLo40V5Mj1J25+HEO63aWYREIqvWeRO/hnROlMBE5WoniQmPmhiaN0ctiHaXw==", + "deprecated": "New package name format for new versions: @ethereumjs/vm. Please update.", + "dependencies": { + "async": "^2.1.2", + "async-eventemitter": "^0.2.2", + "ethereumjs-account": "^2.0.3", + "ethereumjs-block": "~2.2.0", + "ethereumjs-common": "^1.1.0", + "ethereumjs-util": "^6.0.0", + "fake-merkle-patricia-tree": "^1.0.1", + "functional-red-black-tree": "^1.0.1", + "merkle-patricia-tree": "^2.3.2", + "rustbn.js": "~0.2.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ethereumjs-vm/node_modules/ethereumjs-block": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/ethereumjs-block/-/ethereumjs-block-2.2.2.tgz", + "integrity": "sha512-2p49ifhek3h2zeg/+da6XpdFR3GlqY3BIEiqxGF8j9aSRIgkb7M1Ky+yULBKJOu8PAZxfhsYA+HxUk2aCQp3vg==", + "deprecated": "New package name format for new versions: @ethereumjs/block. Please update.", + "dependencies": { + "async": "^2.0.1", + "ethereumjs-common": "^1.5.0", + "ethereumjs-tx": "^2.1.1", + "ethereumjs-util": "^5.0.0", + "merkle-patricia-tree": "^2.1.2" + } + }, + "node_modules/ethereumjs-vm/node_modules/ethereumjs-block/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ethereumjs-vm/node_modules/ethereumjs-tx": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ethereumjs-tx/-/ethereumjs-tx-2.1.2.tgz", + "integrity": "sha512-zZEK1onCeiORb0wyCXUvg94Ve5It/K6GD1K+26KfFKodiBiS6d9lfCXlUKGBBdQ+bv7Day+JK0tj1K+BeNFRAw==", + "deprecated": "New package name format for new versions: @ethereumjs/tx. Please update.", + "dependencies": { + "ethereumjs-common": "^1.5.0", + "ethereumjs-util": "^6.0.0" + } + }, + "node_modules/ethereumjs-vm/node_modules/ethereumjs-util": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-6.2.1.tgz", + "integrity": "sha512-W2Ktez4L01Vexijrm5EB6w7dg4n/TgpoYU4avuT5T3Vmnw/eCRtiBrJfQYS/DCSvDIOLn2k57GcHdeBcgVxAqw==", + "dependencies": { + "@types/bn.js": "^4.11.3", + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "0.1.6", + "rlp": "^2.2.3" + } + }, + "node_modules/ethjs-unit": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/ethjs-unit/-/ethjs-unit-0.1.6.tgz", + "integrity": "sha1-xmWSHkduh7ziqdWIpv4EBbLEFpk=", + "dependencies": { + "bn.js": "4.11.6", + "number-to-bn": "1.7.0" + }, + "engines": { + "node": ">=6.5.0", + "npm": ">=3" + } + }, + "node_modules/ethjs-unit/node_modules/bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=" + }, + "node_modules/ethjs-util": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/ethjs-util/-/ethjs-util-0.1.6.tgz", + "integrity": "sha512-CUnVOQq7gSpDHZVVrQW8ExxUETWrnrvXYvYz55wOU8Uj4VCgw56XC2B/fVqQN+f7gmrnRHSLVnFAwsCuNwji8w==", + "dependencies": { + "is-hex-prefixed": "1.0.0", + "strip-hex-prefix": "1.0.0" + }, + "engines": { + "node": ">=6.5.0", + "npm": ">=3" + } + }, + "node_modules/eventemitter-asyncresource": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/eventemitter-asyncresource/-/eventemitter-asyncresource-1.0.0.tgz", + "integrity": "sha512-39F7TBIV0G7gTelxwbEqnwhp90eqCPON1k0NwNfwhgKn4Co4ybUbj2pECcXT0B3ztRKZ7Pw1JujUUgmQJHcVAQ==", + "dev": true + }, + "node_modules/eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==" + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/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==", + "dependencies": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/exit-on-epipe": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/exit-on-epipe/-/exit-on-epipe-1.0.1.tgz", + "integrity": "sha512-h2z5mrROTxce56S+pnvAV890uu7ls7f1kEvVGJbw1OlFH3/mlJ5bkXu0KRyW94v37zzHPiUd55iLn3DA7TjWpw==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/express": { + "version": "4.17.3", + "resolved": "https://registry.npmjs.org/express/-/express-4.17.3.tgz", + "integrity": "sha512-yuSQpz5I+Ch7gFrPCk4/c+dIBKlQUxtgwqzph132bsT6qhuzss6I8cLJQz7B3rFblzd6wtcI0ZbGltH/C4LjUg==", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.19.2", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.4.2", + "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.7", + "qs": "6.9.7", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.17.2", + "serve-static": "1.14.2", + "setprototypeof": "1.2.0", + "statuses": "~1.5.0", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/express/node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/express/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ext": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.6.0.tgz", + "integrity": "sha512-sdBImtzkq2HpkdRLtlLWDa6w4DX22ijZLKx8BMPUuKe1c5lbN6xwQDQCxSfxBQnHZ13ls/FH0MQZx/q/gr6FQg==", + "dependencies": { + "type": "^2.5.0" + } + }, + "node_modules/ext/node_modules/type": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.6.0.tgz", + "integrity": "sha512-eiDBDOmkih5pMbo9OqsqPRGMljLodLcwd5XD5JbtNB0o89xZAwynY9EdCDsJU7LtcVCClu9DvM7/0Ep1hYX3EQ==" + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "node_modules/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, + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "engines": [ + "node >=0.6.0" + ] + }, + "node_modules/fake-merkle-patricia-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/fake-merkle-patricia-tree/-/fake-merkle-patricia-tree-1.0.1.tgz", + "integrity": "sha1-S4w6z7Ugr635hgsfFM2M40As3dM=", + "dependencies": { + "checkpoint-store": "^1.1.0" + } + }, + "node_modules/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==" + }, + "node_modules/fast-glob": { + "version": "3.2.11", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz", + "integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/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==" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "node_modules/fast-safe-stringify": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", + "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==" + }, + "node_modules/fastq": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", + "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/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, + "dependencies": { + "websocket-driver": ">=0.5.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/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, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/filelist": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.2.tgz", + "integrity": "sha512-z7O0IS8Plc39rTCq6i6iHxk43duYOn8uFJiWSewIq0Bww1RNybVHSCjahmcC87ZqAm4OTvFzlzeGu3XAzG1ctQ==", + "dev": true, + "dependencies": { + "minimatch": "^3.0.4" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "dependencies": { + "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" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "dev": true, + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" + } + }, + "node_modules/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, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dev": true, + "dependencies": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.5.tgz", + "integrity": "sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==", + "dev": true + }, + "node_modules/follow-redirects": { + "version": "1.14.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz", + "integrity": "sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/foreach": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", + "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=" + }, + "node_modules/forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "engines": { + "node": "*" + } + }, + "node_modules/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==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fraction.js": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", + "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", + "dev": true, + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://www.patreon.com/infusion" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs-extra": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.1.tgz", + "integrity": "sha512-NbdoVMZso2Lsrn/QwLXOy6rm0ufY2zEOKCDzJR/0kBsb0E6qed0P3iYK+Ath3BfvXEeu4JhEtXLgILx5psUfag==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/fs-monkey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", + "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==", + "dev": true + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "node_modules/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": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=" + }, + "node_modules/gauge": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.3.tgz", + "integrity": "sha512-ICw1DhAwMtb22rYFwEHgJcx1JCwJGv3x6G0OQUq56Nge+H4Q8JEwr8iveS0XFlsUNSI67F5ffMGK25bK4Pmskw==", + "dev": true, + "dependencies": { + "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" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16" + } + }, + "node_modules/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==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/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==", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dependencies": { + "assert-plus": "^1.0.0" + } + }, + "node_modules/glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/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, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/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 + }, + "node_modules/global": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz", + "integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==", + "dependencies": { + "min-document": "^2.19.0", + "process": "^0.11.10" + } + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/globby": { + "version": "12.2.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-12.2.0.tgz", + "integrity": "sha512-wiSuFQLZ+urS9x2gGPl1H5drc5twabmm4m2gTR27XDFyjUHJUNsS8o/2aKyIF6IoBaR630atdher0XJ5g6OMmA==", + "dev": true, + "dependencies": { + "array-union": "^3.0.1", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.7", + "ignore": "^5.1.9", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/got": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "dependencies": { + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/got/node_modules/get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.9", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", + "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + }, + "node_modules/handle-thing": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", + "dev": true + }, + "node_modules/har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "engines": { + "node": ">=4" + } + }, + "node_modules/har-validator": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "deprecated": "this library is no longer supported", + "dependencies": { + "ajv": "^6.12.3", + "har-schema": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/har-validator/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/har-validator/node_modules/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==" + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-bigints": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", + "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/has-symbol-support-x": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz", + "integrity": "sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw==", + "engines": { + "node": "*" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-to-string-tag-x": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz", + "integrity": "sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw==", + "dependencies": { + "has-symbol-support-x": "^1.4.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", + "dev": true + }, + "node_modules/hash-base": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/hash-base/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dependencies": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "node_modules/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, + "dependencies": { + "@assemblyscript/loader": "^0.10.1", + "base64-js": "^1.2.0", + "pako": "^1.0.3" + } + }, + "node_modules/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 + }, + "node_modules/hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "dependencies": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "dependencies": { + "react-is": "^16.7.0" + } + }, + "node_modules/hoist-non-react-statics/node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + }, + "node_modules/hosted-git-info": { + "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, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + } + }, + "node_modules/hpack.js/node_modules/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==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/hpack.js/node_modules/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, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/html-entities": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.2.tgz", + "integrity": "sha512-c3Ab/url5ksaT0WyleslpBEthOzWhrjQbg75y7XUsfSzi3Dgzt0l8w5e7DylRn15MTlMMD58dTfzddNS2kcAjQ==", + "dev": true + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "node_modules/htmlparser2": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", + "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", + "dev": true, + "dependencies": { + "domelementtype": "^1.3.1", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^3.1.1" + } + }, + "node_modules/htmlparser2/node_modules/dom-serializer": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", + "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", + "dev": true, + "dependencies": { + "domelementtype": "^2.0.1", + "entities": "^2.0.0" + } + }, + "node_modules/htmlparser2/node_modules/dom-serializer/node_modules/domelementtype": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", + "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/htmlparser2/node_modules/dom-serializer/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/htmlparser2/node_modules/domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", + "dev": true + }, + "node_modules/htmlparser2/node_modules/domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "dev": true, + "dependencies": { + "domelementtype": "1" + } + }, + "node_modules/htmlparser2/node_modules/domutils": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", + "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", + "dev": true, + "dependencies": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "node_modules/htmlparser2/node_modules/entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", + "dev": true + }, + "node_modules/http-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==" + }, + "node_modules/http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=", + "dev": true + }, + "node_modules/http-errors": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", + "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/http-https": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/http-https/-/http-https-1.0.0.tgz", + "integrity": "sha1-L5CN1fHbQGjAWM1ubUzjkskTOJs=" + }, + "node_modules/http-parser-js": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.6.tgz", + "integrity": "sha512-vDlkRPDJn93swjcjqMSaGSPABbIarsr1TLAui/gLDXzV5VsJNdXNzMYDyNBLQkjWQCJ1uizu8T2oDMhmGt0PRA==", + "dev": true + }, + "node_modules/http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "dev": true, + "dependencies": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "dev": true, + "dependencies": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/http-proxy-middleware": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.4.tgz", + "integrity": "sha512-m/4FxX17SUvz4lJ5WPXOHDUuCwIqXLfLHs1s0uZ3oYjhoXlx9csYxaOa0ElDEJ+h8Q4iJ1s+lTMbiCa4EXIJqg==", + "dev": true, + "dependencies": { + "@types/http-proxy": "^1.17.8", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "@types/express": "^4.17.13" + }, + "peerDependenciesMeta": { + "@types/express": { + "optional": true + } + } + }, + "node_modules/http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dependencies": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + }, + "engines": { + "node": ">=0.8", + "npm": ">=1.3.7" + } + }, + "node_modules/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 + }, + "node_modules/https-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", + "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", + "dev": true, + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/humanize-ms": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", + "integrity": "sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0=", + "dev": true, + "dependencies": { + "ms": "^2.0.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/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, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/idna-uts46-hx": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/idna-uts46-hx/-/idna-uts46-hx-2.3.1.tgz", + "integrity": "sha512-PWoF9Keq6laYdIRwwCdhTPl60xRqAloYNMQLiyUnG42VjT53oW07BXIRM+NK7eQjzXjAk2gUvX9caRxlnF9TAA==", + "dependencies": { + "punycode": "2.1.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/idna-uts46-hx/node_modules/punycode": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.0.tgz", + "integrity": "sha1-X4Y+3Im5bbCQdLrXlHvwkFbKTn0=", + "engines": { + "node": ">=6" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ignore": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", + "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/ignore-walk": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-4.0.1.tgz", + "integrity": "sha512-rzDQLaW4jQbh2YrOFlJdCtX8qgJTehFRYiUB2r1osqTeDzV/3+Jh8fz1oAPzUThf3iku8Ds4IDqawI5d8mUiQw==", + "dev": true, + "dependencies": { + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/image-size": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", + "integrity": "sha1-Cd/Uq50g4p6xw+gLiZA3jfnjy5w=", + "dev": true, + "optional": true, + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/immediate": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.3.0.tgz", + "integrity": "sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q==" + }, + "node_modules/immutable": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.0.0.tgz", + "integrity": "sha512-zIE9hX70qew5qTUjSS7wi1iwj/l7+m54KWU247nhM3v806UdGj1yDndXj+IOYxxtW9zyLI+xqFNZjTuDaLUqFw==", + "dev": true + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-fresh/node_modules/resolve-from": { + "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, + "engines": { + "node": ">=4" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/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 + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ini": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", + "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/inquirer": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.0.tgz", + "integrity": "sha512-0crLweprevJ02tTuA6ThpoAERAGyVILC4sS74uib58Xf/zSr1/ZWtmm7D5CI+bSQEaA04f0K7idaHpQbSWgiVQ==", + "dev": true, + "dependencies": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.1", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.21", + "mute-stream": "0.0.8", + "ora": "^5.4.1", + "run-async": "^2.4.0", + "rxjs": "^7.2.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/inquirer/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/inquirer/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/inquirer/node_modules/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, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/inquirer/node_modules/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 + }, + "node_modules/inquirer/node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/inquirer/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/internal-slot": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", + "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", + "dependencies": { + "get-intrinsic": "^1.1.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/ip": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", + "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", + "dev": true + }, + "node_modules/ipaddr.js": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", + "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-callable": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", + "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", + "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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, + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fn": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fn/-/is-fn-1.0.0.tgz", + "integrity": "sha1-lUPV3nvPWwiiLsiiC65uKG1RDYw=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-function": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-function/-/is-function-1.0.2.tgz", + "integrity": "sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==" + }, + "node_modules/is-generator-function": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", + "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-hex-prefixed": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz", + "integrity": "sha1-fY035q135dEnFIkTxXPggtd39VQ=", + "engines": { + "node": ">=6.5.0", + "npm": ">=3" + } + }, + "node_modules/is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha1-PZh3iZ5qU+/AFgUEzeFfgubwYdU=", + "dev": true + }, + "node_modules/is-nan": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz", + "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.6.tgz", + "integrity": "sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-object": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz", + "integrity": "sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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, + "engines": { + "node": ">=6" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-plain-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-retry-allowed": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz", + "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz", + "integrity": "sha512-IU0NmyknYZN0rChcKhRO1X8LYz5Isj/Fsqh8NJOSf+N/hCOTwy29F32Ik7a+QszE63IdvmwdTPDd6cZ5pg4cwA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.8.tgz", + "integrity": "sha512-HqH41TNZq2fgtGT8WHVFVJhBVGuY3AnP3Q36K8JKXUxSxRgk/d+7NjmwG2vo2mYmXK8UYZKu0qH8bVP5gEisjA==", + "dependencies": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "es-abstract": "^1.18.5", + "foreach": "^2.0.5", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" + }, + "node_modules/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, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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 + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "node_modules/isbinaryfile": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.8.tgz", + "integrity": "sha512-53h6XFniq77YdW+spoRrebh0mnmTxRPTlcuIArO57lmMdq4uBKFKaeTjnb92oYWrSn/LVL+LT+Hap2tFQj8V+w==", + "dev": true, + "engines": { + "node": ">= 8.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/gjtorikian/" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", + "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.1.0.tgz", + "integrity": "sha512-czwUz525rkOFDJxfKK6mYfIs9zBKILyrZQxjz3ABhjQXhbhFsSbo1HW/BFcsDnfJYJWA6thRR5/TUY2qs5W99Q==", + "dev": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^3.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report/node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-source-maps/node_modules/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, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.4.tgz", + "integrity": "sha512-r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw==", + "dev": true, + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/isurl": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz", + "integrity": "sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w==", + "dependencies": { + "has-to-string-tag-x": "^1.2.0", + "is-object": "^1.0.1" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/jake": { + "version": "10.8.2", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.8.2.tgz", + "integrity": "sha512-eLpKyrfG3mzvGE2Du8VoPbeSkRry093+tyNjdYaBbJS9v17knImYGNXQCUV0gLxQtF82m3E8iRb/wdSQZLoq7A==", + "dev": true, + "dependencies": { + "async": "0.9.x", + "chalk": "^2.4.2", + "filelist": "^1.0.1", + "minimatch": "^3.0.4" + }, + "bin": { + "jake": "bin/cli.js" + }, + "engines": { + "node": "*" + } + }, + "node_modules/jake/node_modules/async": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz", + "integrity": "sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=", + "dev": true + }, + "node_modules/jasmine-core": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-4.0.1.tgz", + "integrity": "sha512-w+JDABxQCkxbGGxg+a2hUVZyqUS2JKngvIyLGu/xiw2ZwgsoSB0iiecLQsQORSeaKQ6iGrCyWG86RfNDuoA7Lg==", + "dev": true + }, + "node_modules/jest-worker": { + "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, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-worker/node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/js-sha3": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", + "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "node_modules/js-yaml": { + "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, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=" + }, + "node_modules/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 + }, + "node_modules/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 + }, + "node_modules/json-rpc-engine": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/json-rpc-engine/-/json-rpc-engine-6.1.0.tgz", + "integrity": "sha512-NEdLrtrq1jUZyfjkr9OCz9EzCNhnRyWtt1PAnvnhwy6e8XETS0Dtc+ZNCO2gvuAoKsIn2+vCSowXTYE4CkgnAQ==", + "dependencies": { + "@metamask/safe-event-emitter": "^2.0.0", + "eth-rpc-errors": "^4.0.2" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/json-rpc-engine/node_modules/eth-rpc-errors": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/eth-rpc-errors/-/eth-rpc-errors-4.0.3.tgz", + "integrity": "sha512-Z3ymjopaoft7JDoxZcEb3pwdGh7yiYMhOwm2doUt6ASXlMavpNlK6Cre0+IMl2VSGyEU9rkiperQhp5iRxn5Pg==", + "dependencies": { + "fast-safe-stringify": "^2.0.6" + } + }, + "node_modules/json-rpc-random-id": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-rpc-random-id/-/json-rpc-random-id-1.0.1.tgz", + "integrity": "sha1-uknZat7RRE27jaPSA3SKy7zeyMg=" + }, + "node_modules/json-schema": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==" + }, + "node_modules/json-schema-traverse": { + "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 + }, + "node_modules/json-stable-stringify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", + "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", + "dependencies": { + "jsonify": "~0.0.0" + } + }, + "node_modules/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": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "node_modules/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=" + }, + "node_modules/json5": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", + "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/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 + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jsonify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", + "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", + "engines": { + "node": "*" + } + }, + "node_modules/jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", + "dev": true, + "engines": [ + "node >= 0.2.0" + ] + }, + "node_modules/jsprim": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", + "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", + "dependencies": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.4.0", + "verror": "1.10.0" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/junjo": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/junjo/-/junjo-0.2.8.tgz", + "integrity": "sha1-irILjLUbd+X8Oo1Bh3TXl1tTH9g=", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/karma": { + "version": "6.3.17", + "resolved": "https://registry.npmjs.org/karma/-/karma-6.3.17.tgz", + "integrity": "sha512-2TfjHwrRExC8yHoWlPBULyaLwAFmXmxQrcuFImt/JsAsSZu1uOWTZ1ZsWjqQtWpHLiatJOHL5jFjXSJIgCd01g==", + "dev": true, + "dependencies": { + "@colors/colors": "1.5.0", + "body-parser": "^1.19.0", + "braces": "^3.0.2", + "chokidar": "^3.5.1", + "connect": "^3.7.0", + "di": "^0.0.1", + "dom-serialize": "^2.2.1", + "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": "^4.2.0", + "source-map": "^0.6.1", + "tmp": "^0.2.1", + "ua-parser-js": "^0.7.30", + "yargs": "^16.1.1" + }, + "bin": { + "karma": "bin/karma" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/karma-chrome-launcher": { + "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, + "dependencies": { + "which": "^1.2.1" + } + }, + "node_modules/karma-chrome-launcher/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/karma-coverage": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/karma-coverage/-/karma-coverage-2.1.1.tgz", + "integrity": "sha512-oxeOSBVK/jdZsiX03LhHQkO4eISSQb5GbHi6Nsw3Mw7G4u6yUgacBAftnO7q+emPBLMsrNbz1pGIrj+Jb3z17A==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.2.0", + "istanbul-lib-instrument": "^4.0.3", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.1", + "istanbul-reports": "^3.0.5", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/karma-coverage/node_modules/istanbul-lib-instrument": { + "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, + "dependencies": { + "@babel/core": "^7.7.5", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.0.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/karma-coverage/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/karma-jasmine": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-4.0.1.tgz", + "integrity": "sha512-h8XDAhTiZjJKzfkoO1laMH+zfNlra+dEQHUAjpn5JV1zCPtOIVWGQjLBrqhnzQa/hrU2XrZwSyBa6XjEBzfXzw==", + "dev": true, + "dependencies": { + "jasmine-core": "^3.6.0" + }, + "engines": { + "node": ">= 10" + }, + "peerDependencies": { + "karma": "*" + } + }, + "node_modules/karma-jasmine-html-reporter": { + "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, + "peerDependencies": { + "jasmine-core": ">=3.8", + "karma": ">=0.9", + "karma-jasmine": ">=1.1" + } + }, + "node_modules/karma-jasmine/node_modules/jasmine-core": { + "version": "3.99.1", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-3.99.1.tgz", + "integrity": "sha512-Hu1dmuoGcZ7AfyynN3LsfruwMbxMALMka+YtZeGoLuDEySVmVAPaonkNoBRIw/ectu8b9tVQCJNgp4a4knp+tg==", + "dev": true + }, + "node_modules/karma-source-map-support": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/karma-source-map-support/-/karma-source-map-support-1.4.0.tgz", + "integrity": "sha512-RsBECncGO17KAoJCYXjv+ckIz+Ii9NCi+9enk+rq6XC81ezYkb4/RHE6CTXdA7IOJqoF3wcaLfVG0CPmE5ca6A==", + "dev": true, + "dependencies": { + "source-map-support": "^0.5.5" + } + }, + "node_modules/karma/node_modules/mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/karma/node_modules/mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dev": true, + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/karma/node_modules/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, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/karma/node_modules/tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "dev": true, + "dependencies": { + "rimraf": "^3.0.0" + }, + "engines": { + "node": ">=8.17.0" + } + }, + "node_modules/karma/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/karma/node_modules/yargs-parser": { + "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, + "engines": { + "node": ">=10" + } + }, + "node_modules/keccak": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/keccak/-/keccak-3.0.2.tgz", + "integrity": "sha512-PyKKjkH53wDMLGrvmRGSNWgmSxZOUqbnXwKL9tmgbFYA1iAYqW21kfR7mZXV0MlESiefxQQE9X9fTa3X+2MPDQ==", + "hasInstallScript": true, + "dependencies": { + "node-addon-api": "^2.0.0", + "node-gyp-build": "^4.2.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/keccak/node_modules/node-addon-api": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.2.tgz", + "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==" + }, + "node_modules/keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "dependencies": { + "json-buffer": "3.0.0" + } + }, + "node_modules/keyvaluestorage-interface": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/keyvaluestorage-interface/-/keyvaluestorage-interface-1.0.0.tgz", + "integrity": "sha512-8t6Q3TclQ4uZynJY9IGr2+SsIGwK9JHcO6ootkHCGA0CrQCRy+VkouYNO2xicET6b9al7QKzpebNow+gkpCL8g==" + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/klona": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.5.tgz", + "integrity": "sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/less": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/less/-/less-4.1.2.tgz", + "integrity": "sha512-EoQp/Et7OSOVu0aJknJOtlXZsnr8XE8KwuzTHOLeVSEx8pVWUICc8Q0VYRHgzyjX78nMEyC/oztWFbgyhtNfDA==", + "dev": true, + "dependencies": { + "copy-anything": "^2.0.1", + "parse-node-version": "^1.0.1", + "tslib": "^2.3.0" + }, + "bin": { + "lessc": "bin/lessc" + }, + "engines": { + "node": ">=6" + }, + "optionalDependencies": { + "errno": "^0.1.1", + "graceful-fs": "^4.1.2", + "image-size": "~0.5.0", + "make-dir": "^2.1.0", + "mime": "^1.4.1", + "needle": "^2.5.2", + "source-map": "~0.6.0" + } + }, + "node_modules/less-loader": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-10.2.0.tgz", + "integrity": "sha512-AV5KHWvCezW27GT90WATaDnfXBv99llDbtaj4bshq6DvAihMdNjaPDcUMa6EXKLRF+P2opFenJp89BXg91XLYg==", + "dev": true, + "dependencies": { + "klona": "^2.0.4" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "less": "^3.5.0 || ^4.0.0", + "webpack": "^5.0.0" + } + }, + "node_modules/less/node_modules/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, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/less/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "optional": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/less/node_modules/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, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/level-codec": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-7.0.1.tgz", + "integrity": "sha512-Ua/R9B9r3RasXdRmOtd+t9TCOEIIlts+TN/7XTT2unhDaL6sJn83S3rUyljbr6lVtw49N3/yA0HHjpV6Kzb2aQ==" + }, + "node_modules/level-errors": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-1.0.5.tgz", + "integrity": "sha512-/cLUpQduF6bNrWuAC4pwtUKA5t669pCsCi2XbmojG2tFeOr9j6ShtdDCtFFQO1DRt+EVZhx9gPzP9G2bUaG4ig==", + "dependencies": { + "errno": "~0.1.1" + } + }, + "node_modules/level-iterator-stream": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-1.3.1.tgz", + "integrity": "sha1-5Dt4sagUPm+pek9IXrjqUwNS8u0=", + "dependencies": { + "inherits": "^2.0.1", + "level-errors": "^1.0.3", + "readable-stream": "^1.0.33", + "xtend": "^4.0.0" + } + }, + "node_modules/level-iterator-stream/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + }, + "node_modules/level-iterator-stream/node_modules/readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/level-iterator-stream/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + }, + "node_modules/level-ws": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/level-ws/-/level-ws-0.0.0.tgz", + "integrity": "sha1-Ny5RIXeSSgBCSwtDrvK7QkltIos=", + "dependencies": { + "readable-stream": "~1.0.15", + "xtend": "~2.1.1" + } + }, + "node_modules/level-ws/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + }, + "node_modules/level-ws/node_modules/object-keys": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz", + "integrity": "sha1-KKaq50KN0sOpLz2V8hM13SBOAzY=" + }, + "node_modules/level-ws/node_modules/readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/level-ws/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + }, + "node_modules/level-ws/node_modules/xtend": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz", + "integrity": "sha1-bv7MKk2tjmlixJAbM3znuoe10os=", + "dependencies": { + "object-keys": "~0.4.0" + }, + "engines": { + "node": ">=0.4" + } + }, + "node_modules/levelup": { + "version": "1.3.9", + "resolved": "https://registry.npmjs.org/levelup/-/levelup-1.3.9.tgz", + "integrity": "sha512-VVGHfKIlmw8w1XqpGOAGwq6sZm2WwWLmlDcULkKWQXEA5EopA8OBNJ2Ck2v6bdk8HeEZSbCSEgzXadyQFm76sQ==", + "dependencies": { + "deferred-leveldown": "~1.2.1", + "level-codec": "~7.0.0", + "level-errors": "~1.0.3", + "level-iterator-stream": "~1.3.0", + "prr": "~1.0.1", + "semver": "~5.4.1", + "xtend": "~4.0.0" + } + }, + "node_modules/levelup/node_modules/semver": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", + "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/levn": { + "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, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/license-webpack-plugin": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-4.0.2.tgz", + "integrity": "sha512-771TFWFD70G1wLTC4oU2Cw4qvtmNrIw+wRvBtn+okgHl7slJVi7zfNcdmqDL72BojM30VNJ2UHylr1o77U37Jw==", + "dev": true, + "dependencies": { + "webpack-sources": "^3.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + }, + "webpack-sources": { + "optional": true + } + } + }, + "node_modules/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 + }, + "node_modules/loader-runner": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.2.0.tgz", + "integrity": "sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw==", + "dev": true, + "engines": { + "node": ">=6.11.5" + } + }, + "node_modules/loader-utils": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.0.tgz", + "integrity": "sha512-HVl9ZqccQihZ7JM85dco1MvO9G+ONvxoGa9rkhzFsneGLKSUg1gJf9bWzhRhcvm2qChhWpebQhP44qxjKIUCaQ==", + "dev": true, + "engines": { + "node": ">= 12.13.0" + } + }, + "node_modules/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, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/lodash.assignin": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", + "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=", + "dev": true + }, + "node_modules/lodash.bind": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz", + "integrity": "sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU=", + "dev": true + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=" + }, + "node_modules/lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=", + "dev": true + }, + "node_modules/lodash.filter": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz", + "integrity": "sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4=", + "dev": true + }, + "node_modules/lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=", + "dev": true + }, + "node_modules/lodash.foreach": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", + "integrity": "sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=", + "dev": true + }, + "node_modules/lodash.map": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz", + "integrity": "sha1-dx7Hg540c9nEzeKLGTlMNWL09tM=", + "dev": true + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=" + }, + "node_modules/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 + }, + "node_modules/lodash.pick": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", + "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=", + "dev": true + }, + "node_modules/lodash.reduce": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz", + "integrity": "sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs=", + "dev": true + }, + "node_modules/lodash.reject": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reject/-/lodash.reject-4.6.0.tgz", + "integrity": "sha1-gNZJLcFHCGS79YNTO2UfQqn1JBU=", + "dev": true + }, + "node_modules/lodash.some": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz", + "integrity": "sha1-G7nzFO9ri63tE7VJFpsqlF62jk0=", + "dev": true + }, + "node_modules/lodash.throttle": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", + "integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=" + }, + "node_modules/log-symbols": { + "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, + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-symbols/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/log-symbols/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/log-symbols/node_modules/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, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/log-symbols/node_modules/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 + }, + "node_modules/log-symbols/node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/log-symbols/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/log4js": { + "version": "6.4.3", + "resolved": "https://registry.npmjs.org/log4js/-/log4js-6.4.3.tgz", + "integrity": "sha512-H/oQKcCVIhQ8zCtUh5aftdp9eRpGyVB1M5sKzAJ0i10q5jS+YXk133vtLgzT1RIoWMbIn7QD1LUto8a1hqh6gA==", + "dev": true, + "dependencies": { + "date-format": "^4.0.5", + "debug": "^4.3.3", + "flatted": "^3.2.5", + "rfdc": "^1.3.0", + "streamroller": "^3.0.5" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/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==", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/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, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ltgt": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ltgt/-/ltgt-2.2.1.tgz", + "integrity": "sha1-81ypHEk/e3PaDgdJUwTxezH4fuU=" + }, + "node_modules/magic-string": { + "version": "0.25.7", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", + "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==", + "dev": true, + "dependencies": { + "sourcemap-codec": "^1.4.4" + } + }, + "node_modules/make-dir": { + "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, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/make-fetch-happen": { + "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, + "dependencies": { + "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" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/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==", + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/memdown": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/memdown/-/memdown-1.4.1.tgz", + "integrity": "sha1-tOThkhdGZP+65BNhqlAPMRnv4hU=", + "dependencies": { + "abstract-leveldown": "~2.7.1", + "functional-red-black-tree": "^1.0.1", + "immediate": "^3.2.3", + "inherits": "~2.0.1", + "ltgt": "~2.2.0", + "safe-buffer": "~5.1.1" + } + }, + "node_modules/memdown/node_modules/abstract-leveldown": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.7.2.tgz", + "integrity": "sha512-+OVvxH2rHVEhWLdbudP6p0+dNMXu8JA1CbhP19T8paTYAcX7oJ4OVjT+ZUVpv7mITxXHqDMej+GdqXBmXkw09w==", + "dependencies": { + "xtend": "~4.0.0" + } + }, + "node_modules/memfs": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.1.tgz", + "integrity": "sha512-1c9VPVvW5P7I85c35zAdEr1TD5+F11IToIHIlrVIcflfnzPkJa0ZoYEoEdYDP8KgPFoSZ/opDrUsAoZWym3mtw==", + "dev": true, + "dependencies": { + "fs-monkey": "1.0.3" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/merkle-patricia-tree": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/merkle-patricia-tree/-/merkle-patricia-tree-2.3.2.tgz", + "integrity": "sha512-81PW5m8oz/pz3GvsAwbauj7Y00rqm81Tzad77tHBwU7pIAtN+TJnMSOJhxBKflSVYhptMMb9RskhqHqrSm1V+g==", + "dependencies": { + "async": "^1.4.2", + "ethereumjs-util": "^5.0.0", + "level-ws": "0.0.0", + "levelup": "^1.2.1", + "memdown": "^1.0.0", + "readable-stream": "^2.0.0", + "rlp": "^2.0.0", + "semaphore": ">=1.0.1" + } + }, + "node_modules/merkle-patricia-tree/node_modules/async": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=" + }, + "node_modules/merkle-patricia-tree/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/merkle-patricia-tree/node_modules/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==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/merkle-patricia-tree/node_modules/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==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/mersenne-twister": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/mersenne-twister/-/mersenne-twister-1.1.0.tgz", + "integrity": "sha1-+RZhjuQ9cXnvz2Qb7EUx65Zwl4o=" + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micromatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "dev": true, + "dependencies": { + "braces": "^3.0.1", + "picomatch": "^2.2.3" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dependencies": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + }, + "bin": { + "miller-rabin": "bin/miller-rabin" + } + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/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==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/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, + "engines": { + "node": ">=6" + } + }, + "node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/min-document": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", + "integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=", + "dependencies": { + "dom-walk": "^0.1.0" + } + }, + "node_modules/mini-css-extract-plugin": { + "version": "2.5.3", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.5.3.tgz", + "integrity": "sha512-YseMB8cs8U/KCaAGQoqYmfUuhhGW0a9p9XvWXrxVOkE3/IiISTLw4ALNt7JR5B2eYauFM+PQGSbXMDmVbR7Tfw==", + "dev": true, + "dependencies": { + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/mini-css-extract-plugin/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/mini-css-extract-plugin/node_modules/schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, + "node_modules/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=" + }, + "node_modules/minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + }, + "node_modules/minipass": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", + "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/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, + "dependencies": { + "minipass": "^3.1.0", + "minipass-sized": "^1.0.3", + "minizlib": "^2.0.0" + }, + "engines": { + "node": ">=8" + }, + "optionalDependencies": { + "encoding": "^0.1.12" + } + }, + "node_modules/minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-json-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", + "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", + "dev": true, + "dependencies": { + "jsonparse": "^1.3.1", + "minipass": "^3.0.0" + } + }, + "node_modules/minipass-pipeline": { + "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, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/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, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/mkdirp-promise": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/mkdirp-promise/-/mkdirp-promise-5.0.1.tgz", + "integrity": "sha1-6bj2jlUsaKnBcTuEiD96HdA5uKE=", + "deprecated": "This package is broken and no longer maintained. 'mkdirp' itself supports promises now, please switch to that.", + "dependencies": { + "mkdirp": "*" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mock-fs": { + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-4.14.0.tgz", + "integrity": "sha512-qYvlv/exQ4+svI3UOvPUpLDF0OMX5euvUH0Ny4N5QyRyhNdgAgUrVH3iUINSzEPLvx0kbo/Bp28GJKIqvE7URw==" + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/multibase": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/multibase/-/multibase-0.6.1.tgz", + "integrity": "sha512-pFfAwyTjbbQgNc3G7D48JkJxWtoJoBMaR4xQUOuB8RnCgRqaYmWNFeJTTvrJ2w51bjLq2zTby6Rqj9TQ9elSUw==", + "deprecated": "This module has been superseded by the multiformats module", + "dependencies": { + "base-x": "^3.0.8", + "buffer": "^5.5.0" + } + }, + "node_modules/multicast-dns": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.3.tgz", + "integrity": "sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==", + "dev": true, + "dependencies": { + "dns-packet": "^1.3.1", + "thunky": "^1.0.2" + }, + "bin": { + "multicast-dns": "cli.js" + } + }, + "node_modules/multicast-dns-service-types": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz", + "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=", + "dev": true + }, + "node_modules/multicodec": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/multicodec/-/multicodec-0.5.7.tgz", + "integrity": "sha512-PscoRxm3f+88fAtELwUnZxGDkduE2HD9Q6GHUOywQLjOGT/HAdhjLDYNZ1e7VR0s0TP0EwZ16LNUTFpoBGivOA==", + "deprecated": "This module has been superseded by the multiformats module", + "dependencies": { + "varint": "^5.0.0" + } + }, + "node_modules/multihashes": { + "version": "0.4.21", + "resolved": "https://registry.npmjs.org/multihashes/-/multihashes-0.4.21.tgz", + "integrity": "sha512-uVSvmeCWf36pU2nB4/1kzYZjsXD9vofZKpgudqkceYY5g2aZZXJ5r9lxuzoRLl1OAp28XljXsEJ/X/85ZsKmKw==", + "dependencies": { + "buffer": "^5.5.0", + "multibase": "^0.7.0", + "varint": "^5.0.0" + } + }, + "node_modules/multihashes/node_modules/multibase": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/multibase/-/multibase-0.7.0.tgz", + "integrity": "sha512-TW8q03O0f6PNFTQDvh3xxH03c8CjGaaYrjkl9UQPG6rz53TQzzxJVCIWVjzcbN/Q5Y53Zd0IBQBMVktVgNx4Fg==", + "deprecated": "This module has been superseded by the multiformats module", + "dependencies": { + "base-x": "^3.0.8", + "buffer": "^5.5.0" + } + }, + "node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "dev": true + }, + "node_modules/nano-json-stream-parser": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/nano-json-stream-parser/-/nano-json-stream-parser-0.1.2.tgz", + "integrity": "sha1-DMj20OK2IrR5xA1JnEbWS3Vcb18=" + }, + "node_modules/nanoid": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.1.tgz", + "integrity": "sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw==", + "dev": true, + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "node_modules/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, + "dependencies": { + "debug": "^3.2.6", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + }, + "bin": { + "needle": "bin/needle" + }, + "engines": { + "node": ">= 4.4.x" + } + }, + "node_modules/needle/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "optional": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/neo-async": { + "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 + }, + "node_modules/next-tick": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", + "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" + }, + "node_modules/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, + "hasInstallScript": true, + "optional": true, + "os": [ + "!win32" + ], + "dependencies": { + "node-addon-api": "^3.0.0", + "node-gyp-build": "^4.2.2" + } + }, + "node_modules/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, + "optional": true + }, + "node_modules/node-fetch": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", + "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==", + "engines": { + "node": "4.x || >=6.0.0" + } + }, + "node_modules/node-forge": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.2.1.tgz", + "integrity": "sha512-Fcvtbb+zBcZXbTTVwqGA5W+MKBj56UjVRevvchv5XrcyXbmNdesfZL37nlcWOfpgHhgmxApw3tQbTr4CqNmX4w==", + "dev": true, + "engines": { + "node": ">= 6.13.0" + } + }, + "node_modules/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, + "dependencies": { + "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" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" + }, + "engines": { + "node": ">= 10.12.0" + } + }, + "node_modules/node-gyp-build": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.3.0.tgz", + "integrity": "sha512-iWjXZvmboq0ja1pUGULQBexmxq8CV4xBhX7VDOTbL7ZR4FOowwY/VOtRxBN/yKxmdGoIp4j5ysNT4u3S2pDQ3Q==", + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" + } + }, + "node_modules/node-releases": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.2.tgz", + "integrity": "sha512-XxYDdcQ6eKqp/YjI+tb2C5WM2LgjnZrfYg4vgQt49EK268b6gYCHsBLrK2qvJo4FmCtqmKezb0WZFK4fkrZNsg==" + }, + "node_modules/nopt": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", + "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", + "dev": true, + "dependencies": { + "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-url": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", + "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/npm-bundled": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz", + "integrity": "sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==", + "dev": true, + "dependencies": { + "npm-normalize-package-bin": "^1.0.1" + } + }, + "node_modules/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, + "dependencies": { + "semver": "^7.1.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/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", + "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==", + "dev": true + }, + "node_modules/npm-package-arg": { + "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, + "dependencies": { + "hosted-git-info": "^4.0.1", + "semver": "^7.3.4", + "validate-npm-package-name": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm-packlist": { + "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, + "dependencies": { + "glob": "^7.1.6", + "ignore-walk": "^4.0.1", + "npm-bundled": "^1.1.1", + "npm-normalize-package-bin": "^1.0.1" + }, + "bin": { + "npm-packlist": "bin/index.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm-pick-manifest": { + "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, + "dependencies": { + "npm-install-checks": "^4.0.0", + "npm-normalize-package-bin": "^1.0.1", + "npm-package-arg": "^8.1.2", + "semver": "^7.3.4" + } + }, + "node_modules/npm-registry-fetch": { + "version": "12.0.2", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-12.0.2.tgz", + "integrity": "sha512-Df5QT3RaJnXYuOwtXBXS9BWs+tHH2olvkCLh6jcR/b/u3DvPMlp3J0TvvYwplPKxHMOwfg287PYih9QqaVFoKA==", + "dev": true, + "dependencies": { + "make-fetch-happen": "^10.0.1", + "minipass": "^3.1.6", + "minipass-fetch": "^1.4.1", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.1.2", + "npm-package-arg": "^8.1.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16" + } + }, + "node_modules/npm-registry-fetch/node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/npm-registry-fetch/node_modules/cacache": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.0.0.tgz", + "integrity": "sha512-pMX6sqJSlGpxCM257by5syifGb7zH6C30CaJXeGXqmKNrHKqvMmwM8KgKmsZcUAsnNQkt7WvENH2Kl53RpFQuA==", + "dev": true, + "dependencies": { + "@npmcli/fs": "^1.0.0", + "@npmcli/move-file": "^1.1.2", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.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.4", + "mkdirp": "^1.0.4", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^8.0.1", + "tar": "^6.1.11", + "unique-filename": "^1.1.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16" + } + }, + "node_modules/npm-registry-fetch/node_modules/cacache/node_modules/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, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm-registry-fetch/node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/npm-registry-fetch/node_modules/lru-cache": { + "version": "7.5.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.5.1.tgz", + "integrity": "sha512-q1TS8IqKvcg3aScamKCHpepSrHF537Ww7nHahBOxhDu9D2YoBXAsj/7uFdZFj1xJr9LmyeJ62AdyofCHafUbIA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/npm-registry-fetch/node_modules/make-fetch-happen": { + "version": "10.0.6", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.0.6.tgz", + "integrity": "sha512-4Gfh6lV3TLXmj7qz79hBFuvVqjYSMW6v2+sxtdX4LFQU0rK3V/txRjE0DoZb7X0IF3t9f8NO3CxPSWlvdckhVA==", + "dev": true, + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^16.0.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.5.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^2.0.3", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^6.1.1", + "ssri": "^8.0.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16" + } + }, + "node_modules/npm-registry-fetch/node_modules/make-fetch-happen/node_modules/minipass-fetch": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.0.3.tgz", + "integrity": "sha512-VA+eiiUtaIvpQJXISwE3OiMvQwAWrgKb97F0aXlCS1Ahikr8fEQq8m3Hf7Kv9KT3nokuHigJKsDMB6atU04olQ==", + "dev": true, + "dependencies": { + "minipass": "^3.1.6", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npmlog": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.1.tgz", + "integrity": "sha512-BTHDvY6nrRHuRfyjt1MAufLxYdVXZfd099H4+i1f0lPywNQyI4foeNXJRObB/uy+TYqUW0vAD9gbdSOXPst7Eg==", + "dev": true, + "dependencies": { + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.0", + "set-blocking": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16" + } + }, + "node_modules/nth-check": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.1.tgz", + "integrity": "sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/number-to-bn": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/number-to-bn/-/number-to-bn-1.7.0.tgz", + "integrity": "sha1-uzYjWS9+X54AMLGXe9QaDFP+HqA=", + "dependencies": { + "bn.js": "4.11.6", + "strip-hex-prefix": "1.0.0" + }, + "engines": { + "node": ">=6.5.0", + "npm": ">=3" + } + }, + "node_modules/number-to-bn/node_modules/bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=" + }, + "node_modules/nx": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/nx/-/nx-13.1.3.tgz", + "integrity": "sha512-clM0NQhQKYkqcNz2E3uYRMLwhp2L/9dBhJhQi9XBX4IAyA2gWAomhRIlLm5Xxg3g4h1xwSpP3eJ5t89VikY8Pw==", + "dev": true, + "dependencies": { + "@nrwl/cli": "*" + }, + "bin": { + "nx": "bin/nx.js" + } + }, + "node_modules/oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "engines": { + "node": "*" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz", + "integrity": "sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-is": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", + "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "has-symbols": "^1.0.1", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/oboe": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/oboe/-/oboe-2.1.5.tgz", + "integrity": "sha1-VVQoTFQ6ImbXo48X4HOCH73jk80=", + "dependencies": { + "http-https": "^1.0.0" + } + }, + "node_modules/obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", + "dev": true + }, + "node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/open": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", + "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", + "dev": true, + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dev": true, + "dependencies": { + "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.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/ora": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "dev": true, + "dependencies": { + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ora/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/ora/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/ora/node_modules/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, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/ora/node_modules/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 + }, + "node_modules/ora/node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/ora/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/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 + }, + "node_modules/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=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "engines": { + "node": ">=4" + } + }, + "node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/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, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-retry": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.1.tgz", + "integrity": "sha512-e2xXGNhZOZ0lfgR9kL34iGlU8N/KO0xZnQxVEwdeOvpqNDQfdnxIYizvWtK8RglUa3bGqI8g0R/BdfzLMxRkiA==", + "dev": true, + "dependencies": { + "@types/retry": "^0.12.0", + "retry": "^0.13.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-timeout": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-1.2.1.tgz", + "integrity": "sha1-XrOzU7f86Z8QGhA4iAuwVOu+o4Y=", + "dependencies": { + "p-finally": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/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==", + "engines": { + "node": ">=6" + } + }, + "node_modules/pacote": { + "version": "12.0.3", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-12.0.3.tgz", + "integrity": "sha512-CdYEl03JDrRO3x18uHjBYA9TyoW8gy+ThVcypcDkxPtKlw76e4ejhYB6i9lJ+/cebbjpqPW/CijjqxwDTts8Ow==", + "dev": true, + "dependencies": { + "@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", + "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": "^12.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" + }, + "bin": { + "pacote": "lib/bin.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16" + } + }, + "node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "dev": true + }, + "node_modules/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, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-asn1": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", + "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", + "dependencies": { + "asn1.js": "^5.2.0", + "browserify-aes": "^1.0.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/parse-headers": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.5.tgz", + "integrity": "sha512-ft3iAoLOB/MlwbNXgzy43SWGP6sQki2jQvAyBg/zDFAgr9bfNWZIUj42Kw2eJIl8kEi4PbgE6U1Zau/HwI75HA==" + }, + "node_modules/parse-json": { + "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, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/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, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + }, + "node_modules/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, + "dependencies": { + "parse5": "^6.0.1", + "parse5-sax-parser": "^6.0.1" + } + }, + "node_modules/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, + "dependencies": { + "parse5": "^6.0.1" + } + }, + "node_modules/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, + "dependencies": { + "parse5": "^6.0.1" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "node_modules/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=" + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/pbkdf2": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", + "dependencies": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/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, + "engines": { + "node": ">=6" + } + }, + "node_modules/pirates": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", + "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/piscina": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/piscina/-/piscina-3.2.0.tgz", + "integrity": "sha512-yn/jMdHRw+q2ZJhFhyqsmANcbF6V2QwmD84c6xRau+QpQOmtrBCoRGdvTfeuFDYXB5W2m6MfLkjkvQa9lUSmIA==", + "dev": true, + "dependencies": { + "eventemitter-asyncresource": "^1.0.0", + "hdr-histogram-js": "^2.0.1", + "hdr-histogram-percentiles-obj": "^3.0.0" + }, + "optionalDependencies": { + "nice-napi": "^1.0.2" + } + }, + "node_modules/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, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pngjs": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-3.4.0.tgz", + "integrity": "sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/portfinder": { + "version": "1.0.28", + "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.28.tgz", + "integrity": "sha512-Se+2isanIcEqf2XMHjyUKskczxbPH7dQnlMjXX6+dybayyHvAf/TCgyMRlzf/B6QDhAEFOGes0pzRo3by4AbMA==", + "dev": true, + "dependencies": { + "async": "^2.6.2", + "debug": "^3.1.1", + "mkdirp": "^0.5.5" + }, + "engines": { + "node": ">= 0.12.0" + } + }, + "node_modules/portfinder/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/portfinder/node_modules/mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dev": true, + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/postcss": { + "version": "8.4.5", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.5.tgz", + "integrity": "sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg==", + "dev": true, + "dependencies": { + "nanoid": "^3.1.30", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-attribute-case-insensitive": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-5.0.0.tgz", + "integrity": "sha512-b4g9eagFGq9T5SWX4+USfVyjIb3liPnjhHHRMP7FMB2kFVpYyfEscV0wP3eaXhKlcHKUut8lt5BGoeylWA/dBQ==", + "dev": true, + "dependencies": { + "postcss-selector-parser": "^6.0.2" + }, + "peerDependencies": { + "postcss": "^8.0.2" + } + }, + "node_modules/postcss-color-functional-notation": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-4.2.2.tgz", + "integrity": "sha512-DXVtwUhIk4f49KK5EGuEdgx4Gnyj6+t2jBSEmxvpIK9QI40tWrpS2Pua8Q7iIZWBrki2QOaeUdEaLPPa91K0RQ==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-color-hex-alpha": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-8.0.3.tgz", + "integrity": "sha512-fESawWJCrBV035DcbKRPAVmy21LpoyiXdPTuHUfWJ14ZRjY7Y7PA6P4g8z6LQGYhU1WAxkTxjIjurXzoe68Glw==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-color-rebeccapurple": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-7.0.2.tgz", + "integrity": "sha512-SFc3MaocHaQ6k3oZaFwH8io6MdypkUtEy/eXzXEB1vEQlO3S3oDc/FSZA8AsS04Z25RirQhlDlHLh3dn7XewWw==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.3" + } + }, + "node_modules/postcss-custom-media": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-8.0.0.tgz", + "integrity": "sha512-FvO2GzMUaTN0t1fBULDeIvxr5IvbDXcIatt6pnJghc736nqNgsGao5NT+5+WVLAQiTt6Cb3YUms0jiPaXhL//g==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-custom-properties": { + "version": "12.1.4", + "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-12.1.4.tgz", + "integrity": "sha512-i6AytuTCoDLJkWN/MtAIGriJz3j7UX6bV7Z5t+KgFz+dwZS15/mlTJY1S0kRizlk6ba0V8u8hN50Fz5Nm7tdZw==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-custom-selectors": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-6.0.0.tgz", + "integrity": "sha512-/1iyBhz/W8jUepjGyu7V1OPcGbc636snN1yXEQCinb6Bwt7KxsiU7/bLQlp8GwAXzCh7cobBU5odNn/2zQWR8Q==", + "dev": true, + "dependencies": { + "postcss-selector-parser": "^6.0.4" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "postcss": "^8.1.2" + } + }, + "node_modules/postcss-dir-pseudo-class": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-6.0.4.tgz", + "integrity": "sha512-I8epwGy5ftdzNWEYok9VjW9whC4xnelAtbajGv4adql4FIF09rnrxnA9Y8xSHN47y7gqFIv10C5+ImsLeJpKBw==", + "dev": true, + "dependencies": { + "postcss-selector-parser": "^6.0.9" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-double-position-gradients": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-3.1.1.tgz", + "integrity": "sha512-jM+CGkTs4FcG53sMPjrrGE0rIvLDdCrqMzgDC5fLI7JHDO7o6QG8C5TQBtExb13hdBdoH9C2QVbG4jo2y9lErQ==", + "dev": true, + "dependencies": { + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-env-function": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-4.0.5.tgz", + "integrity": "sha512-gPUJc71ji9XKyl0WSzAalBeEA/89kU+XpffpPxSaaaZ1c48OL36r1Ep5R6+9XAPkIiDlSvVAwP4io12q/vTcvA==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-focus-visible": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-6.0.4.tgz", + "integrity": "sha512-QcKuUU/dgNsstIK6HELFRT5Y3lbrMLEOwG+A4s5cA+fx3A3y/JTq3X9LaOj3OC3ALH0XqyrgQIgey/MIZ8Wczw==", + "dev": true, + "dependencies": { + "postcss-selector-parser": "^6.0.9" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-focus-within": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-5.0.4.tgz", + "integrity": "sha512-vvjDN++C0mu8jz4af5d52CB184ogg/sSxAFS+oUJQq2SuCe7T5U2iIsVJtsCp2d6R4j0jr5+q3rPkBVZkXD9fQ==", + "dev": true, + "dependencies": { + "postcss-selector-parser": "^6.0.9" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-font-variant": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-5.0.0.tgz", + "integrity": "sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==", + "dev": true, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-gap-properties": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-3.0.3.tgz", + "integrity": "sha512-rPPZRLPmEKgLk/KlXMqRaNkYTUpE7YC+bOIQFN5xcu1Vp11Y4faIXv6/Jpft6FMnl6YRxZqDZG0qQOW80stzxQ==", + "dev": true, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-image-set-function": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-4.0.6.tgz", + "integrity": "sha512-KfdC6vg53GC+vPd2+HYzsZ6obmPqOk6HY09kttU19+Gj1nC3S3XBVEXDHxkhxTohgZqzbUb94bKXvKDnYWBm/A==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/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, + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-initial": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-4.0.1.tgz", + "integrity": "sha512-0ueD7rPqX8Pn1xJIjay0AZeIuDoF+V+VvMt/uOnn+4ezUKhZM/NokDeP6DwMNyIoYByuN/94IQnt5FEkaN59xQ==", + "dev": true, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-lab-function": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-4.1.2.tgz", + "integrity": "sha512-isudf5ldhg4fk16M8viAwAbg6Gv14lVO35N3Z/49NhbwPQ2xbiEoHgrRgpgQojosF4vF7jY653ktB6dDrUOR8Q==", + "dev": true, + "dependencies": { + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-loader": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-6.2.1.tgz", + "integrity": "sha512-WbbYpmAaKcux/P66bZ40bpWsBucjx/TTgVVzRZ9yUO8yQfVBlameJ0ZGVaPfH64hNSBh63a+ICP5nqOpBA0w+Q==", + "dev": true, + "dependencies": { + "cosmiconfig": "^7.0.0", + "klona": "^2.0.5", + "semver": "^7.3.5" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "postcss": "^7.0.0 || ^8.0.1", + "webpack": "^5.0.0" + } + }, + "node_modules/postcss-logical": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-5.0.4.tgz", + "integrity": "sha512-RHXxplCeLh9VjinvMrZONq7im4wjWGlRJAqmAVLXyZaXwfDWP73/oq4NdIp+OZwhQUMj0zjqDfM5Fj7qby+B4g==", + "dev": true, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-media-minmax": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-5.0.0.tgz", + "integrity": "sha512-yDUvFf9QdFZTuCUg0g0uNSHVlJ5X1lSzDZjPSFaiCWvjgsvu8vEVxtahPrLMinIDEEGnx6cBe6iqdx5YWz08wQ==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-extract-imports": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", + "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", + "dev": true, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-local-by-default": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", + "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", + "dev": true, + "dependencies": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-scope": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", + "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", + "dev": true, + "dependencies": { + "postcss-selector-parser": "^6.0.4" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/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, + "dependencies": { + "icss-utils": "^5.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-nesting": { + "version": "10.1.3", + "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-10.1.3.tgz", + "integrity": "sha512-wUC+/YCik4wH3StsbC5fBG1s2Z3ZV74vjGqBFYtmYKlVxoio5TYGM06AiaKkQPPlkXWn72HKfS7Cw5PYxnoXSw==", + "dev": true, + "dependencies": { + "postcss-selector-parser": "^6.0.9" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-overflow-shorthand": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-3.0.3.tgz", + "integrity": "sha512-CxZwoWup9KXzQeeIxtgOciQ00tDtnylYIlJBBODqkgS/PU2jISuWOL/mYLHmZb9ZhZiCaNKsCRiLp22dZUtNsg==", + "dev": true, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-page-break": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-3.0.4.tgz", + "integrity": "sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==", + "dev": true, + "peerDependencies": { + "postcss": "^8" + } + }, + "node_modules/postcss-place": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-7.0.4.tgz", + "integrity": "sha512-MrgKeiiu5OC/TETQO45kV3npRjOFxEHthsqGtkh3I1rPbZSbXGD/lZVi9j13cYh+NA8PIAPyk6sGjT9QbRyvSg==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-preset-env": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-7.2.3.tgz", + "integrity": "sha512-Ok0DhLfwrcNGrBn8sNdy1uZqWRk/9FId0GiQ39W4ILop5GHtjJs8bu1MY9isPwHInpVEPWjb4CEcEaSbBLpfwA==", + "dev": true, + "dependencies": { + "autoprefixer": "^10.4.2", + "browserslist": "^4.19.1", + "caniuse-lite": "^1.0.30001299", + "css-blank-pseudo": "^3.0.2", + "css-has-pseudo": "^3.0.3", + "css-prefers-color-scheme": "^6.0.2", + "cssdb": "^5.0.0", + "postcss-attribute-case-insensitive": "^5.0.0", + "postcss-color-functional-notation": "^4.2.1", + "postcss-color-hex-alpha": "^8.0.2", + "postcss-color-rebeccapurple": "^7.0.2", + "postcss-custom-media": "^8.0.0", + "postcss-custom-properties": "^12.1.2", + "postcss-custom-selectors": "^6.0.0", + "postcss-dir-pseudo-class": "^6.0.3", + "postcss-double-position-gradients": "^3.0.4", + "postcss-env-function": "^4.0.4", + "postcss-focus-visible": "^6.0.3", + "postcss-focus-within": "^5.0.3", + "postcss-font-variant": "^5.0.0", + "postcss-gap-properties": "^3.0.2", + "postcss-image-set-function": "^4.0.4", + "postcss-initial": "^4.0.1", + "postcss-lab-function": "^4.0.3", + "postcss-logical": "^5.0.3", + "postcss-media-minmax": "^5.0.0", + "postcss-nesting": "^10.1.2", + "postcss-overflow-shorthand": "^3.0.2", + "postcss-page-break": "^3.0.4", + "postcss-place": "^7.0.3", + "postcss-pseudo-class-any-link": "^7.0.2", + "postcss-replace-overflow-wrap": "^4.0.0", + "postcss-selector-not": "^5.0.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-pseudo-class-any-link": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-7.1.1.tgz", + "integrity": "sha512-JRoLFvPEX/1YTPxRxp1JO4WxBVXJYrSY7NHeak5LImwJ+VobFMwYDQHvfTXEpcn+7fYIeGkC29zYFhFWIZD8fg==", + "dev": true, + "dependencies": { + "postcss-selector-parser": "^6.0.9" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-replace-overflow-wrap": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-4.0.0.tgz", + "integrity": "sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==", + "dev": true, + "peerDependencies": { + "postcss": "^8.0.3" + } + }, + "node_modules/postcss-selector-not": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-5.0.0.tgz", + "integrity": "sha512-/2K3A4TCP9orP4TNS7u3tGdRFVKqz/E6pX3aGnriPG0jU78of8wsUcqE4QAhWEU0d+WnMSF93Ah3F//vUtK+iQ==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.9", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.9.tgz", + "integrity": "sha512-UO3SgnZOVTwu4kyLR22UQ1xZh086RyNZppb7lLAKBFK8a32ttG5i87Y/P3+2bRSjZNyJ1B7hfFNo273tKe9YxQ==", + "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/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==" + }, + "node_modules/preact": { + "version": "10.4.1", + "resolved": "https://registry.npmjs.org/preact/-/preact-10.4.1.tgz", + "integrity": "sha512-WKrRpCSwL2t3tpOOGhf2WfTpcmbpxaWtDbdJdKdjd0aEiTkvOmS4NBkG6kzlaAHI9AkQ3iVqbFWM3Ei7mZ4o1Q==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/preact" + } + }, + "node_modules/precond": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/precond/-/precond-0.2.3.tgz", + "integrity": "sha1-qpWRvKokkj8eD0hJ0kD0fvwQdaw=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/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, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", + "engines": { + "node": ">=4" + } + }, + "node_modules/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, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/primeicons": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/primeicons/-/primeicons-5.0.0.tgz", + "integrity": "sha512-heygWF0X5HFI1otlZE62pp6ye7sZ8om78J9au2BRkg8O7Y8AHTZ9qKMRzchZUHLe8zUAvdi6hZzzm9XxgwIExw==" + }, + "node_modules/primeng": { + "version": "13.2.1", + "resolved": "https://registry.npmjs.org/primeng/-/primeng-13.2.1.tgz", + "integrity": "sha512-Z+HvNlcH3AUYUIhNkAKWmkR+RUshoN1FYrN/zLhQhrOGIhMdisPXA2uILjGezEvte9X1rNOE8kOPpYvDWdKatA==", + "dependencies": { + "tslib": "^2.3.0" + }, + "peerDependencies": { + "@angular/common": "^13.0.0", + "@angular/core": "^13.0.0", + "@angular/forms": "^13.0.0", + "primeicons": "^5.0.0", + "rxjs": "^6.0.0 || ^7.0.0", + "zone.js": "^0.10.2 || ^0.11.0" + } + }, + "node_modules/printj": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/printj/-/printj-1.3.1.tgz", + "integrity": "sha512-GA3TdL8szPK4AQ2YnOe/b+Y1jUFwmmGMMK/qbY7VcE3Z7FU8JstbKiKRzO6CIiAKPhTO8m01NoQ0V5f3jc4OGg==", + "bin": { + "printj": "bin/printj.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/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==" + }, + "node_modules/promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", + "dev": true + }, + "node_modules/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, + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/promise-retry/node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/promise-to-callback": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/promise-to-callback/-/promise-to-callback-1.0.0.tgz", + "integrity": "sha1-XSp0kBC/tn2WNZj805YHRqaP7vc=", + "dependencies": { + "is-fn": "^1.0.0", + "set-immediate-shim": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "node_modules/prop-types/node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + }, + "node_modules/proxy-addr": { + "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==", + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/proxy-addr/node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=" + }, + "node_modules/psl": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==" + }, + "node_modules/public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "dependencies": { + "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" + } + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/qjobs": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz", + "integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==", + "dev": true, + "engines": { + "node": ">=0.9" + } + }, + "node_modules/qrcode": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/qrcode/-/qrcode-1.4.4.tgz", + "integrity": "sha512-oLzEC5+NKFou9P0bMj5+v6Z40evexeE29Z9cummZXZ9QXyMr3lphkURzxjXgPJC5azpxcshoDWV1xE46z+/c3Q==", + "dependencies": { + "buffer": "^5.4.3", + "buffer-alloc": "^1.2.0", + "buffer-from": "^1.1.1", + "dijkstrajs": "^1.0.1", + "isarray": "^2.0.1", + "pngjs": "^3.3.0", + "yargs": "^13.2.4" + }, + "bin": { + "qrcode": "bin/qrcode" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/qrcode/node_modules/ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "engines": { + "node": ">=6" + } + }, + "node_modules/qrcode/node_modules/cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "dependencies": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + } + }, + "node_modules/qrcode/node_modules/emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" + }, + "node_modules/qrcode/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/qrcode/node_modules/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=", + "engines": { + "node": ">=4" + } + }, + "node_modules/qrcode/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" + }, + "node_modules/qrcode/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/qrcode/node_modules/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==", + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/qrcode/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "engines": { + "node": ">=4" + } + }, + "node_modules/qrcode/node_modules/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==", + "dependencies": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/qrcode/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dependencies": { + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/qrcode/node_modules/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==", + "dependencies": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/qrcode/node_modules/y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==" + }, + "node_modules/qrcode/node_modules/yargs": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "dependencies": { + "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" + } + }, + "node_modules/qrcode/node_modules/yargs-parser": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + }, + "node_modules/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw==", + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/query-string": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-5.1.1.tgz", + "integrity": "sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==", + "dependencies": { + "decode-uri-component": "^0.2.0", + "object-assign": "^4.1.0", + "strict-uri-encode": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", + "deprecated": "The querystring API is considered Legacy. new code should use the URLSearchParams API instead.", + "dev": true, + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/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, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dependencies": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, + "node_modules/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==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.3.tgz", + "integrity": "sha512-UlTNLIcu0uzb4D2f4WltY6cVjLi+/jEN4lgEUj3E04tpMDpUlkBo/eSn6zou9hum2VMNpCCUone0O0WeJim07g==", + "dependencies": { + "bytes": "3.1.2", + "http-errors": "1.8.1", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/raw-body/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/react": { + "version": "16.14.0", + "resolved": "https://registry.npmjs.org/react/-/react-16.14.0.tgz", + "integrity": "sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==", + "dependencies": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1", + "prop-types": "^15.6.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "16.14.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.14.0.tgz", + "integrity": "sha512-1gCeQXDLoIqMgqD3IO2Ah9bnf0w9kzhwN5q4FGnHZ67hBm9yePzB5JJAIQCc8x3pFnNlwFq4RidZggNAAkzWWw==", + "dependencies": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1", + "prop-types": "^15.6.2", + "scheduler": "^0.19.1" + }, + "peerDependencies": { + "react": "^16.14.0" + } + }, + "node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "peer": true + }, + "node_modules/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, + "dependencies": { + "pify": "^2.3.0" + } + }, + "node_modules/read-cache/node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/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, + "dependencies": { + "json-parse-even-better-errors": "^2.3.0", + "npm-normalize-package-bin": "^1.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/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==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/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==", + "dev": true + }, + "node_modules/regenerate": { + "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 + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.0.1.tgz", + "integrity": "sha512-vn5DU6yg6h8hP/2OkQo3K7uVILvY4iu0oI4t3HFa81UPkhGJwkRwM10JEc3upjdhHjs/k8GJY1sRBhk5sr69Bw==", + "dev": true, + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "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==" + }, + "node_modules/regenerator-transform": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz", + "integrity": "sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.8.4" + } + }, + "node_modules/regex-parser": { + "version": "2.2.11", + "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.2.11.tgz", + "integrity": "sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==", + "dev": true + }, + "node_modules/regexp.prototype.flags": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.1.tgz", + "integrity": "sha512-pMR7hBVUUGI7PMA37m2ofIdQCsomVnas+Jn5UPGAHQ+/LlwKm/aTLJHdasmHRzlfeZwHiAOaRSo2rbBDm3nNUQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/regexpu-core": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.0.1.tgz", + "integrity": "sha512-CriEZlrKK9VJw/xQGJpQM5rY88BtuL8DM+AEwvcThHilbxiTAy8vq4iJnd2tqq8wLmjbGZzP7ZcKFjbGkmEFrw==", + "dev": true, + "dependencies": { + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.0.1", + "regjsgen": "^0.6.0", + "regjsparser": "^0.8.2", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regjsgen": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.6.0.tgz", + "integrity": "sha512-ozE883Uigtqj3bx7OhL1KNbCzGyW2NQZPl6Hs09WTvCuZD5sTI4JY58bkbQWa/Y9hxIsvJ3M8Nbf7j54IqeZbA==", + "dev": true + }, + "node_modules/regjsparser": { + "version": "0.8.4", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.8.4.tgz", + "integrity": "sha512-J3LABycON/VNEu3abOviqGHuB/LOtOQj8SKmfP9anY5GfAVw/SPjwzSjxGjbZXIxbGfqTHtJw58C2Li/WkStmA==", + "dev": true, + "dependencies": { + "jsesc": "~0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + } + }, + "node_modules/request": { + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", + "dependencies": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/request/node_modules/qs": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", + "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/request/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/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, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/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==" + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", + "dev": true + }, + "node_modules/resolve": { + "version": "1.22.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", + "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", + "dependencies": { + "is-core-module": "^2.8.1", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-url-loader": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz", + "integrity": "sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==", + "dev": true, + "dependencies": { + "adjust-sourcemap-loader": "^4.0.0", + "convert-source-map": "^1.7.0", + "loader-utils": "^2.0.0", + "postcss": "^8.2.14", + "source-map": "0.6.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/resolve-url-loader/node_modules/loader-utils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", + "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/resolve-url-loader/node_modules/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, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", + "dependencies": { + "lowercase-keys": "^1.0.0" + } + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/retry": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rfdc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", + "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", + "dev": true + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "node_modules/rlp": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/rlp/-/rlp-2.2.7.tgz", + "integrity": "sha512-d5gdPmgQ0Z+AklL2NVXr/IoSjNZFfTVvQWzL/AM2AOcSzYP2xjlb0AC8YyCLc41MSNf6P6QVtjgPdmVtzb+4lQ==", + "dependencies": { + "bn.js": "^5.2.0" + }, + "bin": { + "rlp": "bin/rlp" + } + }, + "node_modules/rlp/node_modules/bn.js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz", + "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==" + }, + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/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, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/rustbn.js": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/rustbn.js/-/rustbn.js-0.2.0.tgz", + "integrity": "sha512-4VlvkRUuCJvr2J6Y0ImW7NvTCriMi7ErOAqWk1y69vAdoNIzCF3yPmgeNzx+RQTLEDFq5sHfscn1MwHxP9hNfA==" + }, + "node_modules/rxjs": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz", + "integrity": "sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/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==" + }, + "node_modules/safe-event-emitter": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/safe-event-emitter/-/safe-event-emitter-1.0.1.tgz", + "integrity": "sha512-e1wFe99A91XYYxoQbcq2ZJUWurxEyP8vfz7A7vuUe1s95q8r5ebraVaA1BukYJcpM6V16ugWoD9vngi8Ccu5fg==", + "deprecated": "Renamed to @metamask/safe-event-emitter", + "dependencies": { + "events": "^3.0.0" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/sass": { + "version": "1.49.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.49.0.tgz", + "integrity": "sha512-TVwVdNDj6p6b4QymJtNtRS2YtLJ/CqZriGg0eIAbAKMlN8Xy6kbv33FsEZSF7FufFFM705SQviHjjThfaQ4VNw==", + "dev": true, + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/sass-loader": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-12.4.0.tgz", + "integrity": "sha512-7xN+8khDIzym1oL9XyS6zP6Ges+Bo2B2xbPrjdMHEYyV3AQYhd/wXeru++3ODHF0zMjYmVadblSKrPrjEkL8mg==", + "dev": true, + "dependencies": { + "klona": "^2.0.4", + "neo-async": "^2.6.2" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "fibers": ">= 3.1.0", + "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0", + "sass": "^1.3.0", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "fibers": { + "optional": true + }, + "node-sass": { + "optional": true + }, + "sass": { + "optional": true + } + } + }, + "node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + }, + "node_modules/scheduler": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.19.1.tgz", + "integrity": "sha512-n/zwRWRYSUj0/3g/otKDRPMh6qv2SYMWNq85IEa8iZyAv8od9zDYpGSnpBEjNgcMNq6Scbu5KfIPxNF72R/2EA==", + "dependencies": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + } + }, + "node_modules/schema-utils": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/schema-utils/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/schema-utils/node_modules/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 + }, + "node_modules/scrypt-js": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz", + "integrity": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==" + }, + "node_modules/secp256k1": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.3.tgz", + "integrity": "sha512-NLZVf+ROMxwtEj3Xa562qgv2BK5e2WNmXPiOdVIPLgs6lyTzMvBq0aWTYMI5XCP9jZMVKOcqZLw/Wc4vDkuxhA==", + "hasInstallScript": true, + "dependencies": { + "elliptic": "^6.5.4", + "node-addon-api": "^2.0.0", + "node-gyp-build": "^4.2.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/secp256k1/node_modules/node-addon-api": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.2.tgz", + "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==" + }, + "node_modules/select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=", + "dev": true + }, + "node_modules/selfsigned": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.0.0.tgz", + "integrity": "sha512-cUdFiCbKoa1mZ6osuJs2uDHrs0k0oprsKveFiiaBKCNq3SYyb5gs2HxhQyDNLCmL51ZZThqi4YNDpCK6GOP1iQ==", + "dev": true, + "dependencies": { + "node-forge": "^1.2.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semaphore": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/semaphore/-/semaphore-1.1.0.tgz", + "integrity": "sha512-O4OZEaNtkMd/K0i6js9SL+gqy0ZCBMgUvlSqHKi4IBdjhe7wB8pwztUk1BbZ1fmrvpwFrPbHzqd2w5pTcJH6LA==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/send": { + "version": "0.17.2", + "resolved": "https://registry.npmjs.org/send/-/send-0.17.2.tgz", + "integrity": "sha512-UJYB6wFSJE3G00nEivR5rgWp8c2xXvJ3OPWPhmuteU0IKj8nKbG3DrjiOmLwpnHGYWAVwA69zmTm++YG0Hmwww==", + "dependencies": { + "debug": "2.6.9", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "1.8.1", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "~2.3.0", + "range-parser": "~1.2.1", + "statuses": "~1.5.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/serialize-javascript": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", + "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", + "dev": true, + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", + "dev": true, + "dependencies": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-index/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/serve-index/node_modules/http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", + "dev": true, + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + }, + "node_modules/serve-index/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "node_modules/serve-index/node_modules/setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "dev": true + }, + "node_modules/serve-static": { + "version": "1.14.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.2.tgz", + "integrity": "sha512-+TMNA9AFxUEGuC0z2mevogSnn9MXKb4fa7ngeRMJaaGv8vTwnIEkKi+QGvPt33HSnf8pRS+WGM0EbMtCJLKMBQ==", + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.17.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/servify": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/servify/-/servify-0.1.12.tgz", + "integrity": "sha512-/xE6GvsKKqyo1BAY+KxOWXcLpPsUUyji7Qg3bVD7hh1eRze5bR1uYiuDA/k3Gof1s9BTzQZEJK8sNcNGFIzeWw==", + "dependencies": { + "body-parser": "^1.16.0", + "cors": "^2.8.1", + "express": "^4.14.0", + "request": "^2.79.0", + "xhr": "^2.3.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "node_modules/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=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + }, + "node_modules/sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + }, + "bin": { + "sha.js": "bin.js" + } + }, + "node_modules/shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shallowequal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", + "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==" + }, + "node_modules/shebang-command": { + "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, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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 + }, + "node_modules/simple-concat": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", + "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/simple-get": { + "version": "2.8.2", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-2.8.2.tgz", + "integrity": "sha512-Ijd/rV5o+mSBBs4F/x9oDPtTx9Zb6X9brmnXvMW4J7IR15ngi9q5xxqWBKU744jTZiaXtxaPL7uHG6vtN8kUkw==", + "dependencies": { + "decompress-response": "^3.3.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } + }, + "node_modules/simplebar": { + "version": "5.3.6", + "resolved": "https://registry.npmjs.org/simplebar/-/simplebar-5.3.6.tgz", + "integrity": "sha512-FJUMbV+hNDd/m+1/fvD41TXKd5mSdlI5zgBygkaQIV3SffNbcLhSbJT6ufTs8ZNRLJ6i+qc/KCFMqWmvlGWMhA==", + "dependencies": { + "@juggle/resize-observer": "^3.3.1", + "can-use-dom": "^0.1.0", + "core-js": "^3.0.1", + "lodash.debounce": "^4.0.8", + "lodash.memoize": "^4.1.2", + "lodash.throttle": "^4.1.1" + } + }, + "node_modules/simplebar-angular": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/simplebar-angular/-/simplebar-angular-2.3.6.tgz", + "integrity": "sha512-chSUdCYCLOdajbCA73oL/OU+H/YFNGGdAYkcYx76YDY81C3sj3vMePjuW8cPgZZHwSCGI+opcl6xoBsCK56fJA==", + "dependencies": { + "simplebar": "^5.3.6", + "tslib": "^1.9.0" + }, + "peerDependencies": { + "@angular/common": "^8.1.3", + "@angular/core": "^8.1.3" + } + }, + "node_modules/simplebar-angular/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "dev": true, + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socket.io": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.4.1.tgz", + "integrity": "sha512-s04vrBswdQBUmuWJuuNTmXUVJhP0cVky8bBDhdkf8y0Ptsu7fKU2LuLbts9g+pdmAdyMMn8F/9Mf1/wbtUN0fg==", + "dev": true, + "dependencies": { + "accepts": "~1.3.4", + "base64id": "~2.0.0", + "debug": "~4.3.2", + "engine.io": "~6.1.0", + "socket.io-adapter": "~2.3.3", + "socket.io-parser": "~4.0.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/socket.io-adapter": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.3.3.tgz", + "integrity": "sha512-Qd/iwn3VskrpNO60BeRyCyr8ZWw9CPZyitW4AQwmRZ8zCiyDiL+znRnWX6tDHXnWn1sJrM1+b6Mn6wEDJJ4aYQ==", + "dev": true + }, + "node_modules/socket.io-parser": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.0.4.tgz", + "integrity": "sha512-t+b0SS+IxG7Rxzda2EVvyBZbvFPBCjJoyHuE0P//7OAsN23GItzDRdWa6ALxZI/8R5ygK7jAR6t028/z+7295g==", + "dev": true, + "dependencies": { + "@types/component-emitter": "^1.2.10", + "component-emitter": "~1.3.0", + "debug": "~4.3.1" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/sockjs": { + "version": "0.3.24", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", + "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", + "dev": true, + "dependencies": { + "faye-websocket": "^0.11.3", + "uuid": "^8.3.2", + "websocket-driver": "^0.7.4" + } + }, + "node_modules/socks": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.6.2.tgz", + "integrity": "sha512-zDZhHhZRY9PxRruRMR7kMhnf3I8hDs4S3f9RecfnGxvcBHQcKcIH/oUcEWffsfl1XxdYlA7nnlGbbTvPz9D8gA==", + "dev": true, + "dependencies": { + "ip": "^1.1.5", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.13.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.1.1.tgz", + "integrity": "sha512-t8J0kG3csjA4g6FTbsMOWws+7R7vuRC8aQ/wy3/1OWmsgwA68zs/+cExQ0koSitUDXqhufF/YJr9wtNMZHw5Ew==", + "dev": true, + "dependencies": { + "agent-base": "^6.0.2", + "debug": "^4.3.1", + "socks": "^2.6.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-loader": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-3.0.1.tgz", + "integrity": "sha512-Vp1UsfyPvgujKQzi4pyDiTOnE3E4H+yHvkVRN3c/9PJmQS4CQJExvcDvaX/D+RV+xQben9HJ56jMJS3CgUeWyA==", + "dev": true, + "dependencies": { + "abab": "^2.0.5", + "iconv-lite": "^0.6.3", + "source-map-js": "^1.0.1" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/source-map-loader/node_modules/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, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-resolve": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", + "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", + "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", + "dev": true, + "dependencies": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0" + } + }, + "node_modules/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, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/source-map-support/node_modules/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, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "dev": true + }, + "node_modules/spdy": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", + "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", + "dev": true, + "dependencies": { + "debug": "^4.1.0", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/spdy-transport": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", + "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", + "dev": true, + "dependencies": { + "debug": "^4.1.0", + "detect-node": "^2.0.4", + "hpack.js": "^2.1.6", + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" + } + }, + "node_modules/split-on-first": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/split-on-first/-/split-on-first-1.1.0.tgz", + "integrity": "sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "node_modules/sshpk": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", + "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", + "dependencies": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + }, + "bin": { + "sshpk-conv": "bin/sshpk-conv", + "sshpk-sign": "bin/sshpk-sign", + "sshpk-verify": "bin/sshpk-verify" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ssri": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", + "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", + "dev": true, + "dependencies": { + "minipass": "^3.1.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/stream-browserify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", + "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==", + "dev": true, + "dependencies": { + "inherits": "~2.0.4", + "readable-stream": "^3.5.0" + } + }, + "node_modules/stream-http": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.2.0.tgz", + "integrity": "sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==", + "dev": true, + "dependencies": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "xtend": "^4.0.2" + } + }, + "node_modules/streamroller": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-3.0.5.tgz", + "integrity": "sha512-5uzTEUIi4OB5zy/H30kbUN/zpDNJsFUA+Z47ZL8EfrP93lcZvRLEqdbhdunEPa7CouuAzXXsHpCJ9dg90Umw7g==", + "dev": true, + "dependencies": { + "date-format": "^4.0.5", + "debug": "^4.3.3", + "fs-extra": "^10.0.1" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/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=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/string_decoder": { + "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==", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string_decoder/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/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==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", + "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", + "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-hex-prefix": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz", + "integrity": "sha1-DF8VX+8RUTczd96du1iNoFUA428=", + "dependencies": { + "is-hex-prefixed": "1.0.0" + }, + "engines": { + "node": ">=6.5.0", + "npm": ">=3" + } + }, + "node_modules/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, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/styled-components": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-5.3.3.tgz", + "integrity": "sha512-++4iHwBM7ZN+x6DtPPWkCI4vdtwumQ+inA/DdAsqYd4SVgUKJie5vXyzotA00ttcFdQkCng7zc6grwlfIfw+lw==", + "dependencies": { + "@babel/helper-module-imports": "^7.0.0", + "@babel/traverse": "^7.4.5", + "@emotion/is-prop-valid": "^0.8.8", + "@emotion/stylis": "^0.8.4", + "@emotion/unitless": "^0.7.4", + "babel-plugin-styled-components": ">= 1.12.0", + "css-to-react-native": "^3.0.0", + "hoist-non-react-statics": "^3.0.0", + "shallowequal": "^1.1.0", + "supports-color": "^5.5.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/styled-components" + }, + "peerDependencies": { + "react": ">= 16.8.0", + "react-dom": ">= 16.8.0", + "react-is": ">= 16.8.0" + } + }, + "node_modules/stylus": { + "version": "0.56.0", + "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.56.0.tgz", + "integrity": "sha512-Ev3fOb4bUElwWu4F9P9WjnnaSpc8XB9OFHSFZSKMFL1CE1oM+oFXWEgAqPmmZIyhBihuqIQlFsVTypiiS9RxeA==", + "dev": true, + "dependencies": { + "css": "^3.0.0", + "debug": "^4.3.2", + "glob": "^7.1.6", + "safer-buffer": "^2.1.2", + "sax": "~1.2.4", + "source-map": "^0.7.3" + }, + "bin": { + "stylus": "bin/stylus" + }, + "engines": { + "node": "*" + } + }, + "node_modules/stylus-loader": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-6.2.0.tgz", + "integrity": "sha512-5dsDc7qVQGRoc6pvCL20eYgRUxepZ9FpeK28XhdXaIPP6kXr6nI1zAAKFQgP5OBkOfKaURp4WUpJzspg1f01Gg==", + "dev": true, + "dependencies": { + "fast-glob": "^3.2.7", + "klona": "^2.0.4", + "normalize-path": "^3.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "stylus": ">=0.52.4", + "webpack": "^5.0.0" + } + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/swarm-js": { + "version": "0.1.40", + "resolved": "https://registry.npmjs.org/swarm-js/-/swarm-js-0.1.40.tgz", + "integrity": "sha512-yqiOCEoA4/IShXkY3WKwP5PvZhmoOOD8clsKA7EEcRILMkTEYHCQ21HDCAcVpmIxZq4LyZvWeRJ6quIyHk1caA==", + "dependencies": { + "bluebird": "^3.5.0", + "buffer": "^5.0.5", + "eth-lib": "^0.1.26", + "fs-extra": "^4.0.2", + "got": "^7.1.0", + "mime-types": "^2.1.16", + "mkdirp-promise": "^5.0.1", + "mock-fs": "^4.1.0", + "setimmediate": "^1.0.5", + "tar": "^4.0.2", + "xhr-request": "^1.0.1" + } + }, + "node_modules/swarm-js/node_modules/chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" + }, + "node_modules/swarm-js/node_modules/fs-extra": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", + "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", + "dependencies": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "node_modules/swarm-js/node_modules/fs-minipass": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz", + "integrity": "sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==", + "dependencies": { + "minipass": "^2.6.0" + } + }, + "node_modules/swarm-js/node_modules/get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "engines": { + "node": ">=4" + } + }, + "node_modules/swarm-js/node_modules/got": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/got/-/got-7.1.0.tgz", + "integrity": "sha512-Y5WMo7xKKq1muPsxD+KmrR8DH5auG7fBdDVueZwETwV6VytKyU9OX/ddpq2/1hp1vIPvVb4T81dKQz3BivkNLw==", + "dependencies": { + "decompress-response": "^3.2.0", + "duplexer3": "^0.1.4", + "get-stream": "^3.0.0", + "is-plain-obj": "^1.1.0", + "is-retry-allowed": "^1.0.0", + "is-stream": "^1.0.0", + "isurl": "^1.0.0-alpha5", + "lowercase-keys": "^1.0.0", + "p-cancelable": "^0.3.0", + "p-timeout": "^1.1.1", + "safe-buffer": "^5.0.1", + "timed-out": "^4.0.0", + "url-parse-lax": "^1.0.0", + "url-to-options": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/swarm-js/node_modules/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=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/swarm-js/node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/swarm-js/node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/swarm-js/node_modules/minipass": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", + "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", + "dependencies": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "node_modules/swarm-js/node_modules/minizlib": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz", + "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==", + "dependencies": { + "minipass": "^2.9.0" + } + }, + "node_modules/swarm-js/node_modules/mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/swarm-js/node_modules/p-cancelable": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz", + "integrity": "sha512-RVbZPLso8+jFeq1MfNvgXtCRED2raz/dKpacfTNxsx6pLEpEomM7gah6VeHSYV3+vo0OAi4MkArtQcWWXuQoyw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/swarm-js/node_modules/prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/swarm-js/node_modules/tar": { + "version": "4.4.19", + "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.19.tgz", + "integrity": "sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA==", + "dependencies": { + "chownr": "^1.1.4", + "fs-minipass": "^1.2.7", + "minipass": "^2.9.0", + "minizlib": "^1.3.3", + "mkdirp": "^0.5.5", + "safe-buffer": "^5.2.1", + "yallist": "^3.1.1" + }, + "engines": { + "node": ">=4.5" + } + }, + "node_modules/swarm-js/node_modules/tar/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/swarm-js/node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/swarm-js/node_modules/url-parse-lax": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", + "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", + "dependencies": { + "prepend-http": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/swarm-js/node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + }, + "node_modules/symbol-observable": { + "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, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/tar": { + "version": "6.1.11", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", + "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", + "dev": true, + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^3.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/termcolor": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/termcolor/-/termcolor-0.2.0.tgz", + "integrity": "sha1-KDr//UF6SbpzDpTVwSAhLgsf5HU=", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/terser": { + "version": "5.11.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.11.0.tgz", + "integrity": "sha512-uCA9DLanzzWSsN1UirKwylhhRz3aKPInlfmpGfw8VN6jHsAtu8HJtIpeeHHK23rxnE/cDc+yvmq5wqkIC6Kn0A==", + "dev": true, + "dependencies": { + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map": "~0.7.2", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.1.tgz", + "integrity": "sha512-GvlZdT6wPQKbDNW/GDQzZFg/j4vKU96yl2q6mcUkzKOgW4gwf1Z8cZToUCrz31XHlPWH8MVb1r2tFtdDtTGJ7g==", + "dev": true, + "dependencies": { + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.0", + "source-map": "^0.6.1", + "terser": "^5.7.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/terser-webpack-plugin/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/terser-webpack-plugin/node_modules/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 + }, + "node_modules/terser-webpack-plugin/node_modules/schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/terser-webpack-plugin/node_modules/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, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "node_modules/thunky": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", + "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", + "dev": true + }, + "node_modules/timed-out": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", + "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/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=", + "engines": { + "node": ">=4" + } + }, + "node_modules/to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", + "engines": { + "node": ">=6" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toggle-selection": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/toggle-selection/-/toggle-selection-1.0.6.tgz", + "integrity": "sha1-bkWxJj8gF/oKzH2J14sVuL932jI=" + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dependencies": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/tree-kill": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", + "dev": true, + "bin": { + "tree-kill": "cli.js" + } + }, + "node_modules/tsconfig-paths": { + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.0.tgz", + "integrity": "sha512-cg/1jAZoL57R39+wiw4u/SCC6Ic9Q5NqjBOb+9xISedOYurfog9ZNmKJSxAnb2m/5Bq4lE9lhUcau33Ml8DM0g==", + "dev": true, + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.1", + "minimist": "^1.2.0", + "strip-bom": "^3.0.0" + } + }, + "node_modules/tsconfig-paths/node_modules/json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + }, + "node_modules/tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, + "dependencies": { + "tslib": "^1.8.1" + }, + "engines": { + "node": ">= 6" + }, + "peerDependencies": { + "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + } + }, + "node_modules/tsutils-etc": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/tsutils-etc/-/tsutils-etc-1.4.1.tgz", + "integrity": "sha512-6UPYgc7OXcIW5tFxlsZF3OVSBvDInl/BkS3Xsu64YITXk7WrnWTVByKWPCThFDBp5gl5IGHOzGMdQuDCE7OL4g==", + "dev": true, + "dependencies": { + "@types/yargs": "^17.0.0", + "yargs": "^17.0.0" + }, + "bin": { + "ts-flags": "bin/ts-flags", + "ts-kind": "bin/ts-kind" + }, + "peerDependencies": { + "tsutils": "^3.0.0", + "typescript": "^4.0.0" + } + }, + "node_modules/tsutils/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dependencies": { + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" + }, + "node_modules/type": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", + "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==" + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/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, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typed-assert": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/typed-assert/-/typed-assert-1.0.9.tgz", + "integrity": "sha512-KNNZtayBCtmnNmbo5mG47p1XsCyrx6iVqomjcZnec/1Y5GGARaxPs6r49RnSPeUP3YjNYiU9sQHAtY4BBvnZwg==", + "dev": true + }, + "node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/typescript": { + "version": "4.5.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.5.5.tgz", + "integrity": "sha512-TCTIul70LyWe6IJWT8QSYeA54WQe8EjQFU4wY52Fasj5UKx88LNYKCgBEHcOMOrFF1rKGbD8v/xcNWVUq9SymA==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/u2r": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/u2r/-/u2r-0.1.3.tgz", + "integrity": "sha1-xfx5FnJTIJwWpVzYP0eBY9a9AHQ=", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/ua-parser-js": { + "version": "0.7.31", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.31.tgz", + "integrity": "sha512-qLK/Xe9E2uzmYI3qLeOmI0tEOt+TBBQyUIAh4aAgU05FVYzeZrKUdkAZfBNVGRaHVgV0TDkdEngJSw/SyQchkQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/ua-parser-js" + }, + { + "type": "paypal", + "url": "https://paypal.me/faisalman" + } + ], + "engines": { + "node": "*" + } + }, + "node_modules/ultron": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", + "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==" + }, + "node_modules/unbox-primitive": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", + "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", + "dependencies": { + "function-bind": "^1.1.1", + "has-bigints": "^1.0.1", + "has-symbols": "^1.0.2", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "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, + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz", + "integrity": "sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz", + "integrity": "sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "dev": true, + "dependencies": { + "unique-slug": "^2.0.0" + } + }, + "node_modules/unique-slug": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", + "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4" + } + }, + "node_modules/universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "dev": true, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "dev": true, + "dependencies": { + "punycode": "1.3.2", + "querystring": "0.2.0" + } + }, + "node_modules/url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", + "dependencies": { + "prepend-http": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/url-set-query": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-set-query/-/url-set-query-1.0.0.tgz", + "integrity": "sha1-AW6M/Xwg7gXK/neV6JK9BwL6ozk=" + }, + "node_modules/url-to-options": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz", + "integrity": "sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k=", + "engines": { + "node": ">= 4" + } + }, + "node_modules/url/node_modules/punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", + "dev": true + }, + "node_modules/utf-8-validate": { + "version": "5.0.9", + "resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.9.tgz", + "integrity": "sha512-Yek7dAy0v3Kl0orwMlvi7TPtiCNrdfHNd7Gcc/pLq4BLXqfAmd0J7OWMizUQnTTJsyjKn02mU7anqwfmUP4J8Q==", + "hasInstallScript": true, + "dependencies": { + "node-gyp-build": "^4.3.0" + }, + "engines": { + "node": ">=6.14.2" + } + }, + "node_modules/utf8": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/utf8/-/utf8-3.0.0.tgz", + "integrity": "sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==" + }, + "node_modules/util": { + "version": "0.12.4", + "resolved": "https://registry.npmjs.org/util/-/util-0.12.4.tgz", + "integrity": "sha512-bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw==", + "dependencies": { + "inherits": "^2.0.3", + "is-arguments": "^1.0.4", + "is-generator-function": "^1.0.7", + "is-typed-array": "^1.1.3", + "safe-buffer": "^5.1.2", + "which-typed-array": "^1.1.2" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "dev": true, + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/v8-compile-cache": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", + "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", + "dev": true + }, + "node_modules/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=", + "dev": true, + "dependencies": { + "builtins": "^1.0.3" + } + }, + "node_modules/varint": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/varint/-/varint-5.0.2.tgz", + "integrity": "sha512-lKxKYG6H03yCZUpAGOPOsMcGxd1RHCu1iKvEHYDPmTyq2HueGhD73ssNBqqQWfvYs04G9iUFRvmAVLW20Jw6ow==" + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "node_modules/verror/node_modules/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=" + }, + "node_modules/void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", + "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.3.1.tgz", + "integrity": "sha512-x0t0JuydIo8qCNctdDrn1OzH/qDzk2+rdCOC3YzumZ42fiMqmQ7T3xQurykYMhYfHaPHTp4ZxAx2NfUo1K6QaA==", + "dev": true, + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "dev": true, + "dependencies": { + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", + "dev": true, + "dependencies": { + "defaults": "^1.0.3" + } + }, + "node_modules/web3": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3/-/web3-1.7.1.tgz", + "integrity": "sha512-RKVdyZ5FuVEykj62C1o2tc0teJciSOh61jpVB9yb344dBHO3ZV4XPPP24s/PPqIMXmVFN00g2GD9M/v1SoHO/A==", + "hasInstallScript": true, + "dependencies": { + "web3-bzz": "1.7.1", + "web3-core": "1.7.1", + "web3-eth": "1.7.1", + "web3-eth-personal": "1.7.1", + "web3-net": "1.7.1", + "web3-shh": "1.7.1", + "web3-utils": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-bzz": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-bzz/-/web3-bzz-1.7.1.tgz", + "integrity": "sha512-sVeUSINx4a4pfdnT+3ahdRdpDPvZDf4ZT/eBF5XtqGWq1mhGTl8XaQAk15zafKVm6Onq28vN8abgB/l+TrG8kA==", + "hasInstallScript": true, + "dependencies": { + "@types/node": "^12.12.6", + "got": "9.6.0", + "swarm-js": "^0.1.40" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-core": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-core/-/web3-core-1.7.1.tgz", + "integrity": "sha512-HOyDPj+4cNyeNPwgSeUkhtS0F+Pxc2obcm4oRYPW5ku6jnTO34pjaij0us+zoY3QEusR8FfAKVK1kFPZnS7Dzw==", + "dependencies": { + "@types/bn.js": "^4.11.5", + "@types/node": "^12.12.6", + "bignumber.js": "^9.0.0", + "web3-core-helpers": "1.7.1", + "web3-core-method": "1.7.1", + "web3-core-requestmanager": "1.7.1", + "web3-utils": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-core-helpers": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.7.1.tgz", + "integrity": "sha512-xn7Sx+s4CyukOJdlW8bBBDnUCWndr+OCJAlUe/dN2wXiyaGRiCWRhuQZrFjbxLeBt1fYFH7uWyYHhYU6muOHgw==", + "dependencies": { + "web3-eth-iban": "1.7.1", + "web3-utils": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-core-method": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-core-method/-/web3-core-method-1.7.1.tgz", + "integrity": "sha512-383wu5FMcEphBFl5jCjk502JnEg3ugHj7MQrsX7DY76pg5N5/dEzxeEMIJFCN6kr5Iq32NINOG3VuJIyjxpsEg==", + "dependencies": { + "@ethersproject/transactions": "^5.0.0-beta.135", + "web3-core-helpers": "1.7.1", + "web3-core-promievent": "1.7.1", + "web3-core-subscriptions": "1.7.1", + "web3-utils": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-core-promievent": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-core-promievent/-/web3-core-promievent-1.7.1.tgz", + "integrity": "sha512-Vd+CVnpPejrnevIdxhCkzMEywqgVbhHk/AmXXceYpmwA6sX41c5a65TqXv1i3FWRJAz/dW7oKz9NAzRIBAO/kA==", + "dependencies": { + "eventemitter3": "4.0.4" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-core-promievent/node_modules/eventemitter3": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", + "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==" + }, + "node_modules/web3-core-requestmanager": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-core-requestmanager/-/web3-core-requestmanager-1.7.1.tgz", + "integrity": "sha512-/EHVTiMShpZKiq0Jka0Vgguxi3vxq1DAHKxg42miqHdUsz4/cDWay2wGALDR2x3ofDB9kqp7pb66HsvQImQeag==", + "dependencies": { + "util": "^0.12.0", + "web3-core-helpers": "1.7.1", + "web3-providers-http": "1.7.1", + "web3-providers-ipc": "1.7.1", + "web3-providers-ws": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-core-subscriptions": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-core-subscriptions/-/web3-core-subscriptions-1.7.1.tgz", + "integrity": "sha512-NZBsvSe4J+Wt16xCf4KEtBbxA9TOwSVr8KWfUQ0tC2KMdDYdzNswl0Q9P58xaVuNlJ3/BH+uDFZJJ5E61BSA1Q==", + "dependencies": { + "eventemitter3": "4.0.4", + "web3-core-helpers": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-core-subscriptions/node_modules/eventemitter3": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", + "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==" + }, + "node_modules/web3-eth": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth/-/web3-eth-1.7.1.tgz", + "integrity": "sha512-Uz3gO4CjTJ+hMyJZAd2eiv2Ur1uurpN7sTMATWKXYR/SgG+SZgncnk/9d8t23hyu4lyi2GiVL1AqVqptpRElxg==", + "dependencies": { + "web3-core": "1.7.1", + "web3-core-helpers": "1.7.1", + "web3-core-method": "1.7.1", + "web3-core-subscriptions": "1.7.1", + "web3-eth-abi": "1.7.1", + "web3-eth-accounts": "1.7.1", + "web3-eth-contract": "1.7.1", + "web3-eth-ens": "1.7.1", + "web3-eth-iban": "1.7.1", + "web3-eth-personal": "1.7.1", + "web3-net": "1.7.1", + "web3-utils": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-abi": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth-abi/-/web3-eth-abi-1.7.1.tgz", + "integrity": "sha512-8BVBOoFX1oheXk+t+uERBibDaVZ5dxdcefpbFTWcBs7cdm0tP8CD1ZTCLi5Xo+1bolVHNH2dMSf/nEAssq5pUA==", + "dependencies": { + "@ethersproject/abi": "5.0.7", + "web3-utils": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-accounts": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth-accounts/-/web3-eth-accounts-1.7.1.tgz", + "integrity": "sha512-3xGQ2bkTQc7LFoqGWxp5cQDrKndlX05s7m0rAFVoyZZODMqrdSGjMPMqmWqHzJRUswNEMc+oelqSnGBubqhguQ==", + "dependencies": { + "@ethereumjs/common": "^2.5.0", + "@ethereumjs/tx": "^3.3.2", + "crypto-browserify": "3.12.0", + "eth-lib": "0.2.8", + "ethereumjs-util": "^7.0.10", + "scrypt-js": "^3.0.1", + "uuid": "3.3.2", + "web3-core": "1.7.1", + "web3-core-helpers": "1.7.1", + "web3-core-method": "1.7.1", + "web3-utils": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-accounts/node_modules/eth-lib": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", + "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/web3-eth-accounts/node_modules/uuid": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/web3-eth-contract": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth-contract/-/web3-eth-contract-1.7.1.tgz", + "integrity": "sha512-HpnbkPYkVK3lOyos2SaUjCleKfbF0SP3yjw7l551rAAi5sIz/vwlEzdPWd0IHL7ouxXbO0tDn7jzWBRcD3sTbA==", + "dependencies": { + "@types/bn.js": "^4.11.5", + "web3-core": "1.7.1", + "web3-core-helpers": "1.7.1", + "web3-core-method": "1.7.1", + "web3-core-promievent": "1.7.1", + "web3-core-subscriptions": "1.7.1", + "web3-eth-abi": "1.7.1", + "web3-utils": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-ens": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth-ens/-/web3-eth-ens-1.7.1.tgz", + "integrity": "sha512-DVCF76i9wM93DrPQwLrYiCw/UzxFuofBsuxTVugrnbm0SzucajLLNftp3ITK0c4/lV3x9oo5ER/wD6RRMHQnvw==", + "dependencies": { + "content-hash": "^2.5.2", + "eth-ens-namehash": "2.0.8", + "web3-core": "1.7.1", + "web3-core-helpers": "1.7.1", + "web3-core-promievent": "1.7.1", + "web3-eth-abi": "1.7.1", + "web3-eth-contract": "1.7.1", + "web3-utils": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-iban": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.7.1.tgz", + "integrity": "sha512-XG4I3QXuKB/udRwZdNEhdYdGKjkhfb/uH477oFVMLBqNimU/Cw8yXUI5qwFKvBHM+hMQWfzPDuSDEDKC2uuiMg==", + "dependencies": { + "bn.js": "^4.11.9", + "web3-utils": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-personal": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth-personal/-/web3-eth-personal-1.7.1.tgz", + "integrity": "sha512-02H6nFBNfNmFjMGZL6xcDi0r7tUhxrUP91FTFdoLyR94eIJDadPp4rpXfG7MVES873i1PReh4ep5pSCHbc3+Pg==", + "dependencies": { + "@types/node": "^12.12.6", + "web3-core": "1.7.1", + "web3-core-helpers": "1.7.1", + "web3-core-method": "1.7.1", + "web3-net": "1.7.1", + "web3-utils": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-net": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-net/-/web3-net-1.7.1.tgz", + "integrity": "sha512-8yPNp2gvjInWnU7DCoj4pIPNhxzUjrxKlODsyyXF8j0q3Z2VZuQp+c63gL++r2Prg4fS8t141/HcJw4aMu5sVA==", + "dependencies": { + "web3-core": "1.7.1", + "web3-core-method": "1.7.1", + "web3-utils": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-provider-engine": { + "version": "16.0.1", + "resolved": "https://registry.npmjs.org/web3-provider-engine/-/web3-provider-engine-16.0.1.tgz", + "integrity": "sha512-/Eglt2aocXMBiDj7Se/lyZnNDaHBaoJlaUfbP5HkLJQC/HlGbR+3/W+dINirlJDhh7b54DzgykqY7ksaU5QgTg==", + "dependencies": { + "async": "^2.5.0", + "backoff": "^2.5.0", + "clone": "^2.0.0", + "cross-fetch": "^2.1.0", + "eth-block-tracker": "^4.4.2", + "eth-json-rpc-filters": "^4.2.1", + "eth-json-rpc-infura": "^5.1.0", + "eth-json-rpc-middleware": "^6.0.0", + "eth-rpc-errors": "^3.0.0", + "eth-sig-util": "^1.4.2", + "ethereumjs-block": "^1.2.2", + "ethereumjs-tx": "^1.2.0", + "ethereumjs-util": "^5.1.5", + "ethereumjs-vm": "^2.3.4", + "json-stable-stringify": "^1.0.1", + "promise-to-callback": "^1.0.0", + "readable-stream": "^2.2.9", + "request": "^2.85.0", + "semaphore": "^1.0.3", + "ws": "^5.1.1", + "xhr": "^2.2.0", + "xtend": "^4.0.1" + } + }, + "node_modules/web3-provider-engine/node_modules/clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/web3-provider-engine/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/web3-provider-engine/node_modules/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==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/web3-provider-engine/node_modules/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==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/web3-provider-engine/node_modules/ws": { + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-5.2.3.tgz", + "integrity": "sha512-jZArVERrMsKUatIdnLzqvcfydI85dvd/Fp1u/VOpfdDWQ4c9qWXe+VIeAbQ5FrDwciAkr+lzofXLz3Kuf26AOA==", + "dependencies": { + "async-limiter": "~1.0.0" + } + }, + "node_modules/web3-providers-http": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-providers-http/-/web3-providers-http-1.7.1.tgz", + "integrity": "sha512-dmiO6G4dgAa3yv+2VD5TduKNckgfR97VI9YKXVleWdcpBoKXe2jofhdvtafd42fpIoaKiYsErxQNcOC5gI/7Vg==", + "dependencies": { + "web3-core-helpers": "1.7.1", + "xhr2-cookies": "1.1.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-providers-ipc": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-providers-ipc/-/web3-providers-ipc-1.7.1.tgz", + "integrity": "sha512-uNgLIFynwnd5M9ZC0lBvRQU5iLtU75hgaPpc7ZYYR+kjSk2jr2BkEAQhFVJ8dlqisrVmmqoAPXOEU0flYZZgNQ==", + "dependencies": { + "oboe": "2.1.5", + "web3-core-helpers": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-providers-ws": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-providers-ws/-/web3-providers-ws-1.7.1.tgz", + "integrity": "sha512-Uj0n5hdrh0ESkMnTQBsEUS2u6Unqdc7Pe4Zl+iZFb7Yn9cIGsPJBl7/YOP4137EtD5ueXAv+MKwzcelpVhFiFg==", + "dependencies": { + "eventemitter3": "4.0.4", + "web3-core-helpers": "1.7.1", + "websocket": "^1.0.32" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-providers-ws/node_modules/eventemitter3": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", + "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==" + }, + "node_modules/web3-shh": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-shh/-/web3-shh-1.7.1.tgz", + "integrity": "sha512-NO+jpEjo8kYX6c7GiaAm57Sx93PLYkWYUCWlZmUOW7URdUcux8VVluvTWklGPvdM9H1WfDrol91DjuSW+ykyqg==", + "hasInstallScript": true, + "dependencies": { + "web3-core": "1.7.1", + "web3-core-method": "1.7.1", + "web3-core-subscriptions": "1.7.1", + "web3-net": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-utils": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.7.1.tgz", + "integrity": "sha512-fef0EsqMGJUgiHPdX+KN9okVWshbIumyJPmR+btnD1HgvoXijKEkuKBv0OmUqjbeqmLKP2/N9EiXKJel5+E1Dw==", + "dependencies": { + "bn.js": "^4.11.9", + "ethereum-bloom-filters": "^1.0.6", + "ethereumjs-util": "^7.1.0", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "utf8": "3.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3modal": { + "version": "1.9.5", + "resolved": "https://registry.npmjs.org/web3modal/-/web3modal-1.9.5.tgz", + "integrity": "sha512-L5ME6zgoaCDa+T66skW9WpxGOJX6vU9v+7aLacoQJhU3AMTk784ionpX+Pg4UdhdM+UQW+odge32GkwEX11czQ==", + "dependencies": { + "detect-browser": "^5.1.0", + "prop-types": "^15.7.2", + "react": "^16.8.6", + "react-dom": "^16.8.6", + "styled-components": "^5.3.3", + "tslib": "^1.10.0" + } + }, + "node_modules/web3modal/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/webpack": { + "version": "5.67.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.67.0.tgz", + "integrity": "sha512-LjFbfMh89xBDpUMgA1W9Ur6Rn/gnr2Cq1jjHFPo4v6a79/ypznSYbAyPgGhwsxBtMIaEmDD1oJoA7BEYw/Fbrw==", + "dev": true, + "dependencies": { + "@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.3", + "es-module-lexer": "^0.9.0", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.9", + "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.3.1", + "webpack-sources": "^3.2.3" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-dev-middleware": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.0.tgz", + "integrity": "sha512-MouJz+rXAm9B1OTOYaJnn6rtD/lWZPy2ufQCH3BPs8Rloh/Du6Jze4p7AeLYHkVi0giJnYLaSGDC7S+GM9arhg==", + "dev": true, + "dependencies": { + "colorette": "^2.0.10", + "memfs": "^3.2.2", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/webpack-dev-middleware/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/webpack-dev-middleware/node_modules/schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/webpack-dev-server": { + "version": "4.7.3", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.7.3.tgz", + "integrity": "sha512-mlxq2AsIw2ag016nixkzUkdyOE8ST2GTy34uKSABp1c4nhjZvH90D5ZRR+UOLSsG4Z3TFahAi72a3ymRtfRm+Q==", + "dev": true, + "dependencies": { + "@types/bonjour": "^3.5.9", + "@types/connect-history-api-fallback": "^1.3.5", + "@types/serve-index": "^1.9.1", + "@types/sockjs": "^0.3.33", + "@types/ws": "^8.2.2", + "ansi-html-community": "^0.0.8", + "bonjour": "^3.5.0", + "chokidar": "^3.5.2", + "colorette": "^2.0.10", + "compression": "^1.7.4", + "connect-history-api-fallback": "^1.6.0", + "default-gateway": "^6.0.3", + "del": "^6.0.0", + "express": "^4.17.1", + "graceful-fs": "^4.2.6", + "html-entities": "^2.3.2", + "http-proxy-middleware": "^2.0.0", + "ipaddr.js": "^2.0.1", + "open": "^8.0.9", + "p-retry": "^4.5.0", + "portfinder": "^1.0.28", + "schema-utils": "^4.0.0", + "selfsigned": "^2.0.0", + "serve-index": "^1.9.1", + "sockjs": "^0.3.21", + "spdy": "^4.0.2", + "strip-ansi": "^7.0.0", + "webpack-dev-middleware": "^5.3.0", + "ws": "^8.1.0" + }, + "bin": { + "webpack-dev-server": "bin/webpack-dev-server.js" + }, + "engines": { + "node": ">= 12.13.0" + }, + "peerDependencies": { + "webpack": "^4.37.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-dev-server/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/webpack-dev-server/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/webpack-dev-server/node_modules/schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/webpack-dev-server/node_modules/strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/webpack-merge": { + "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, + "dependencies": { + "clone-deep": "^4.0.1", + "wildcard": "^2.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "dev": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack-subresource-integrity": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-5.1.0.tgz", + "integrity": "sha512-sacXoX+xd8r4WKsy9MvH/q/vBtEHr86cpImXwyg74pFIpERKt6FmB8cXpeuh0ZLgclOlHI4Wcll7+R5L02xk9Q==", + "dev": true, + "dependencies": { + "typed-assert": "^1.0.8" + }, + "engines": { + "node": ">= 12" + }, + "peerDependencies": { + "html-webpack-plugin": ">= 5.0.0-beta.1 < 6", + "webpack": "^5.12.0" + }, + "peerDependenciesMeta": { + "html-webpack-plugin": { + "optional": true + } + } + }, + "node_modules/webpack/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/webpack/node_modules/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 + }, + "node_modules/webpack/node_modules/schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/websocket": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/websocket/-/websocket-1.0.34.tgz", + "integrity": "sha512-PRDso2sGwF6kM75QykIesBijKSVceR6jL2G8NGYyq2XrItNC2P5/qL5XeR056GhA+Ly7JMFvJb9I312mJfmqnQ==", + "dependencies": { + "bufferutil": "^4.0.1", + "debug": "^2.2.0", + "es5-ext": "^0.10.50", + "typedarray-to-buffer": "^3.1.5", + "utf-8-validate": "^5.0.2", + "yaeti": "^0.0.6" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/websocket-driver": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", + "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", + "dev": true, + "dependencies": { + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", + "websocket-extensions": ">=0.1.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/websocket-extensions": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", + "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/websocket/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/websocket/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/whatwg-fetch": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz", + "integrity": "sha512-dcQ1GWpOD/eEQ97k66aiEVpNnapVj90/+R+SXTPYGHpYBBypfKJEQjLrvMZ7YXbKm21gXd4NcuxUTjiv1YtLng==" + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=" + }, + "node_modules/which-typed-array": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.7.tgz", + "integrity": "sha512-vjxaB4nfDqwKI0ws7wZpxIlde1XrLX5uB0ZjpfshgmapJMD7jJWhZI+yToJTqaFByF0eNBcYxbjmCzoRP7CfEw==", + "dependencies": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "es-abstract": "^1.18.5", + "foreach": "^2.0.5", + "has-tostringtag": "^1.0.0", + "is-typed-array": "^1.1.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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, + "dependencies": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "node_modules/wildcard": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", + "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", + "dev": true + }, + "node_modules/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==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi": { + "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, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/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, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi/node_modules/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 + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "node_modules/ws": { + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz", + "integrity": "sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xhr": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.6.0.tgz", + "integrity": "sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==", + "dependencies": { + "global": "~4.4.0", + "is-function": "^1.0.1", + "parse-headers": "^2.0.0", + "xtend": "^4.0.0" + } + }, + "node_modules/xhr-request": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/xhr-request/-/xhr-request-1.1.0.tgz", + "integrity": "sha512-Y7qzEaR3FDtL3fP30k9wO/e+FBnBByZeybKOhASsGP30NIkRAAkKD/sCnLvgEfAIEC1rcmK7YG8f4oEnIrrWzA==", + "dependencies": { + "buffer-to-arraybuffer": "^0.0.5", + "object-assign": "^4.1.1", + "query-string": "^5.0.1", + "simple-get": "^2.7.0", + "timed-out": "^4.0.1", + "url-set-query": "^1.0.0", + "xhr": "^2.0.4" + } + }, + "node_modules/xhr-request-promise": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/xhr-request-promise/-/xhr-request-promise-0.1.3.tgz", + "integrity": "sha512-YUBytBsuwgitWtdRzXDDkWAXzhdGB8bYm0sSzMPZT7Z2MBjMSTHFsyCT1yCRATY+XC69DUrQraRAEgcoCRaIPg==", + "dependencies": { + "xhr-request": "^1.1.0" + } + }, + "node_modules/xhr2-cookies": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/xhr2-cookies/-/xhr2-cookies-1.1.0.tgz", + "integrity": "sha1-fXdEnQmZGX8VXLc7I99yUF7YnUg=", + "dependencies": { + "cookiejar": "^2.1.1" + } + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "engines": { + "node": ">=0.4" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yaeti": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/yaeti/-/yaeti-0.0.6.tgz", + "integrity": "sha1-8m9ITXJoTPQr7ft2lwqhYI+/lXc=", + "engines": { + "node": ">=0.10.32" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/yargs": { + "version": "17.3.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.3.1.tgz", + "integrity": "sha512-WUANQeVgjLbNsEmGk20f+nlHgOqzRFpiGWVaBrYGYIGANIIu3lWjoyi0fNlFmJkvfhCZ6BXINe7/W2O2bV4iaA==", + "dev": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.0.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.0.1.tgz", + "integrity": "sha512-9BK1jFpLzJROCI5TzwZL/TU4gqjK5xiHV/RfWLOahrjAko/e4DJkRDZQXfvqAsiZzzYhgAzbgz6lg48jcm4GLg==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/zone.js": { + "version": "0.11.5", + "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.11.5.tgz", + "integrity": "sha512-D1/7VxEuQ7xk6z/kAROe4SUbd9CzxY4zOwVGnGHerd/SgLIVU5f4esDzQUsOCeArn933BZfWMKydH7l7dPEp0g==", + "dependencies": { + "tslib": "^2.3.0" + } + } + }, + "dependencies": { + "@ampproject/remapping": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-1.1.1.tgz", + "integrity": "sha512-YVAcA4DKLOj296CF5SrQ8cYiMRiUGc2sqFpLxsDGWE34suHqhGP/5yMsDHKsrh8hs8I5TiRVXNwKPWQpX3iGjw==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "^3.0.3", + "sourcemap-codec": "1.4.8" + } + }, + "@angular-devkit/architect": { + "version": "0.1302.6", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1302.6.tgz", + "integrity": "sha512-NztzorUMfwJeRaT7SY00Y8WSqc2lQYuF11yNoyEm7Dae3V7VZ28rW2Z9RwibP27rYQL0RjSMaz2wKITHX2vOAw==", + "dev": true, + "requires": { + "@angular-devkit/core": "13.2.6", + "rxjs": "6.6.7" + }, + "dependencies": { + "rxjs": { + "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": "13.2.6", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-13.2.6.tgz", + "integrity": "sha512-Y2ojy6xbZ0kwScppcutLHBP8eW0qNOjburTISSBU/L5l/9FOeZ1E7yAreKuVu/qibZiLbSJfAhk+SLwhRHFSSQ==", + "dev": true, + "requires": { + "@ampproject/remapping": "1.1.1", + "@angular-devkit/architect": "0.1302.6", + "@angular-devkit/build-webpack": "0.1302.6", + "@angular-devkit/core": "13.2.6", + "@babel/core": "7.16.12", + "@babel/generator": "7.16.8", + "@babel/helper-annotate-as-pure": "7.16.7", + "@babel/plugin-proposal-async-generator-functions": "7.16.8", + "@babel/plugin-transform-async-to-generator": "7.16.8", + "@babel/plugin-transform-runtime": "7.16.10", + "@babel/preset-env": "7.16.11", + "@babel/runtime": "7.16.7", + "@babel/template": "7.16.7", + "@discoveryjs/json-ext": "0.5.6", + "@ngtools/webpack": "13.2.6", + "ansi-colors": "4.1.1", + "babel-loader": "8.2.3", + "babel-plugin-istanbul": "6.1.1", + "browserslist": "^4.9.1", + "cacache": "15.3.0", + "circular-dependency-plugin": "5.2.2", + "copy-webpack-plugin": "10.2.1", + "core-js": "3.20.3", + "critters": "0.0.16", + "css-loader": "6.5.1", + "esbuild": "0.14.22", + "esbuild-wasm": "0.14.22", + "glob": "7.2.0", + "https-proxy-agent": "5.0.0", + "inquirer": "8.2.0", + "jsonc-parser": "3.0.0", + "karma-source-map-support": "1.4.0", + "less": "4.1.2", + "less-loader": "10.2.0", + "license-webpack-plugin": "4.0.2", + "loader-utils": "3.2.0", + "mini-css-extract-plugin": "2.5.3", + "minimatch": "3.0.4", + "open": "8.4.0", + "ora": "5.4.1", + "parse5-html-rewriting-stream": "6.0.1", + "piscina": "3.2.0", + "postcss": "8.4.5", + "postcss-import": "14.0.2", + "postcss-loader": "6.2.1", + "postcss-preset-env": "7.2.3", + "regenerator-runtime": "0.13.9", + "resolve-url-loader": "5.0.0", + "rxjs": "6.6.7", + "sass": "1.49.0", + "sass-loader": "12.4.0", + "semver": "7.3.5", + "source-map-loader": "3.0.1", + "source-map-support": "0.5.21", + "stylus": "0.56.0", + "stylus-loader": "6.2.0", + "terser": "5.11.0", + "text-table": "0.2.0", + "tree-kill": "1.2.2", + "tslib": "2.3.1", + "webpack": "5.67.0", + "webpack-dev-middleware": "5.3.0", + "webpack-dev-server": "4.7.3", + "webpack-merge": "5.8.0", + "webpack-subresource-integrity": "5.1.0" + }, + "dependencies": { + "esbuild": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.14.22.tgz", + "integrity": "sha512-CjFCFGgYtbFOPrwZNJf7wsuzesx8kqwAffOlbYcFDLFuUtP8xloK1GH+Ai13Qr0RZQf9tE7LMTHJ2iVGJ1SKZA==", + "dev": true, + "optional": true, + "requires": { + "esbuild-android-arm64": "0.14.22", + "esbuild-darwin-64": "0.14.22", + "esbuild-darwin-arm64": "0.14.22", + "esbuild-freebsd-64": "0.14.22", + "esbuild-freebsd-arm64": "0.14.22", + "esbuild-linux-32": "0.14.22", + "esbuild-linux-64": "0.14.22", + "esbuild-linux-arm": "0.14.22", + "esbuild-linux-arm64": "0.14.22", + "esbuild-linux-mips64le": "0.14.22", + "esbuild-linux-ppc64le": "0.14.22", + "esbuild-linux-riscv64": "0.14.22", + "esbuild-linux-s390x": "0.14.22", + "esbuild-netbsd-64": "0.14.22", + "esbuild-openbsd-64": "0.14.22", + "esbuild-sunos-64": "0.14.22", + "esbuild-windows-32": "0.14.22", + "esbuild-windows-64": "0.14.22", + "esbuild-windows-arm64": "0.14.22" + } + }, + "rxjs": { + "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 + } + } + } + } + }, + "@angular-devkit/build-webpack": { + "version": "0.1302.6", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1302.6.tgz", + "integrity": "sha512-TYEh2n9tPe932rEIgdiSpojOqtDppW2jzb/empVqCkLF7WUZsXKvTanttZC34L6R2VD6SAGWhb6JDg75ghUVYA==", + "dev": true, + "requires": { + "@angular-devkit/architect": "0.1302.6", + "rxjs": "6.6.7" + }, + "dependencies": { + "rxjs": { + "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": "13.2.6", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-13.2.6.tgz", + "integrity": "sha512-8h2mWdBTN/dYwZuzKMg2IODlOWMdbJcpQG4XVrkk9ejCPP+3aX5Aa3glCe/voN6eBNiRfs8YDM0jxmpN2aWVtg==", + "dev": true, + "requires": { + "ajv": "8.9.0", + "ajv-formats": "2.1.1", + "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.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": "13.2.6", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-13.2.6.tgz", + "integrity": "sha512-mPgSqdnZRuPSMeUA+T+mwVCrq2yhXpcYm1/Rjbhy09CyHs4wSrFv21WHCrE6shlvXpcmwr0n+I0DIeagAPmjUA==", + "dev": true, + "requires": { + "@angular-devkit/core": "13.2.6", + "jsonc-parser": "3.0.0", + "magic-string": "0.25.7", + "ora": "5.4.1", + "rxjs": "6.6.7" + }, + "dependencies": { + "rxjs": { + "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/builder": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/builder/-/builder-13.1.0.tgz", + "integrity": "sha512-RdyeetctnipVdCBrU/mipJ2XKiLC1yGmK1Sfbbgwu0s49CAdOArY/b+b8OU3yyy4EO1EGKQMlzs6F3wTYgiZCA==", + "dev": true, + "requires": { + "@nrwl/devkit": "13.1.3" + } + }, + "@angular-eslint/bundled-angular-compiler": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/bundled-angular-compiler/-/bundled-angular-compiler-13.1.0.tgz", + "integrity": "sha512-0VSAZ3zrHkKdbvogQ4GLSf+lKojtPL3LXLlvXU9xNgNsqw68+gSNwaWd595tXoQCmpwWpTerKUbyIsGnPA7EYA==", + "dev": true + }, + "@angular-eslint/eslint-plugin": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/eslint-plugin/-/eslint-plugin-13.1.0.tgz", + "integrity": "sha512-WiggBWPhhpSjcYVHJiawCduCsydM/RPudUE8zxv0Nmj/APuzNgvUr6E//uYTrhNv9EIJoZutRovw7R4Y/yXj4Q==", + "dev": true, + "requires": { + "@angular-eslint/utils": "13.1.0", + "@typescript-eslint/experimental-utils": "5.11.0" + } + }, + "@angular-eslint/eslint-plugin-template": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/eslint-plugin-template/-/eslint-plugin-template-13.1.0.tgz", + "integrity": "sha512-ceZAMjufE58aduOW/UwjrbCRWocYC0zOEJ2jUkPt6jlL8yzc+SC6UitO0VmMgUsCizHueav5/3gKy05xqwk/CA==", + "dev": true, + "requires": { + "@angular-eslint/bundled-angular-compiler": "13.1.0", + "@typescript-eslint/experimental-utils": "5.11.0", + "aria-query": "^4.2.2", + "axobject-query": "^2.2.0" + } + }, + "@angular-eslint/schematics": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/schematics/-/schematics-13.1.0.tgz", + "integrity": "sha512-/gVtkRP09cGhnUF3tr0phwNA5/ml94V3cqO8X4Z4QmyAaIwxuOJ0mJvWrVN7aurURxh9WoeWD/HXOvtC5igtpQ==", + "dev": true, + "requires": { + "@angular-eslint/eslint-plugin": "13.1.0", + "@angular-eslint/eslint-plugin-template": "13.1.0", + "ignore": "5.2.0", + "strip-json-comments": "3.1.1", + "tmp": "0.2.1" + }, + "dependencies": { + "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" + } + } + } + }, + "@angular-eslint/template-parser": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/template-parser/-/template-parser-13.1.0.tgz", + "integrity": "sha512-gKV+kms+kYm1HdToH3j4HL1RrjvMHscVkhwjoV1WbJColnfDivVAZ6/5/J92/A/8r7vJptQkftsbiaGKDyg47w==", + "dev": true, + "requires": { + "@angular-eslint/bundled-angular-compiler": "13.1.0", + "eslint-scope": "^5.1.0" + } + }, + "@angular-eslint/utils": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/utils/-/utils-13.1.0.tgz", + "integrity": "sha512-iLmYMXNk+1sFMIlYXN8/Z5UcNAOno38v10lzo4bMjCpzXKkMa0O2b+4qi+469iUJAU6RAZ5weUL+S2Wtlr0ooA==", + "dev": true, + "requires": { + "@angular-eslint/bundled-angular-compiler": "13.1.0", + "@typescript-eslint/experimental-utils": "5.11.0" + } + }, + "@angular/animations": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-13.2.6.tgz", + "integrity": "sha512-DrjpKo68uR3lSLQQXosoTCbjKQS6IKRCpR14E2t8fo0AX8i2hkB8je4SrhdCyB7FgFN7l2kgUYo4Qa8+BOB+aA==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@angular/cdk": { + "version": "13.3.0", + "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-13.3.0.tgz", + "integrity": "sha512-TyTcs9/Vd0TyQIjRf40xCDrTBK2GGCUrrHCVuHTXIqL8yvaGRnz815fL9X3hSZySCcbRV4NeK1yWeiZ9jf4Vxw==", + "requires": { + "parse5": "^5.0.0", + "tslib": "^2.3.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 + } + } + }, + "@angular/cli": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-13.2.6.tgz", + "integrity": "sha512-xIjEaQI5sWemXXc7GXLm4u9UL5sjtrQL/y1PJvvk/Jsa8+kIT+MutOfZfC7zcdAh9fqHd8mokH3guFV8BJdFxA==", + "dev": true, + "requires": { + "@angular-devkit/architect": "0.1302.6", + "@angular-devkit/core": "13.2.6", + "@angular-devkit/schematics": "13.2.6", + "@schematics/angular": "13.2.6", + "@yarnpkg/lockfile": "1.1.0", + "ansi-colors": "4.1.1", + "debug": "4.3.3", + "ini": "2.0.0", + "inquirer": "8.2.0", + "jsonc-parser": "3.0.0", + "npm-package-arg": "8.1.5", + "npm-pick-manifest": "6.1.1", + "open": "8.4.0", + "ora": "5.4.1", + "pacote": "12.0.3", + "resolve": "1.22.0", + "semver": "7.3.5", + "symbol-observable": "4.0.0", + "uuid": "8.3.2" + } + }, + "@angular/common": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-13.2.6.tgz", + "integrity": "sha512-t4XRb9db4UeRcPs5aHNtGuXRKSvGBlTEr0zzSeoKzHD9TCaO4dSDISh9obS9hThaPuBmPKRUHN5KE1HFmqnSHg==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@angular/compiler": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-13.2.6.tgz", + "integrity": "sha512-LHU29J2/c/03WHkwtzUSElTBsXbzkKdYARodnNfsFdLPsWhyvzO3cqlcZYteFJxEy3dVH+ZrYDjqQ9Sp17aIgA==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@angular/compiler-cli": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-13.2.6.tgz", + "integrity": "sha512-QtlLKj3m6a2nkewFxhg+a3tQ2gEIBzMfI2c1laWUfAfJJ56phj79k8Z/kf2HQxypphWixyTK+ugpTlMdvvOquA==", + "dev": true, + "requires": { + "@babel/core": "^7.17.2", + "chokidar": "^3.0.0", + "convert-source-map": "^1.5.1", + "dependency-graph": "^0.11.0", + "magic-string": "^0.26.0", + "reflect-metadata": "^0.1.2", + "semver": "^7.0.0", + "sourcemap-codec": "^1.4.8", + "tslib": "^2.3.0", + "yargs": "^17.2.1" + }, + "dependencies": { + "@ampproject/remapping": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.1.2.tgz", + "integrity": "sha512-hoyByceqwKirw7w3Z7gnIIZC3Wx3J484Y3L/cMpXFbr7d9ZQj2mODrirNzcJa+SM3UlpWXYvKV4RlRpFXlWgXg==", + "dev": true, + "requires": { + "@jridgewell/trace-mapping": "^0.3.0" + } + }, + "@babel/core": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.7.tgz", + "integrity": "sha512-djHlEfFHnSnTAcPb7dATbiM5HxGOP98+3JLBZtjRb5I7RXrw7kFRoG2dXM8cm3H+o11A8IFH/uprmJpwFynRNQ==", + "dev": true, + "requires": { + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.17.7", + "@babel/helper-compilation-targets": "^7.17.7", + "@babel/helper-module-transforms": "^7.17.7", + "@babel/helpers": "^7.17.7", + "@babel/parser": "^7.17.7", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.17.3", + "@babel/types": "^7.17.0", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.1.2", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@babel/generator": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.7.tgz", + "integrity": "sha512-oLcVCTeIFadUoArDTwpluncplrYBmTCCZZgXCbgNGvOBBiSDDK3eWO4b/+eOTli5tKv1lg+a5/NAXg+nTcei1w==", + "dev": true, + "requires": { + "@babel/types": "^7.17.0", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + } + }, + "magic-string": { + "version": "0.26.1", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.26.1.tgz", + "integrity": "sha512-ndThHmvgtieXe8J/VGPjG+Apu7v7ItcD5mhEIvOscWjPF/ccOiLxHaSuCAS2G+3x4GKsAbT8u7zdyamupui8Tg==", + "dev": true, + "requires": { + "sourcemap-codec": "^1.4.8" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "@angular/core": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-13.2.6.tgz", + "integrity": "sha512-ctWsxuaSO3d3afLW+wkJSyiEIA2uhaTKNps9x5wz/oZJDaUDYVa4PM4x7/UHn2bXzBjXjN9LSW8h9F31iwmcTg==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@angular/forms": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-13.2.6.tgz", + "integrity": "sha512-3IikvNtO0RBiGb2AWl8aYcE3ivXHPIJz+JOn9Wz9XXSkYx75D3GjuJlz+fVIgz+7Q7tJuS6Q2E5qat/ldeDmoA==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@angular/platform-browser": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-13.2.6.tgz", + "integrity": "sha512-Gc/1TqysW+P+K3NeQihmHWs4KF1mjJT20s06r+YcETnPP11uPk+UxQl7gJNsDV587DYO/wT3oISXVpRw4UJhdQ==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@angular/platform-browser-dynamic": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-13.2.6.tgz", + "integrity": "sha512-m77+pzwZw+4kiRhxzrj1kE3N1K82I8Xt+vEBKSL2Xv42hCX0T37erC6KlztFEDj4A68s5+/0C5vfwhEiDcr/Cw==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@angular/router": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-13.2.6.tgz", + "integrity": "sha512-dA9vL4mPLp+iNegzuvm9FaEWirFI2ZK3WQgbdoxoIpneym+BxRTkNDzPcvEaqfUf7eDGRBqlWakFDrd+H2QEbg==", + "requires": { + "tslib": "^2.3.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.16.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", + "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==", + "requires": { + "@babel/highlight": "^7.16.7" + } + }, + "@babel/compat-data": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.7.tgz", + "integrity": "sha512-p8pdE6j0a29TNGebNm7NzYZWB3xVZJBZ7XGs42uAKzQo8VQ3F0By/cQCtUEABwIqw5zo6WA4NbmxsfzADzMKnQ==" + }, + "@babel/core": { + "version": "7.16.12", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.16.12.tgz", + "integrity": "sha512-dK5PtG1uiN2ikk++5OzSYsitZKny4wOCD0nrO4TqnW4BVBTQ2NGS3NgilvT/TEyxTST7LNyWV/T4tXDoD3fOgg==", + "requires": { + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.16.8", + "@babel/helper-compilation-targets": "^7.16.7", + "@babel/helper-module-transforms": "^7.16.7", + "@babel/helpers": "^7.16.7", + "@babel/parser": "^7.16.12", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.16.10", + "@babel/types": "^7.16.8", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.1.2", + "semver": "^6.3.0", + "source-map": "^0.5.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + } + } + }, + "@babel/generator": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.16.8.tgz", + "integrity": "sha512-1ojZwE9+lOXzcWdWmO6TbUzDfqLD39CmEhN8+2cX9XkDo5yW1OpgfejfliysR2AWLpMamTiOiAp/mtroaymhpw==", + "requires": { + "@babel/types": "^7.16.8", + "jsesc": "^2.5.1", + "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=" + } + } + }, + "@babel/helper-annotate-as-pure": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.7.tgz", + "integrity": "sha512-s6t2w/IPQVTAET1HitoowRGXooX8mCgtuP5195wD/QJPV6wYjpujCGF7JuMODVX2ZAJOf1GT6DT9MHEZvLOFSw==", + "requires": { + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.16.7.tgz", + "integrity": "sha512-C6FdbRaxYjwVu/geKW4ZeQ0Q31AftgRcdSnZ5/jsH6BzCJbtvXvhpfkbkThYSuutZA7nCXpPR6AD9zd1dprMkA==", + "dev": true, + "requires": { + "@babel/helper-explode-assignable-expression": "^7.16.7", + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-compilation-targets": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.7.tgz", + "integrity": "sha512-UFzlz2jjd8kroj0hmCFV5zr+tQPi1dpC2cRsDV/3IEW8bJfCPrPpmcSN6ZS8RqIq4LXcmpipCQFPddyFA5Yc7w==", + "requires": { + "@babel/compat-data": "^7.17.7", + "@babel/helper-validator-option": "^7.16.7", + "browserslist": "^4.17.5", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "@babel/helper-create-class-features-plugin": { + "version": "7.17.6", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.17.6.tgz", + "integrity": "sha512-SogLLSxXm2OkBbSsHZMM4tUi8fUzjs63AT/d0YQIzr6GSd8Hxsbk2KYDX0k0DweAzGMj/YWeiCsorIdtdcW8Eg==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-function-name": "^7.16.7", + "@babel/helper-member-expression-to-functions": "^7.16.7", + "@babel/helper-optimise-call-expression": "^7.16.7", + "@babel/helper-replace-supers": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7" + } + }, + "@babel/helper-create-regexp-features-plugin": { + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.17.0.tgz", + "integrity": "sha512-awO2So99wG6KnlE+TPs6rn83gCz5WlEePJDTnLEqbchMVrBeAujURVphRdigsk094VhvZehFoNOihSlcBjwsXA==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "regexpu-core": "^5.0.1" + } + }, + "@babel/helper-define-polyfill-provider": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.1.tgz", + "integrity": "sha512-J9hGMpJQmtWmj46B3kBHmL38UhJGhYX7eqkcq+2gsstyYt341HmPeWspihX43yVRA0mS+8GGk2Gckc7bY/HCmA==", + "requires": { + "@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.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "@babel/helper-environment-visitor": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz", + "integrity": "sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==", + "requires": { + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-explode-assignable-expression": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.16.7.tgz", + "integrity": "sha512-KyUenhWMC8VrxzkGP0Jizjo4/Zx+1nNZhgocs+gLzyZyB8SHidhoq9KK/8Ato4anhwsivfkBLftky7gvzbZMtQ==", + "dev": true, + "requires": { + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-function-name": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.16.7.tgz", + "integrity": "sha512-QfDfEnIUyyBSR3HtrtGECuZ6DAyCkYFp7GHl75vFtTnn6pjKeK0T1DB5lLkFvBea8MdaiUABx3osbgLyInoejA==", + "requires": { + "@babel/helper-get-function-arity": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.7.tgz", + "integrity": "sha512-flc+RLSOBXzNzVhcLu6ujeHUrD6tANAOU5ojrRx/as+tbzf8+stUCj7+IfRRoAbEZqj/ahXEMsjhOhgeZsrnTw==", + "requires": { + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-hoist-variables": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz", + "integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==", + "requires": { + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.17.7.tgz", + "integrity": "sha512-thxXgnQ8qQ11W2wVUObIqDL4p148VMxkt5T/qpN5k2fboRyzFGFmKsTGViquyM5QHKUy48OZoca8kw4ajaDPyw==", + "dev": true, + "requires": { + "@babel/types": "^7.17.0" + } + }, + "@babel/helper-module-imports": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz", + "integrity": "sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==", + "requires": { + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-module-transforms": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.7.tgz", + "integrity": "sha512-VmZD99F3gNTYB7fJRDTi+u6l/zxY0BE6OIxPSU7a50s6ZUQkHwSDmV92FfM+oCG0pZRVojGYhkR8I0OGeCVREw==", + "requires": { + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-module-imports": "^7.16.7", + "@babel/helper-simple-access": "^7.17.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "@babel/helper-validator-identifier": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.17.3", + "@babel/types": "^7.17.0" + } + }, + "@babel/helper-optimise-call-expression": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.7.tgz", + "integrity": "sha512-EtgBhg7rd/JcnpZFXpBy0ze1YRfdm7BnBX4uKMBd3ixa3RGAE002JZB66FJyNH7g0F38U05pXmA5P8cBh7z+1w==", + "dev": true, + "requires": { + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.16.7.tgz", + "integrity": "sha512-Qg3Nk7ZxpgMrsox6HreY1ZNKdBq7K72tDSliA6dCl5f007jR4ne8iD5UzuNnCJH2xBf2BEEVGr+/OL6Gdp7RxA==" + }, + "@babel/helper-remap-async-to-generator": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.16.8.tgz", + "integrity": "sha512-fm0gH7Flb8H51LqJHy3HJ3wnE1+qtYR2A99K06ahwrawLdOFsCEWjZOrYricXJHoPSudNKxrMBUPEIPxiIIvBw==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-wrap-function": "^7.16.8", + "@babel/types": "^7.16.8" + } + }, + "@babel/helper-replace-supers": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.16.7.tgz", + "integrity": "sha512-y9vsWilTNaVnVh6xiJfABzsNpgDPKev9HnAgz6Gb1p6UUwf9NepdlsV7VXGCftJM+jqD5f7JIEubcpLjZj5dBw==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-member-expression-to-functions": "^7.16.7", + "@babel/helper-optimise-call-expression": "^7.16.7", + "@babel/traverse": "^7.16.7", + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-simple-access": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.17.7.tgz", + "integrity": "sha512-txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA==", + "requires": { + "@babel/types": "^7.17.0" + } + }, + "@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.16.0.tgz", + "integrity": "sha512-+il1gTy0oHwUsBQZyJvukbB4vPMdcYBrFHa0Uc4AizLxbq6BOYC51Rv4tWocX9BLBDLZ4kc6qUFpQ6HRgL+3zw==", + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz", + "integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==", + "requires": { + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-validator-identifier": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", + "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==" + }, + "@babel/helper-validator-option": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz", + "integrity": "sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==" + }, + "@babel/helper-wrap-function": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.16.8.tgz", + "integrity": "sha512-8RpyRVIAW1RcDDGTA+GpPAwV22wXCfKOoM9bet6TLkGIFTkRQSkH1nMQ5Yet4MpoXe1ZwHPVtNasc2w0uZMqnw==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.16.8", + "@babel/types": "^7.16.8" + } + }, + "@babel/helpers": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.7.tgz", + "integrity": "sha512-TKsj9NkjJfTBxM7Phfy7kv6yYc4ZcOo+AaWGqQOKTPDOmcGkIFb5xNA746eKisQkm4yavUYh4InYM9S+VnO01w==", + "requires": { + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.17.3", + "@babel/types": "^7.17.0" + } + }, + "@babel/highlight": { + "version": "7.16.10", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.10.tgz", + "integrity": "sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw==", + "requires": { + "@babel/helper-validator-identifier": "^7.16.7", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.7.tgz", + "integrity": "sha512-bm3AQf45vR4gKggRfvJdYJ0gFLoCbsPxiFLSH6hTVYABptNHY6l9NrhnucVjQ/X+SPtLANT9lc0fFhikj+VBRA==" + }, + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.16.7.tgz", + "integrity": "sha512-anv/DObl7waiGEnC24O9zqL0pSuI9hljihqiDuFHC8d7/bjr/4RLGPWuc8rYOff/QPzbEPSkzG8wGG9aDuhHRg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.16.7.tgz", + "integrity": "sha512-di8vUHRdf+4aJ7ltXhaDbPoszdkh59AQtJM5soLsuHpQJdFQZOA4uGj0V2u/CZ8bJ/u8ULDL5yq6FO/bCXnKHw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0", + "@babel/plugin-proposal-optional-chaining": "^7.16.7" + } + }, + "@babel/plugin-proposal-async-generator-functions": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.16.8.tgz", + "integrity": "sha512-71YHIvMuiuqWJQkebWJtdhQTfd4Q4mF76q2IX37uZPkG9+olBxsX+rH1vkhFto4UeJZ9dPY2s+mDvhDm1u2BGQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-remap-async-to-generator": "^7.16.8", + "@babel/plugin-syntax-async-generators": "^7.8.4" + } + }, + "@babel/plugin-proposal-class-properties": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.16.7.tgz", + "integrity": "sha512-IobU0Xme31ewjYOShSIqd/ZGM/r/cuOz2z0MDbNrhF5FW+ZVgi0f2lyeoj9KFPDOAqsYxmLWZte1WOwlvY9aww==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-proposal-class-static-block": { + "version": "7.17.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.17.6.tgz", + "integrity": "sha512-X/tididvL2zbs7jZCeeRJ8167U/+Ac135AM6jCAx6gYXDUviZV5Ku9UDvWS2NCuWlFjIRXklYhwo6HhAC7ETnA==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.17.6", + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + } + }, + "@babel/plugin-proposal-dynamic-import": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.16.7.tgz", + "integrity": "sha512-I8SW9Ho3/8DRSdmDdH3gORdyUuYnk1m4cMxUAdu5oy4n3OfN8flDEH+d60iG7dUfi0KkYwSvoalHzzdRzpWHTg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + } + }, + "@babel/plugin-proposal-export-namespace-from": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.16.7.tgz", + "integrity": "sha512-ZxdtqDXLRGBL64ocZcs7ovt71L3jhC1RGSyR996svrCi3PYqHNkb3SwPJCs8RIzD86s+WPpt2S73+EHCGO+NUA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + } + }, + "@babel/plugin-proposal-json-strings": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.16.7.tgz", + "integrity": "sha512-lNZ3EEggsGY78JavgbHsK9u5P3pQaW7k4axlgFLYkMd7UBsiNahCITShLjNQschPyjtO6dADrL24757IdhBrsQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-json-strings": "^7.8.3" + } + }, + "@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.16.7.tgz", + "integrity": "sha512-K3XzyZJGQCr00+EtYtrDjmwX7o7PLK6U9bi1nCwkQioRFVUv6dJoxbQjtWVtP+bCPy82bONBKG8NPyQ4+i6yjg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + } + }, + "@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.16.7.tgz", + "integrity": "sha512-aUOrYU3EVtjf62jQrCj63pYZ7k6vns2h/DQvHPWGmsJRYzWXZ6/AsfgpiRy6XiuIDADhJzP2Q9MwSMKauBQ+UQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + } + }, + "@babel/plugin-proposal-numeric-separator": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.16.7.tgz", + "integrity": "sha512-vQgPMknOIgiuVqbokToyXbkY/OmmjAzr/0lhSIbG/KmnzXPGwW/AdhdKpi+O4X/VkWiWjnkKOBiqJrTaC98VKw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + } + }, + "@babel/plugin-proposal-object-rest-spread": { + "version": "7.17.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.17.3.tgz", + "integrity": "sha512-yuL5iQA/TbZn+RGAfxQXfi7CNLmKi1f8zInn4IgobuCWcAb7i+zj4TYzQ9l8cEzVyJ89PDGuqxK1xZpUDISesw==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.17.0", + "@babel/helper-compilation-targets": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.16.7" + } + }, + "@babel/plugin-proposal-optional-catch-binding": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.16.7.tgz", + "integrity": "sha512-eMOH/L4OvWSZAE1VkHbr1vckLG1WUcHGJSLqqQwl2GaUqG6QjddvrOaTUMNYiv77H5IKPMZ9U9P7EaHwvAShfA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + } + }, + "@babel/plugin-proposal-optional-chaining": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.16.7.tgz", + "integrity": "sha512-eC3xy+ZrUcBtP7x+sq62Q/HYd674pPTb/77XZMb5wbDPGWIdUbSr4Agr052+zaUPSb+gGRnjxXfKFvx5iMJ+DA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + } + }, + "@babel/plugin-proposal-private-methods": { + "version": "7.16.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.16.11.tgz", + "integrity": "sha512-F/2uAkPlXDr8+BHpZvo19w3hLFKge+k75XUprE6jaqKxjGkSYcK+4c+bup5PdW/7W/Rpjwql7FTVEDW+fRAQsw==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.16.10", + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-proposal-private-property-in-object": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.16.7.tgz", + "integrity": "sha512-rMQkjcOFbm+ufe3bTZLyOfsOUOxyvLXZJCTARhJr+8UMSoZmqTe1K1BgkFcrW37rAchWg57yI69ORxiWvUINuQ==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-create-class-features-plugin": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + } + }, + "@babel/plugin-proposal-unicode-property-regex": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.16.7.tgz", + "integrity": "sha512-QRK0YI/40VLhNVGIjRNAAQkEHws0cswSdFFjpFyt943YmJIU1da9uW63Iu6NFV6CxTZW5eTDCrwZUstBWgp/Rg==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@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", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "requires": { + "@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", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "requires": { + "@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", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-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.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.16.7.tgz", + "integrity": "sha512-9ffkFFMbvzTvv+7dTp/66xvZAWASuPD5Tl9LK3Z9vhOmANo6j94rik+5YMBt4CwHVMWLWpMsriIc2zsa3WW3xQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-async-to-generator": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.16.8.tgz", + "integrity": "sha512-MtmUmTJQHCnyJVrScNzNlofQJ3dLFuobYn3mwOTKHnSCMtbNsqvF71GQmJfFjdrXSsAA7iysFmYWw4bXZ20hOg==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-remap-async-to-generator": "^7.16.8" + } + }, + "@babel/plugin-transform-block-scoped-functions": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.16.7.tgz", + "integrity": "sha512-JUuzlzmF40Z9cXyytcbZEZKckgrQzChbQJw/5PuEHYeqzCsvebDx0K0jWnIIVcmmDOAVctCgnYs0pMcrYj2zJg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-block-scoping": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.16.7.tgz", + "integrity": "sha512-ObZev2nxVAYA4bhyusELdo9hb3H+A56bxH3FZMbEImZFiEDYVHXQSJ1hQKFlDnlt8G9bBrCZ5ZpURZUrV4G5qQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-classes": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.16.7.tgz", + "integrity": "sha512-WY7og38SFAGYRe64BrjKf8OrE6ulEHtr5jEYaZMwox9KebgqPi67Zqz8K53EKk1fFEJgm96r32rkKZ3qA2nCWQ==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-function-name": "^7.16.7", + "@babel/helper-optimise-call-expression": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-replace-supers": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "globals": "^11.1.0" + } + }, + "@babel/plugin-transform-computed-properties": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.16.7.tgz", + "integrity": "sha512-gN72G9bcmenVILj//sv1zLNaPyYcOzUho2lIJBMh/iakJ9ygCo/hEF9cpGb61SCMEDxbbyBoVQxrt+bWKu5KGw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-destructuring": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.17.7.tgz", + "integrity": "sha512-XVh0r5yq9sLR4vZ6eVZe8FKfIcSgaTBxVBRSYokRj2qksf6QerYnTxz9/GTuKTH/n/HwLP7t6gtlybHetJ/6hQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-dotall-regex": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.16.7.tgz", + "integrity": "sha512-Lyttaao2SjZF6Pf4vk1dVKv8YypMpomAbygW+mU5cYP3S5cWTfCJjG8xV6CFdzGFlfWK81IjL9viiTvpb6G7gQ==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-duplicate-keys": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.16.7.tgz", + "integrity": "sha512-03DvpbRfvWIXyK0/6QiR1KMTWeT6OcQ7tbhjrXyFS02kjuX/mu5Bvnh5SDSWHxyawit2g5aWhKwI86EE7GUnTw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-exponentiation-operator": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.16.7.tgz", + "integrity": "sha512-8UYLSlyLgRixQvlYH3J2ekXFHDFLQutdy7FfFAMm3CPZ6q9wHCwnUyiXpQCe3gVVnQlHc5nsuiEVziteRNTXEA==", + "dev": true, + "requires": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-for-of": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.16.7.tgz", + "integrity": "sha512-/QZm9W92Ptpw7sjI9Nx1mbcsWz33+l8kuMIQnDwgQBG5s3fAfQvkRjQ7NqXhtNcKOnPkdICmUHyCaWW06HCsqg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-function-name": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.16.7.tgz", + "integrity": "sha512-SU/C68YVwTRxqWj5kgsbKINakGag0KTgq9f2iZEXdStoAbOzLHEBRYzImmA6yFo8YZhJVflvXmIHUO7GWHmxxA==", + "dev": true, + "requires": { + "@babel/helper-compilation-targets": "^7.16.7", + "@babel/helper-function-name": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-literals": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.16.7.tgz", + "integrity": "sha512-6tH8RTpTWI0s2sV6uq3e/C9wPo4PTqqZps4uF0kzQ9/xPLFQtipynvmT1g/dOfEJ+0EQsHhkQ/zyRId8J2b8zQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-member-expression-literals": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.16.7.tgz", + "integrity": "sha512-mBruRMbktKQwbxaJof32LT9KLy2f3gH+27a5XSuXo6h7R3vqltl0PgZ80C8ZMKw98Bf8bqt6BEVi3svOh2PzMw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-modules-amd": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.16.7.tgz", + "integrity": "sha512-KaaEtgBL7FKYwjJ/teH63oAmE3lP34N3kshz8mm4VMAw7U3PxjVwwUmxEFksbgsNUaO3wId9R2AVQYSEGRa2+g==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7", + "babel-plugin-dynamic-import-node": "^2.3.3" + } + }, + "@babel/plugin-transform-modules-commonjs": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.17.7.tgz", + "integrity": "sha512-ITPmR2V7MqioMJyrxUo2onHNC3e+MvfFiFIR0RP21d3PtlVb6sfzoxNKiphSZUOM9hEIdzCcZe83ieX3yoqjUA==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.17.7", + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-simple-access": "^7.17.7", + "babel-plugin-dynamic-import-node": "^2.3.3" + } + }, + "@babel/plugin-transform-modules-systemjs": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.16.7.tgz", + "integrity": "sha512-DuK5E3k+QQmnOqBR9UkusByy5WZWGRxfzV529s9nPra1GE7olmxfqO2FHobEOYSPIjPBTr4p66YDcjQnt8cBmw==", + "dev": true, + "requires": { + "@babel/helper-hoist-variables": "^7.16.7", + "@babel/helper-module-transforms": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-validator-identifier": "^7.16.7", + "babel-plugin-dynamic-import-node": "^2.3.3" + } + }, + "@babel/plugin-transform-modules-umd": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.16.7.tgz", + "integrity": "sha512-EMh7uolsC8O4xhudF2F6wedbSHm1HHZ0C6aJ7K67zcDNidMzVcxWdGr+htW9n21klm+bOn+Rx4CBsAntZd3rEQ==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.16.8.tgz", + "integrity": "sha512-j3Jw+n5PvpmhRR+mrgIh04puSANCk/T/UA3m3P1MjJkhlK906+ApHhDIqBQDdOgL/r1UYpz4GNclTXxyZrYGSw==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.16.7" + } + }, + "@babel/plugin-transform-new-target": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.16.7.tgz", + "integrity": "sha512-xiLDzWNMfKoGOpc6t3U+etCE2yRnn3SM09BXqWPIZOBpL2gvVrBWUKnsJx0K/ADi5F5YC5f8APFfWrz25TdlGg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-object-super": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.16.7.tgz", + "integrity": "sha512-14J1feiQVWaGvRxj2WjyMuXS2jsBkgB3MdSN5HuC2G5nRspa5RK9COcs82Pwy5BuGcjb+fYaUj94mYcOj7rCvw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-replace-supers": "^7.16.7" + } + }, + "@babel/plugin-transform-parameters": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.16.7.tgz", + "integrity": "sha512-AT3MufQ7zZEhU2hwOA11axBnExW0Lszu4RL/tAlUJBuNoRak+wehQW8h6KcXOcgjY42fHtDxswuMhMjFEuv/aw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-property-literals": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.16.7.tgz", + "integrity": "sha512-z4FGr9NMGdoIl1RqavCqGG+ZuYjfZ/hkCIeuH6Do7tXmSm0ls11nYVSJqFEUOSJbDab5wC6lRE/w6YjVcr6Hqw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-regenerator": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.16.7.tgz", + "integrity": "sha512-mF7jOgGYCkSJagJ6XCujSQg+6xC1M77/03K2oBmVJWoFGNUtnVJO4WHKJk3dnPC8HCcj4xBQP1Egm8DWh3Pb3Q==", + "dev": true, + "requires": { + "regenerator-transform": "^0.14.2" + } + }, + "@babel/plugin-transform-reserved-words": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.16.7.tgz", + "integrity": "sha512-KQzzDnZ9hWQBjwi5lpY5v9shmm6IVG0U9pB18zvMu2i4H90xpT4gmqwPYsn8rObiadYe2M0gmgsiOIF5A/2rtg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-runtime": { + "version": "7.16.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.16.10.tgz", + "integrity": "sha512-9nwTiqETv2G7xI4RvXHNfpGdr8pAA+Q/YtN3yLK7OoK7n9OibVm/xymJ838a9A6E/IciOLPj82lZk0fW6O4O7w==", + "requires": { + "@babel/helper-module-imports": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7", + "babel-plugin-polyfill-corejs2": "^0.3.0", + "babel-plugin-polyfill-corejs3": "^0.5.0", + "babel-plugin-polyfill-regenerator": "^0.3.0", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "@babel/plugin-transform-shorthand-properties": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.16.7.tgz", + "integrity": "sha512-hah2+FEnoRoATdIb05IOXf+4GzXYTq75TVhIn1PewihbpyrNWUt2JbudKQOETWw6QpLe+AIUpJ5MVLYTQbeeUg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-spread": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.16.7.tgz", + "integrity": "sha512-+pjJpgAngb53L0iaA5gU/1MLXJIfXcYepLgXB3esVRf4fqmj8f2cxM3/FKaHsZms08hFQJkFccEWuIpm429TXg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0" + } + }, + "@babel/plugin-transform-sticky-regex": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.16.7.tgz", + "integrity": "sha512-NJa0Bd/87QV5NZZzTuZG5BPJjLYadeSZ9fO6oOUoL4iQx+9EEuw/eEM92SrsT19Yc2jgB1u1hsjqDtH02c3Drw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-template-literals": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.16.7.tgz", + "integrity": "sha512-VwbkDDUeenlIjmfNeDX/V0aWrQH2QiVyJtwymVQSzItFDTpxfyJh3EVaQiS0rIN/CqbLGr0VcGmuwyTdZtdIsA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-typeof-symbol": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.16.7.tgz", + "integrity": "sha512-p2rOixCKRJzpg9JB4gjnG4gjWkWa89ZoYUnl9snJ1cWIcTH/hvxZqfO+WjG6T8DRBpctEol5jw1O5rA8gkCokQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-unicode-escapes": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.16.7.tgz", + "integrity": "sha512-TAV5IGahIz3yZ9/Hfv35TV2xEm+kaBDaZQCn2S/hG9/CZ0DktxJv9eKfPc7yYCvOYR4JGx1h8C+jcSOvgaaI/Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-unicode-regex": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.16.7.tgz", + "integrity": "sha512-oC5tYYKw56HO75KZVLQ+R/Nl3Hro9kf8iG0hXoaHP7tjAyCpvqBiSNe6vGrZni1Z6MggmUOC6A7VP7AVmw225Q==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/preset-env": { + "version": "7.16.11", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.16.11.tgz", + "integrity": "sha512-qcmWG8R7ZW6WBRPZK//y+E3Cli151B20W1Rv7ln27vuPaXU/8TKms6jFdiJtF7UDTxcrb7mZd88tAeK9LjdT8g==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.16.8", + "@babel/helper-compilation-targets": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-validator-option": "^7.16.7", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.16.7", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.16.7", + "@babel/plugin-proposal-async-generator-functions": "^7.16.8", + "@babel/plugin-proposal-class-properties": "^7.16.7", + "@babel/plugin-proposal-class-static-block": "^7.16.7", + "@babel/plugin-proposal-dynamic-import": "^7.16.7", + "@babel/plugin-proposal-export-namespace-from": "^7.16.7", + "@babel/plugin-proposal-json-strings": "^7.16.7", + "@babel/plugin-proposal-logical-assignment-operators": "^7.16.7", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.16.7", + "@babel/plugin-proposal-numeric-separator": "^7.16.7", + "@babel/plugin-proposal-object-rest-spread": "^7.16.7", + "@babel/plugin-proposal-optional-catch-binding": "^7.16.7", + "@babel/plugin-proposal-optional-chaining": "^7.16.7", + "@babel/plugin-proposal-private-methods": "^7.16.11", + "@babel/plugin-proposal-private-property-in-object": "^7.16.7", + "@babel/plugin-proposal-unicode-property-regex": "^7.16.7", + "@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.16.7", + "@babel/plugin-transform-async-to-generator": "^7.16.8", + "@babel/plugin-transform-block-scoped-functions": "^7.16.7", + "@babel/plugin-transform-block-scoping": "^7.16.7", + "@babel/plugin-transform-classes": "^7.16.7", + "@babel/plugin-transform-computed-properties": "^7.16.7", + "@babel/plugin-transform-destructuring": "^7.16.7", + "@babel/plugin-transform-dotall-regex": "^7.16.7", + "@babel/plugin-transform-duplicate-keys": "^7.16.7", + "@babel/plugin-transform-exponentiation-operator": "^7.16.7", + "@babel/plugin-transform-for-of": "^7.16.7", + "@babel/plugin-transform-function-name": "^7.16.7", + "@babel/plugin-transform-literals": "^7.16.7", + "@babel/plugin-transform-member-expression-literals": "^7.16.7", + "@babel/plugin-transform-modules-amd": "^7.16.7", + "@babel/plugin-transform-modules-commonjs": "^7.16.8", + "@babel/plugin-transform-modules-systemjs": "^7.16.7", + "@babel/plugin-transform-modules-umd": "^7.16.7", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.16.8", + "@babel/plugin-transform-new-target": "^7.16.7", + "@babel/plugin-transform-object-super": "^7.16.7", + "@babel/plugin-transform-parameters": "^7.16.7", + "@babel/plugin-transform-property-literals": "^7.16.7", + "@babel/plugin-transform-regenerator": "^7.16.7", + "@babel/plugin-transform-reserved-words": "^7.16.7", + "@babel/plugin-transform-shorthand-properties": "^7.16.7", + "@babel/plugin-transform-spread": "^7.16.7", + "@babel/plugin-transform-sticky-regex": "^7.16.7", + "@babel/plugin-transform-template-literals": "^7.16.7", + "@babel/plugin-transform-typeof-symbol": "^7.16.7", + "@babel/plugin-transform-unicode-escapes": "^7.16.7", + "@babel/plugin-transform-unicode-regex": "^7.16.7", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.16.8", + "babel-plugin-polyfill-corejs2": "^0.3.0", + "babel-plugin-polyfill-corejs3": "^0.5.0", + "babel-plugin-polyfill-regenerator": "^0.3.0", + "core-js-compat": "^3.20.2", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@babel/preset-modules": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", + "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "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.16.7", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.16.7.tgz", + "integrity": "sha512-9E9FJowqAsytyOY6LG+1KuueckRL+aQW+mKvXRXnuFGyRAyepJPmEo9vgMfXUA6O9u3IeEdv9MAkppFcaQwogQ==", + "requires": { + "regenerator-runtime": "^0.13.4" + } + }, + "@babel/runtime-corejs3": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.17.7.tgz", + "integrity": "sha512-TvliGJjhxis5m7xIMvlXH/xG8Oa/LK0SCUCyfKD6nLi42n5fB4WibDJ0g9trmmBB6hwpMNx+Lzbxy9/4gpMaVw==", + "dev": true, + "requires": { + "core-js-pure": "^3.20.2", + "regenerator-runtime": "^0.13.4" + } + }, + "@babel/template": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz", + "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==", + "requires": { + "@babel/code-frame": "^7.16.7", + "@babel/parser": "^7.16.7", + "@babel/types": "^7.16.7" + } + }, + "@babel/traverse": { + "version": "7.17.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.3.tgz", + "integrity": "sha512-5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw==", + "requires": { + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.17.3", + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-function-name": "^7.16.7", + "@babel/helper-hoist-variables": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "@babel/parser": "^7.17.3", + "@babel/types": "^7.17.0", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "dependencies": { + "@babel/generator": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.7.tgz", + "integrity": "sha512-oLcVCTeIFadUoArDTwpluncplrYBmTCCZZgXCbgNGvOBBiSDDK3eWO4b/+eOTli5tKv1lg+a5/NAXg+nTcei1w==", + "requires": { + "@babel/types": "^7.17.0", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + } + } + }, + "@babel/types": { + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.17.0.tgz", + "integrity": "sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==", + "requires": { + "@babel/helper-validator-identifier": "^7.16.7", + "to-fast-properties": "^2.0.0" + } + }, + "@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 + }, + "@csstools/postcss-progressive-custom-properties": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-1.3.0.tgz", + "integrity": "sha512-ASA9W1aIy5ygskZYuWams4BzafD12ULvSypmaLJT2jvQ8G0M3I8PRQhC0h7mG0Z3LI05+agZjqSR9+K9yaQQjA==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "@discoveryjs/json-ext": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.6.tgz", + "integrity": "sha512-ws57AidsDvREKrZKYffXddNkyaF14iHNHm8VQnZH6t99E8gczjNN0GpvcGny0imC80yQ0tHz1xVUKk/KFQSUyA==", + "dev": true + }, + "@emotion/is-prop-valid": { + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz", + "integrity": "sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA==", + "requires": { + "@emotion/memoize": "0.7.4" + } + }, + "@emotion/memoize": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz", + "integrity": "sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==" + }, + "@emotion/stylis": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.5.tgz", + "integrity": "sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ==" + }, + "@emotion/unitless": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz", + "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==" + }, + "@eslint/eslintrc": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.1.tgz", + "integrity": "sha512-bxvbYnBPN1Gibwyp6NrpnFzA3YtRL3BBAyEAFVIpNTm2Rn4Vy87GA5M4aSn3InRrlsbX5N0GW7XIx+U4SAEKdQ==", + "dev": true, + "requires": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.3.1", + "globals": "^13.9.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.0.4", + "strip-json-comments": "^3.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" + } + }, + "argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "globals": { + "version": "13.13.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz", + "integrity": "sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==", + "dev": true, + "requires": { + "type-fest": "^0.20.2" + } + }, + "js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "requires": { + "argparse": "^2.0.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 + }, + "type-fest": { + "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 + } + } + }, + "@ethereumjs/common": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/@ethereumjs/common/-/common-2.6.2.tgz", + "integrity": "sha512-vDwye5v0SVeuDky4MtKsu+ogkH2oFUV8pBKzH/eNBzT8oI91pKa8WyzDuYuxOQsgNgv5R34LfFDh2aaw3H4HbQ==", + "requires": { + "crc-32": "^1.2.0", + "ethereumjs-util": "^7.1.4" + } + }, + "@ethereumjs/tx": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@ethereumjs/tx/-/tx-3.5.0.tgz", + "integrity": "sha512-/+ZNbnJhQhXC83Xuvy6I9k4jT5sXiV0tMR9C+AzSSpcCV64+NB8dTE1m3x98RYMqb8+TLYWA+HML4F5lfXTlJw==", + "requires": { + "@ethereumjs/common": "^2.6.1", + "ethereumjs-util": "^7.1.4" + } + }, + "@ethersproject/abi": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.0.7.tgz", + "integrity": "sha512-Cqktk+hSIckwP/W8O47Eef60VwmoSC/L3lY0+dIBhQPCNn9E4V7rwmm2aFrNRRDJfFlGuZ1khkQUOc3oBX+niw==", + "requires": { + "@ethersproject/address": "^5.0.4", + "@ethersproject/bignumber": "^5.0.7", + "@ethersproject/bytes": "^5.0.4", + "@ethersproject/constants": "^5.0.4", + "@ethersproject/hash": "^5.0.4", + "@ethersproject/keccak256": "^5.0.3", + "@ethersproject/logger": "^5.0.5", + "@ethersproject/properties": "^5.0.3", + "@ethersproject/strings": "^5.0.4" + } + }, + "@ethersproject/abstract-provider": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/abstract-provider/-/abstract-provider-5.6.0.tgz", + "integrity": "sha512-oPMFlKLN+g+y7a79cLK3WiLcjWFnZQtXWgnLAbHZcN3s7L4v90UHpTOrLk+m3yr0gt+/h9STTM6zrr7PM8uoRw==", + "requires": { + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/networks": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/transactions": "^5.6.0", + "@ethersproject/web": "^5.6.0" + } + }, + "@ethersproject/abstract-signer": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/abstract-signer/-/abstract-signer-5.6.0.tgz", + "integrity": "sha512-WOqnG0NJKtI8n0wWZPReHtaLkDByPL67tn4nBaDAhmVq8sjHTPbCdz4DRhVu/cfTOvfy9w3iq5QZ7BX7zw56BQ==", + "requires": { + "@ethersproject/abstract-provider": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0" + } + }, + "@ethersproject/address": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/address/-/address-5.6.0.tgz", + "integrity": "sha512-6nvhYXjbXsHPS+30sHZ+U4VMagFC/9zAk6Gd/h3S21YW4+yfb0WfRtaAIZ4kfM4rrVwqiy284LP0GtL5HXGLxQ==", + "requires": { + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/keccak256": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/rlp": "^5.6.0" + } + }, + "@ethersproject/base64": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/base64/-/base64-5.6.0.tgz", + "integrity": "sha512-2Neq8wxJ9xHxCF9TUgmKeSh9BXJ6OAxWfeGWvbauPh8FuHEjamgHilllx8KkSd5ErxyHIX7Xv3Fkcud2kY9ezw==", + "requires": { + "@ethersproject/bytes": "^5.6.0" + } + }, + "@ethersproject/bignumber": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/bignumber/-/bignumber-5.6.0.tgz", + "integrity": "sha512-VziMaXIUHQlHJmkv1dlcd6GY2PmT0khtAqaMctCIDogxkrarMzA9L94KN1NeXqqOfFD6r0sJT3vCTOFSmZ07DA==", + "requires": { + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "bn.js": "^4.11.9" + } + }, + "@ethersproject/bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.0.tgz", + "integrity": "sha512-3hJPlYemb9V4VLfJF5BfN0+55vltPZSHU3QKUyP9M3Y2TcajbiRrz65UG+xVHOzBereB1b9mn7r12o177xgN7w==", + "requires": { + "@ethersproject/logger": "^5.6.0" + } + }, + "@ethersproject/constants": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/constants/-/constants-5.6.0.tgz", + "integrity": "sha512-SrdaJx2bK0WQl23nSpV/b1aq293Lh0sUaZT/yYKPDKn4tlAbkH96SPJwIhwSwTsoQQZxuh1jnqsKwyymoiBdWA==", + "requires": { + "@ethersproject/bignumber": "^5.6.0" + } + }, + "@ethersproject/hash": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/hash/-/hash-5.6.0.tgz", + "integrity": "sha512-fFd+k9gtczqlr0/BruWLAu7UAOas1uRRJvOR84uDf4lNZ+bTkGl366qvniUZHKtlqxBRU65MkOobkmvmpHU+jA==", + "requires": { + "@ethersproject/abstract-signer": "^5.6.0", + "@ethersproject/address": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/keccak256": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/strings": "^5.6.0" + } + }, + "@ethersproject/keccak256": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.6.0.tgz", + "integrity": "sha512-tk56BJ96mdj/ksi7HWZVWGjCq0WVl/QvfhFQNeL8fxhBlGoP+L80uDCiQcpJPd+2XxkivS3lwRm3E0CXTfol0w==", + "requires": { + "@ethersproject/bytes": "^5.6.0", + "js-sha3": "0.8.0" + } + }, + "@ethersproject/logger": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", + "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==" + }, + "@ethersproject/networks": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/networks/-/networks-5.6.0.tgz", + "integrity": "sha512-DaVzgyThzHgSDLuURhvkp4oviGoGe9iTZW4jMEORHDRCgSZ9K9THGFKqL+qGXqPAYLEgZTf5z2w56mRrPR1MjQ==", + "requires": { + "@ethersproject/logger": "^5.6.0" + } + }, + "@ethersproject/properties": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/properties/-/properties-5.6.0.tgz", + "integrity": "sha512-szoOkHskajKePTJSZ46uHUWWkbv7TzP2ypdEK6jGMqJaEt2sb0jCgfBo0gH0m2HBpRixMuJ6TBRaQCF7a9DoCg==", + "requires": { + "@ethersproject/logger": "^5.6.0" + } + }, + "@ethersproject/rlp": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/rlp/-/rlp-5.6.0.tgz", + "integrity": "sha512-dz9WR1xpcTL+9DtOT/aDO+YyxSSdO8YIS0jyZwHHSlAmnxA6cKU3TrTd4Xc/bHayctxTgGLYNuVVoiXE4tTq1g==", + "requires": { + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0" + } + }, + "@ethersproject/signing-key": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/signing-key/-/signing-key-5.6.0.tgz", + "integrity": "sha512-S+njkhowmLeUu/r7ir8n78OUKx63kBdMCPssePS89So1TH4hZqnWFsThEd/GiXYp9qMxVrydf7KdM9MTGPFukA==", + "requires": { + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "bn.js": "^4.11.9", + "elliptic": "6.5.4", + "hash.js": "1.1.7" + } + }, + "@ethersproject/strings": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/strings/-/strings-5.6.0.tgz", + "integrity": "sha512-uv10vTtLTZqrJuqBZR862ZQjTIa724wGPWQqZrofaPI/kUsf53TBG0I0D+hQ1qyNtllbNzaW+PDPHHUI6/65Mg==", + "requires": { + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/constants": "^5.6.0", + "@ethersproject/logger": "^5.6.0" + } + }, + "@ethersproject/transactions": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/transactions/-/transactions-5.6.0.tgz", + "integrity": "sha512-4HX+VOhNjXHZyGzER6E/LVI2i6lf9ejYeWD6l4g50AdmimyuStKc39kvKf1bXWQMg7QNVh+uC7dYwtaZ02IXeg==", + "requires": { + "@ethersproject/address": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/constants": "^5.6.0", + "@ethersproject/keccak256": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/rlp": "^5.6.0", + "@ethersproject/signing-key": "^5.6.0" + } + }, + "@ethersproject/web": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/web/-/web-5.6.0.tgz", + "integrity": "sha512-G/XHj0hV1FxI2teHRfCGvfBUHFmU+YOSbCxlAMqJklxSa7QMiHFQfAxvwY2PFqgvdkxEKwRNr/eCjfAPEm2Ctg==", + "requires": { + "@ethersproject/base64": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/strings": "^5.6.0" + } + }, + "@fontsource/material-icons": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/@fontsource/material-icons/-/material-icons-4.5.2.tgz", + "integrity": "sha512-J6Slv1GhQ42TF/DbEIvsebIe1rYvkMrEglVsPYvKAnbQzpm7m7Uv4bkpbsqxjXJvaJZWefg1sXqvCOYAyBTfIA==" + }, + "@fontsource/metropolis": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/@fontsource/metropolis/-/metropolis-4.5.1.tgz", + "integrity": "sha512-YJXoEHp6nAz+3UEQ9Hx95i1w898EWdt3qzJB0xFqJuxXCsf6ftk7msbxsI5jeLam+UjfIWK7s6NPK/1B04LHcQ==" + }, + "@gar/promisify": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", + "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", + "dev": true + }, + "@humanwhocodes/config-array": { + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz", + "integrity": "sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==", + "dev": true, + "requires": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.4" + } + }, + "@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 + }, + "@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "requires": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + } + }, + "@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 + }, + "@jridgewell/resolve-uri": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.5.tgz", + "integrity": "sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew==", + "dev": true + }, + "@jridgewell/sourcemap-codec": { + "version": "1.4.11", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz", + "integrity": "sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg==", + "dev": true + }, + "@jridgewell/trace-mapping": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.4.tgz", + "integrity": "sha512-vFv9ttIedivx0ux3QSjhgtCVjPZd5l46ZOMDSCwnH1yUO2e964gO8LZGyv2QkqcgR6TnBU1v+1IFqmeoG+0UJQ==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "@juggle/resize-observer": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@juggle/resize-observer/-/resize-observer-3.3.1.tgz", + "integrity": "sha512-zMM9Ds+SawiUkakS7y94Ymqx+S0ORzpG3frZirN3l+UlXUmSUR7hF4wxCVqW+ei94JzV5kt0uXBcoOEAuiydrw==" + }, + "@metamask/jazzicon": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@metamask/jazzicon/-/jazzicon-2.0.0.tgz", + "integrity": "sha512-7M+WSZWKcQAo0LEhErKf1z+D3YX0tEDAcGvcKbDyvDg34uvgeKR00mFNIYwAhdAS9t8YXxhxZgsrRBBg6X8UQg==", + "requires": { + "color": "^0.11.3", + "mersenne-twister": "^1.1.0" + } + }, + "@metamask/safe-event-emitter": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@metamask/safe-event-emitter/-/safe-event-emitter-2.0.0.tgz", + "integrity": "sha512-/kSXhY692qiV1MXu6EeOZvg5nECLclxNXcKCxJ3cXQgYuRymRHpdx/t7JXfsK+JLjwA1e1c1/SBrlQYpusC29Q==" + }, + "@ngrx/component": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@ngrx/component/-/component-13.0.2.tgz", + "integrity": "sha512-Izq984Soqt/ze/XyNLTvFjdMkuGLwarfe0hT9qjVO8cHgI5hEAvjwklv+JHmM1dtJOZ+USoM0rgwaUU5iInQfA==", + "requires": { + "tslib": "^2.0.0" + } + }, + "@ngrx/effects": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@ngrx/effects/-/effects-13.0.2.tgz", + "integrity": "sha512-7yW/KCxlRatDkdEriSnORlOYX8+1QAWEjPulNmHSPwehkzTQ3fIPfRBQy8xP8bnjwvGxnEZNwQlU4q1KVYOfhg==", + "requires": { + "tslib": "^2.0.0" + } + }, + "@ngrx/entity": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@ngrx/entity/-/entity-13.0.2.tgz", + "integrity": "sha512-sAN/YDvDNy4fmCOWU8LfPp8YI8XJcvmO89XTRSoJjo3O9BIbCSEw2gYHe1V7gWHLY5Pr9wiMybKhd4RHtzFHgQ==", + "requires": { + "tslib": "^2.0.0" + } + }, + "@ngrx/router-store": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@ngrx/router-store/-/router-store-13.0.2.tgz", + "integrity": "sha512-XrzHjrD2hhnXdGeIpQm/msN77hoAL/QD3ZYGFJs3yT5d3x/T3L1JFlra7wC0OlKJkOs6zAh5Kz9cJ94YO/TEtQ==", + "requires": { + "tslib": "^2.0.0" + } + }, + "@ngrx/store": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@ngrx/store/-/store-13.0.2.tgz", + "integrity": "sha512-F7tsc3oCvKh+62MKiXTrvSeaxR41u4p8bch3BLjz12F37376rMuBnXf+V1thsPTZ6RB6aycAi821EQYVXFCXZg==", + "requires": { + "tslib": "^2.0.0" + } + }, + "@ngrx/store-devtools": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@ngrx/store-devtools/-/store-devtools-13.0.2.tgz", + "integrity": "sha512-fcQ5A7cv9PONFvqlpFPXHswWjEflJvqrNt6wmywlxMtJDjkgzCHpvRiJqup/FiTosblRERoeZXN0oHW3Er3+rw==", + "requires": { + "tslib": "^2.0.0" + } + }, + "@ngtools/webpack": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-13.2.6.tgz", + "integrity": "sha512-N8SvRV91+/57TcAfbghc0k0tKCukw/7KqbDaLPAQTGFekJ4xMGT3elMzOyBXTH3Hvp5HL8/hiBt2tG04qiMf+w==", + "dev": true, + "requires": {} + }, + "@ngx-translate/core": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/@ngx-translate/core/-/core-14.0.0.tgz", + "integrity": "sha512-UevdwNCXMRCdJv//0kC8h2eSfmi02r29xeE8E9gJ1Al4D4jEJ7eiLPdjslTMc21oJNGguqqWeEVjf64SFtvw2w==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@ngx-translate/http-loader": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@ngx-translate/http-loader/-/http-loader-7.0.0.tgz", + "integrity": "sha512-j+NpXXlcGVdyUNyY/qsJrqqeAdJdizCd+GKh3usXExSqy1aE9866jlAIL+xrfDU4w+LiMoma5pgE4emvFebZmA==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@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": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + } + }, + "@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 + }, + "@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": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + } + }, + "@npmcli/fs": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-1.1.1.tgz", + "integrity": "sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==", + "dev": true, + "requires": { + "@gar/promisify": "^1.0.1", + "semver": "^7.3.5" + } + }, + "@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": { + "@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" + } + }, + "@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": { + "npm-bundled": "^1.1.1", + "npm-normalize-package-bin": "^1.0.1" + } + }, + "@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": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + } + }, + "@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 + }, + "@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": { + "infer-owner": "^1.0.4" + } + }, + "@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": { + "@npmcli/node-gyp": "^1.0.2", + "@npmcli/promise-spawn": "^1.3.2", + "node-gyp": "^8.2.0", + "read-package-json-fast": "^2.0.1" + } + }, + "@nrwl/cli": { + "version": "13.9.0", + "resolved": "https://registry.npmjs.org/@nrwl/cli/-/cli-13.9.0.tgz", + "integrity": "sha512-jYpVpkxtO/cImcMtwbpDtkQ0P2mgxc7CrjoAzzbfflYJGjCvv5GgJGGlOmwDgevcIZv16OLmMzk2jebMcGbnHw==", + "dev": true, + "requires": { + "nx": "13.9.0" + }, + "dependencies": { + "@nrwl/tao": { + "version": "13.9.0", + "resolved": "https://registry.npmjs.org/@nrwl/tao/-/tao-13.9.0.tgz", + "integrity": "sha512-U6qhpoIZDhYdMLmSuvWm1jmHT/us32yMf68hrHBolR2OQtDLv9eDaKFEs7symiLQFG3jswfQBNSVaKSvoUW6HQ==", + "dev": true, + "requires": { + "nx": "13.9.0" + } + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "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 + }, + "fast-glob": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz", + "integrity": "sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + } + }, + "fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "requires": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "glob-parent": { + "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": "^4.0.1" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "nx": { + "version": "13.9.0", + "resolved": "https://registry.npmjs.org/nx/-/nx-13.9.0.tgz", + "integrity": "sha512-OMoyuSRE0excccrsoHf5CUosDeDQbk1SjC98QhD5BJfrP7E55RVRy/ew0xnpu3E/QnplDBlQcJNSPWsTwqzO8w==", + "dev": true, + "requires": { + "@nrwl/cli": "13.9.0", + "@nrwl/tao": "13.9.0", + "@swc-node/register": "^1.4.2", + "@swc/core": "^1.2.146", + "chalk": "4.1.0", + "enquirer": "~2.3.6", + "fast-glob": "3.2.7", + "fs-extra": "^9.1.0", + "ignore": "^5.0.4", + "jsonc-parser": "3.0.0", + "rxjs": "^6.5.4", + "rxjs-for-await": "0.0.2", + "semver": "7.3.4", + "tmp": "~0.2.1", + "tsconfig-paths": "^3.9.0", + "tslib": "^2.3.0", + "v8-compile-cache": "2.3.0", + "yargs-parser": "20.0.0" + } + }, + "rxjs": { + "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 + } + } + }, + "rxjs-for-await": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/rxjs-for-await/-/rxjs-for-await-0.0.2.tgz", + "integrity": "sha512-IJ8R/ZCFMHOcDIqoABs82jal00VrZx8Xkgfe7TOKoaRPAW5nH/VFlG23bXpeGdrmtqI9UobFPgUKgCuFc7Lncw==", + "dev": true, + "requires": {} + }, + "semver": { + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", + "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "supports-color": { + "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": "^4.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" + } + }, + "yargs-parser": { + "version": "20.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.0.0.tgz", + "integrity": "sha512-8eblPHTL7ZWRkyjIZJjnGf+TijiKJSwA24svzLRVvtgoi/RZiKa9fFQTrlx0OKLnyHSdt/enrdadji6WFfESVA==", + "dev": true + } + } + }, + "@nrwl/devkit": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/@nrwl/devkit/-/devkit-13.1.3.tgz", + "integrity": "sha512-TAAsZJvVc/obeH0rZKY6miVhyM2GHGb8qIWp9MAIdLlXf4VDcNC7rxwb5OrGVSwuTTjqGYBGPUx0yEogOOJthA==", + "dev": true, + "requires": { + "@nrwl/tao": "13.1.3", + "ejs": "^3.1.5", + "ignore": "^5.0.4", + "rxjs": "^6.5.4", + "semver": "7.3.4", + "tslib": "^2.0.0" + }, + "dependencies": { + "rxjs": { + "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 + } + } + }, + "semver": { + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", + "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + } + } + }, + "@nrwl/tao": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/@nrwl/tao/-/tao-13.1.3.tgz", + "integrity": "sha512-/IwJgSgCBD1SaF+n8RuXX2OxDAh8ut/+P8pMswjm8063ac30UlAHjQ4XTYyskLH8uoUmNi2hNaGgHUrkwt7tQA==", + "dev": true, + "requires": { + "chalk": "4.1.0", + "enquirer": "~2.3.6", + "fs-extra": "^9.1.0", + "jsonc-parser": "3.0.0", + "nx": "13.1.3", + "rxjs": "^6.5.4", + "rxjs-for-await": "0.0.2", + "semver": "7.3.4", + "tmp": "~0.2.1", + "tslib": "^2.0.0", + "yargs-parser": "20.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "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 + }, + "fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "requires": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.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 + }, + "rxjs": { + "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 + } + } + }, + "rxjs-for-await": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/rxjs-for-await/-/rxjs-for-await-0.0.2.tgz", + "integrity": "sha512-IJ8R/ZCFMHOcDIqoABs82jal00VrZx8Xkgfe7TOKoaRPAW5nH/VFlG23bXpeGdrmtqI9UobFPgUKgCuFc7Lncw==", + "dev": true, + "requires": {} + }, + "semver": { + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", + "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "supports-color": { + "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": "^4.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" + } + }, + "yargs-parser": { + "version": "20.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.0.0.tgz", + "integrity": "sha512-8eblPHTL7ZWRkyjIZJjnGf+TijiKJSwA24svzLRVvtgoi/RZiKa9fFQTrlx0OKLnyHSdt/enrdadji6WFfESVA==", + "dev": true + } + } + }, + "@schematics/angular": { + "version": "13.2.6", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-13.2.6.tgz", + "integrity": "sha512-8NzHMX9+FSgaB0lJYxlTJv9OcBuolwZJqo9M/yX3RPSqSHghA33jWwgVbV551hBJOpbVEePerG1DQkIC99DXKA==", + "dev": true, + "requires": { + "@angular-devkit/core": "13.2.6", + "@angular-devkit/schematics": "13.2.6", + "jsonc-parser": "3.0.0" + } + }, + "@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==" + }, + "@socket.io/base64-arraybuffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@socket.io/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz", + "integrity": "sha512-dOlCBKnDw4iShaIsH/bxujKTM18+2TOAsYz+KSc11Am38H4q5Xw8Bbz97ZYdrVNM+um3p7w86Bvvmcn9q+5+eQ==", + "dev": true + }, + "@swc-node/core": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/@swc-node/core/-/core-1.8.2.tgz", + "integrity": "sha512-IoJ7tGHQ6JOMSmFe4VhP64uLmFKMNasS0QEgUrLFQ0h/dTvpQMynnoGBEJoPL6LfsebZ/q4uKqbpWrth6/yrAA==", + "dev": true, + "requires": { + "@swc/core": "^1.2.119" + } + }, + "@swc-node/register": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@swc-node/register/-/register-1.4.2.tgz", + "integrity": "sha512-wLZz0J7BTO//1Eq7e4eBQjKF380Hr2eVemz849msQSKcVM1D7UJUt/dP2TinEVGx++/BXJ/0q37i6n9Iw0EM0w==", + "dev": true, + "requires": { + "@swc-node/core": "^1.8.2", + "@swc-node/sourcemap-support": "^0.1.11", + "chalk": "4", + "debug": "^4.3.3", + "pirates": "^4.0.4", + "tslib": "^2.3.1", + "typescript": "^4.5.3" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "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": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.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 + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.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": "^4.0.0" + } + } + } + }, + "@swc-node/sourcemap-support": { + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@swc-node/sourcemap-support/-/sourcemap-support-0.1.11.tgz", + "integrity": "sha512-b+Mn3oQl+7nUSt7hPzIbY9B30YhcFo1PT4kd9P4QmD6raycmIealOAhAdZID/JevphzsOXHQB4OqJm7Yi5tMcA==", + "dev": true, + "requires": { + "source-map-support": "^0.5.21" + } + }, + "@swc/core": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.2.156.tgz", + "integrity": "sha512-icEIxirqpbKXX7tESdfBpa7XdpX0pSWtREfhWgWHXsWiSiOjQ4Vij4fAAdIOOXxm1amCCKjr6bThOIiA0dtTug==", + "dev": true, + "requires": { + "@swc/core-android-arm-eabi": "1.2.156", + "@swc/core-android-arm64": "1.2.156", + "@swc/core-darwin-arm64": "1.2.156", + "@swc/core-darwin-x64": "1.2.156", + "@swc/core-freebsd-x64": "1.2.156", + "@swc/core-linux-arm-gnueabihf": "1.2.156", + "@swc/core-linux-arm64-gnu": "1.2.156", + "@swc/core-linux-arm64-musl": "1.2.156", + "@swc/core-linux-x64-gnu": "1.2.156", + "@swc/core-linux-x64-musl": "1.2.156", + "@swc/core-win32-arm64-msvc": "1.2.156", + "@swc/core-win32-ia32-msvc": "1.2.156", + "@swc/core-win32-x64-msvc": "1.2.156" + } + }, + "@swc/core-android-arm-eabi": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core-android-arm-eabi/-/core-android-arm-eabi-1.2.156.tgz", + "integrity": "sha512-epFJaBn/tqWxtprFucJfbJgRtCoamKUO2vxQ1VYp69VTQ78cF4kdizoxjlHjt4ZMZ+Y4AKULAtwqs4zDrQIxXg==", + "dev": true, + "optional": true + }, + "@swc/core-android-arm64": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core-android-arm64/-/core-android-arm64-1.2.156.tgz", + "integrity": "sha512-gdGjd0GuAoBPJvKAbSwnzbvBBHvmmHjETH7hoTUxRlmB1QETrI7AnM3RZ75l6HtHu+RjgsiuBk2yiHbic1Hh7Q==", + "dev": true, + "optional": true + }, + "@swc/core-darwin-arm64": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.2.156.tgz", + "integrity": "sha512-kFnWPrxOfIIYRqv8DCGOT8KsMPgbblLJQ45TKT1wCkCsQ3xmujC86XZMWx7xyYmDd+V6QbfawLBJvb4Pq4jvFw==", + "dev": true, + "optional": true + }, + "@swc/core-darwin-x64": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.2.156.tgz", + "integrity": "sha512-G0H2zJKIWsUx9+QpontN1Rlm2g+pLuaFzHDeULRYnxEyZl2tUcvi2TuKi3imjpr26xBx9Zesz9vSThmwU9Ll2A==", + "dev": true, + "optional": true + }, + "@swc/core-freebsd-x64": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core-freebsd-x64/-/core-freebsd-x64-1.2.156.tgz", + "integrity": "sha512-S9PsqcVgG10plsoWDGAUjoH0GbM8t9PR1JFx+sAHY1JKUxSW4iwMZDGTzIrIRO3agTMZLgpoLG/LV+1Ljcrr+Q==", + "dev": true, + "optional": true + }, + "@swc/core-linux-arm-gnueabihf": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.2.156.tgz", + "integrity": "sha512-nQP/c4tvxlyCQXSByNhS4lCxSCJZ/FrCbEv5l0tAcMKdO21fYSHduAvAisQAMfyTZHCL+2ubTeWV0pd8P432Ug==", + "dev": true, + "optional": true + }, + "@swc/core-linux-arm64-gnu": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.2.156.tgz", + "integrity": "sha512-kRSCfVWfvukxvOFWGts1u+qoRYUbw5Hlqty0PG3/lVoDM6pu6wK4TZEEERLbUuN7TDWKbpEchpG01kGtW/g9Cg==", + "dev": true, + "optional": true + }, + "@swc/core-linux-arm64-musl": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.2.156.tgz", + "integrity": "sha512-SowJYHa2NjVCkPdg004npZj6bMdQel74G6DUD9zl8tw8QV9MLRTgp0cg6EJZdBTSjQ3M79HQYIB4cMGjm1qbJA==", + "dev": true, + "optional": true + }, + "@swc/core-linux-x64-gnu": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.2.156.tgz", + "integrity": "sha512-qcP4xn9NDm4BkZvLDeSdRfbSUrTG87Usb0ZVtoW6L2cXBZtaOWSS62s1eALUQDDehA/HpB4qgwVFUdvzHwx8qg==", + "dev": true, + "optional": true + }, + "@swc/core-linux-x64-musl": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.2.156.tgz", + "integrity": "sha512-l6xzgNuKB6QQYxWNMDTNVAnle/mNk35AgD83otiKoL23o8m0gxExm8OQbd0HEi/Wf6BrPl3rlxsGpYWvOJHztQ==", + "dev": true, + "optional": true + }, + "@swc/core-win32-arm64-msvc": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.2.156.tgz", + "integrity": "sha512-og3lIrHcQY0Fjxdt5LLMvUqYn1EbqrWFhpn5S9b3M5hkQO+rbZZulONWdHT0xmRzuPvyeK7ZEyLdzItWEeym8A==", + "dev": true, + "optional": true + }, + "@swc/core-win32-ia32-msvc": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.2.156.tgz", + "integrity": "sha512-08TMu53hImO8SlQmaElRQEr7z8TTtdXl9/18ZnHv1jcAIEk/5BdP8SeQaTtf2l3uQjdKdZWFZrAK12Jek4pe9w==", + "dev": true, + "optional": true + }, + "@swc/core-win32-x64-msvc": { + "version": "1.2.156", + "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.2.156.tgz", + "integrity": "sha512-oLfkNd+SN8gWKaT9i0awbagq2oYyLqw8GhU3bZmMI1Ssx2u2IBA1mW07LPAnXsKNEGqnayc6cY0pyCN4IVEgLQ==", + "dev": true, + "optional": true + }, + "@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "requires": { + "defer-to-connect": "^1.0.1" + } + }, + "@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 + }, + "@types/bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha512-pqr857jrp2kPuO9uRjZ3PwnJTjoQy+fcdxvBTvHm6dkmEL9q+hDD/2j/0ELOBPtPnS8LjCX0gI9nbl8lVkadpg==", + "requires": { + "@types/node": "*" + } + }, + "@types/body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "dev": true, + "requires": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "@types/bonjour": { + "version": "3.5.10", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz", + "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/component-emitter": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/@types/component-emitter/-/component-emitter-1.2.11.tgz", + "integrity": "sha512-SRXjM+tfsSlA9VuG8hGO2nft2p8zjXCK1VcC6N4NXbBbYbSia9kzCChYQajIjzIqOOOuh5Ock6MmV2oux4jDZQ==", + "dev": true + }, + "@types/connect": { + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", + "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/connect-history-api-fallback": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz", + "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==", + "dev": true, + "requires": { + "@types/express-serve-static-core": "*", + "@types/node": "*" + } + }, + "@types/cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", + "dev": true + }, + "@types/cors": { + "version": "2.8.12", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz", + "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==", + "dev": true + }, + "@types/eslint": { + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.1.tgz", + "integrity": "sha512-GE44+DNEyxxh2Kc6ro/VkIj+9ma0pO0bwv9+uHSyBrikYOHr8zYcdPvnBOp1aw8s+CjRvuSx7CyWqRrNFQ59mA==", + "dev": true, + "requires": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "@types/eslint-scope": { + "version": "3.7.3", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.3.tgz", + "integrity": "sha512-PB3ldyrcnAicT35TWPs5IcwKD8S333HMaa2VVv4+wdvebJkjWuW/xESoB8IwRcog8HYVYamb1g/R31Qv5Bx03g==", + "dev": true, + "requires": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "@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 + }, + "@types/express": { + "version": "4.17.13", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz", + "integrity": "sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==", + "dev": true, + "requires": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.18", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "@types/express-serve-static-core": { + "version": "4.17.28", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.28.tgz", + "integrity": "sha512-P1BJAEAW3E2DJUlkgq4tOL3RyMunoWXqbSCygWo5ZIWTjUgN1YnaXWW4VWl/oc8vs/XoYibEGBKP0uZyF4AHig==", + "dev": true, + "requires": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*" + } + }, + "@types/http-proxy": { + "version": "1.17.8", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.8.tgz", + "integrity": "sha512-5kPLG5BKpWYkw/LVOGWpiq3nEVqxiN32rTgI53Sk12/xHFQ2rG3ehI9IO+O3W2QoKeyB92dJkoka8SUm6BX1pA==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/jasmine": { + "version": "3.10.3", + "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-3.10.3.tgz", + "integrity": "sha512-SWyMrjgdAUHNQmutvDcKablrJhkDLy4wunTme8oYLjKp41GnHGxMRXr2MQMvy/qy8H3LdzwQk9gH4hZ6T++H8g==", + "dev": true + }, + "@types/json-schema": { + "version": "7.0.9", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.9.tgz", + "integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==", + "dev": true + }, + "@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", + "dev": true + }, + "@types/mime": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz", + "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==", + "dev": true + }, + "@types/node": { + "version": "12.20.47", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.47.tgz", + "integrity": "sha512-BzcaRsnFuznzOItW1WpQrDHM7plAa7GIDMZ6b5pnMbkqEtM/6WCOhvZar39oeMQP79gwvFUWjjptE7/KGcNqFg==" + }, + "@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "dev": true + }, + "@types/pbkdf2": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@types/pbkdf2/-/pbkdf2-3.1.0.tgz", + "integrity": "sha512-Cf63Rv7jCQ0LaL8tNXmEyqTHuIJxRdlS5vMh1mj5voN4+QFhVZnlZruezqpWYDiJ8UTzhP0VmeLXCmBk66YrMQ==", + "requires": { + "@types/node": "*" + } + }, + "@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", + "dev": true + }, + "@types/range-parser": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", + "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", + "dev": true + }, + "@types/retry": { + "version": "0.12.1", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.1.tgz", + "integrity": "sha512-xoDlM2S4ortawSWORYqsdU+2rxdh4LRW9ytc3zmT37RIKQh6IHyKwwtKhKis9ah8ol07DCkZxPt8BBvPjC6v4g==", + "dev": true + }, + "@types/secp256k1": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@types/secp256k1/-/secp256k1-4.0.3.tgz", + "integrity": "sha512-Da66lEIFeIz9ltsdMZcpQvmrmmoqrfju8pm1BH8WbYjZSwUgCwXLb9C+9XYogwBITnbsSaMdVPb2ekf7TV+03w==", + "requires": { + "@types/node": "*" + } + }, + "@types/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", + "dev": true, + "requires": { + "@types/express": "*" + } + }, + "@types/serve-static": { + "version": "1.13.10", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.10.tgz", + "integrity": "sha512-nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ==", + "dev": true, + "requires": { + "@types/mime": "^1", + "@types/node": "*" + } + }, + "@types/sockjs": { + "version": "0.3.33", + "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz", + "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/ws": { + "version": "8.5.3", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.3.tgz", + "integrity": "sha512-6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/yargs": { + "version": "17.0.10", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", + "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "@types/yargs-parser": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", + "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==", + "dev": true + }, + "@typescript-eslint/eslint-plugin": { + "version": "5.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.11.0.tgz", + "integrity": "sha512-HJh33bgzXe6jGRocOj4FmefD7hRY4itgjzOrSs3JPrTNXsX7j5+nQPciAUj/1nZtwo2kAc3C75jZO+T23gzSGw==", + "dev": true, + "requires": { + "@typescript-eslint/scope-manager": "5.11.0", + "@typescript-eslint/type-utils": "5.11.0", + "@typescript-eslint/utils": "5.11.0", + "debug": "^4.3.2", + "functional-red-black-tree": "^1.0.1", + "ignore": "^5.1.8", + "regexpp": "^3.2.0", + "semver": "^7.3.5", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/experimental-utils": { + "version": "5.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.11.0.tgz", + "integrity": "sha512-EPvC/bU2n1LKtzKWP1AjGWkp7r8tJ8giVlZHIODo6q7SAd6J+/9vjtEKHK2G/Qp+D2IGPsQge+oadDR3CZcFtQ==", + "dev": true, + "requires": { + "@typescript-eslint/utils": "5.11.0" + } + }, + "@typescript-eslint/parser": { + "version": "5.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.11.0.tgz", + "integrity": "sha512-x0DCjetHZYBRovJdr3U0zG9OOdNXUaFLJ82ehr1AlkArljJuwEsgnud+Q7umlGDFLFrs8tU8ybQDFocp/eX8mQ==", + "dev": true, + "requires": { + "@typescript-eslint/scope-manager": "5.11.0", + "@typescript-eslint/types": "5.11.0", + "@typescript-eslint/typescript-estree": "5.11.0", + "debug": "^4.3.2" + } + }, + "@typescript-eslint/scope-manager": { + "version": "5.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.11.0.tgz", + "integrity": "sha512-z+K4LlahDFVMww20t/0zcA7gq/NgOawaLuxgqGRVKS0PiZlCTIUtX0EJbC0BK1JtR4CelmkPK67zuCgpdlF4EA==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.11.0", + "@typescript-eslint/visitor-keys": "5.11.0" + } + }, + "@typescript-eslint/type-utils": { + "version": "5.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.11.0.tgz", + "integrity": "sha512-wDqdsYO6ofLaD4DsGZ0jGwxp4HrzD2YKulpEZXmgN3xo4BHJwf7kq49JTRpV0Gx6bxkSUmc9s0EIK1xPbFFpIA==", + "dev": true, + "requires": { + "@typescript-eslint/utils": "5.11.0", + "debug": "^4.3.2", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/types": { + "version": "5.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.11.0.tgz", + "integrity": "sha512-cxgBFGSRCoBEhvSVLkKw39+kMzUKHlJGVwwMbPcTZX3qEhuXhrjwaZXWMxVfxDgyMm+b5Q5b29Llo2yow8Y7xQ==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "5.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.11.0.tgz", + "integrity": "sha512-yVH9hKIv3ZN3lw8m/Jy5I4oXO4ZBMqijcXCdA4mY8ull6TPTAoQnKKrcZ0HDXg7Bsl0Unwwx7jcXMuNZc0m4lg==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.11.0", + "@typescript-eslint/visitor-keys": "5.11.0", + "debug": "^4.3.2", + "globby": "^11.0.4", + "is-glob": "^4.0.3", + "semver": "^7.3.5", + "tsutils": "^3.21.0" + }, + "dependencies": { + "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 + }, + "globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "requires": { + "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" + } + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + } + } + }, + "@typescript-eslint/utils": { + "version": "5.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.11.0.tgz", + "integrity": "sha512-g2I480tFE1iYRDyMhxPAtLQ9HAn0jjBtipgTCZmd9I9s11OV8CTsG+YfFciuNDcHqm4csbAgC2aVZCHzLxMSUw==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.9", + "@typescript-eslint/scope-manager": "5.11.0", + "@typescript-eslint/types": "5.11.0", + "@typescript-eslint/typescript-estree": "5.11.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0" + } + }, + "@typescript-eslint/visitor-keys": { + "version": "5.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.11.0.tgz", + "integrity": "sha512-E8w/vJReMGuloGxJDkpPlGwhxocxOpSVgSvjiLO5IxZPmxZF30weOeJYyPSEACwM+X4NziYS9q+WkN/2DHYQwA==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.11.0", + "eslint-visitor-keys": "^3.0.0" + } + }, + "@uiowa/digit-only": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/@uiowa/digit-only/-/digit-only-3.2.1.tgz", + "integrity": "sha512-vxMVVcQoEN3DYSJNrHWZ+MfaxfjMkr6rV28hesGH54Jd9UApuBFLTBQMYfsmPH3obRQ1ezjvcXY2gm+0QeiwNg==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@walletconnect/browser-utils": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@walletconnect/browser-utils/-/browser-utils-1.7.5.tgz", + "integrity": "sha512-gm9ufi0n5cGBXoGWDtMVSqIJ0eXYW+ZFuTNVN0fm4oal26J7cPrOdFjzhv5zvx5fKztWQ21DNFZ+PRXBjXg04Q==", + "requires": { + "@walletconnect/safe-json": "1.0.0", + "@walletconnect/types": "^1.7.5", + "@walletconnect/window-getters": "1.0.0", + "@walletconnect/window-metadata": "1.0.0", + "detect-browser": "5.2.0" + }, + "dependencies": { + "detect-browser": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/detect-browser/-/detect-browser-5.2.0.tgz", + "integrity": "sha512-tr7XntDAu50BVENgQfajMLzacmSe34D+qZc4zjnniz0ZVuw/TZcLcyxHQjYpJTM36sGEkZZlYLnIM1hH7alTMA==" + } + } + }, + "@walletconnect/client": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@walletconnect/client/-/client-1.7.5.tgz", + "integrity": "sha512-Vh3h1kfhmJ4Jx//H0lmmfDc5Q2s+R73Nh5cetVN41QPRrAcqHE4lR2ZS8XxRCNBl4/gcHZJIZS9J2Ui4tTXBLA==", + "requires": { + "@walletconnect/core": "^1.7.5", + "@walletconnect/iso-crypto": "^1.7.5", + "@walletconnect/types": "^1.7.5", + "@walletconnect/utils": "^1.7.5" + } + }, + "@walletconnect/core": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@walletconnect/core/-/core-1.7.5.tgz", + "integrity": "sha512-c4B8s9fZ/Ah2p460Hxo4e9pwLQVYT2+dVYAfqaxVzfYjhAokDEtO55Bdm1hujtRjQVqwTvCljKxBB+LgMp3k8w==", + "requires": { + "@walletconnect/socket-transport": "^1.7.5", + "@walletconnect/types": "^1.7.5", + "@walletconnect/utils": "^1.7.5" + } + }, + "@walletconnect/crypto": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@walletconnect/crypto/-/crypto-1.0.2.tgz", + "integrity": "sha512-+OlNtwieUqVcOpFTvLBvH+9J9pntEqH5evpINHfVxff1XIgwV55PpbdvkHu6r9Ib4WQDOFiD8OeeXs1vHw7xKQ==", + "requires": { + "@walletconnect/encoding": "^1.0.1", + "@walletconnect/environment": "^1.0.0", + "@walletconnect/randombytes": "^1.0.2", + "aes-js": "^3.1.2", + "hash.js": "^1.1.7" + } + }, + "@walletconnect/encoding": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@walletconnect/encoding/-/encoding-1.0.1.tgz", + "integrity": "sha512-8opL2rs6N6E3tJfsqwS82aZQDL3gmupWUgmvuZ3CGU7z/InZs3R9jkzH8wmYtpbq0sFK3WkJkQRZFFk4BkrmFA==", + "requires": { + "is-typedarray": "1.0.0", + "typedarray-to-buffer": "3.1.5" + } + }, + "@walletconnect/environment": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@walletconnect/environment/-/environment-1.0.0.tgz", + "integrity": "sha512-4BwqyWy6KpSvkocSaV7WR3BlZfrxLbJSLkg+j7Gl6pTDE+U55lLhJvQaMuDVazXYxcjBsG09k7UlH7cGiUI5vQ==" + }, + "@walletconnect/http-connection": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@walletconnect/http-connection/-/http-connection-1.7.5.tgz", + "integrity": "sha512-WDy2Y/07c1F107362jel0voeV6QMJuWbwAKNLtxlX8Y9KNzqZAGlHhIZykSWrMjNGwxBaXoqLPmu60uVvodc6A==", + "requires": { + "@walletconnect/types": "^1.7.5", + "@walletconnect/utils": "^1.7.5", + "eventemitter3": "4.0.7", + "xhr2-cookies": "1.1.0" + } + }, + "@walletconnect/iso-crypto": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@walletconnect/iso-crypto/-/iso-crypto-1.7.5.tgz", + "integrity": "sha512-mJdRs2SqAPOLBBqLhU+ZnAh2c8TL2uDuL/ojV4aBzZ0ZHNT7X2zSOjAiixCb3vvH8GAt30OKmiRo3+ChI/9zvA==", + "requires": { + "@walletconnect/crypto": "^1.0.2", + "@walletconnect/types": "^1.7.5", + "@walletconnect/utils": "^1.7.5" + } + }, + "@walletconnect/jsonrpc-types": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-types/-/jsonrpc-types-1.0.0.tgz", + "integrity": "sha512-11QXNq5H1PKZk7bP8SxgmCw3HRaDuPOVE+wObqEvmhc7OWYUZqfuaaMb+OXGRSOHL3sbC+XHfdeCxFTMXSFyng==", + "requires": { + "keyvaluestorage-interface": "^1.0.0" + } + }, + "@walletconnect/jsonrpc-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-utils/-/jsonrpc-utils-1.0.0.tgz", + "integrity": "sha512-qUHbKUK6sHeHn67qtHZoLoYk5hS6x1arTPjKDRkY93/6Fx+ZmNIpdm1owX3l6aYueyegJ7mz43FpvYHUqJ8xcw==", + "requires": { + "@walletconnect/environment": "^1.0.0", + "@walletconnect/jsonrpc-types": "^1.0.0" + } + }, + "@walletconnect/mobile-registry": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@walletconnect/mobile-registry/-/mobile-registry-1.4.0.tgz", + "integrity": "sha512-ZtKRio4uCZ1JUF7LIdecmZt7FOLnX72RPSY7aUVu7mj7CSfxDwUn6gBuK6WGtH+NZCldBqDl5DenI5fFSvkKYw==" + }, + "@walletconnect/qrcode-modal": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@walletconnect/qrcode-modal/-/qrcode-modal-1.7.5.tgz", + "integrity": "sha512-LVq35jc3VMGq1EMcGCObQtEiercMDmUHDnc7A3AmUo0LoAbaPo6c8Hq0zqy2+JhtLmxUhU3ktf+szmCoiUDTUQ==", + "requires": { + "@walletconnect/browser-utils": "^1.7.5", + "@walletconnect/mobile-registry": "^1.4.0", + "@walletconnect/types": "^1.7.5", + "copy-to-clipboard": "^3.3.1", + "preact": "10.4.1", + "qrcode": "1.4.4" + } + }, + "@walletconnect/randombytes": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@walletconnect/randombytes/-/randombytes-1.0.2.tgz", + "integrity": "sha512-ivgOtAyqQnN0rLQmOFPemsgYGysd/ooLfaDA/ACQ3cyqlca56t3rZc7pXfqJOIETx/wSyoF5XbwL+BqYodw27A==", + "requires": { + "@walletconnect/encoding": "^1.0.1", + "@walletconnect/environment": "^1.0.0", + "randombytes": "^2.1.0" + } + }, + "@walletconnect/safe-json": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@walletconnect/safe-json/-/safe-json-1.0.0.tgz", + "integrity": "sha512-QJzp/S/86sUAgWY6eh5MKYmSfZaRpIlmCJdi5uG4DJlKkZrHEF7ye7gA+VtbVzvTtpM/gRwO2plQuiooIeXjfg==" + }, + "@walletconnect/socket-transport": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@walletconnect/socket-transport/-/socket-transport-1.7.5.tgz", + "integrity": "sha512-4TYCxrNWb4f5a1NGsALXidr+/6dOiqgVfUQJ4fdP6R7ijL+7jtdiktguU9FIDq5wFXRE+ZdpCpwSAfOt60q/mQ==", + "requires": { + "@walletconnect/types": "^1.7.5", + "@walletconnect/utils": "^1.7.5", + "ws": "7.5.3" + }, + "dependencies": { + "ws": { + "version": "7.5.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.3.tgz", + "integrity": "sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg==", + "requires": {} + } + } + }, + "@walletconnect/types": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@walletconnect/types/-/types-1.7.5.tgz", + "integrity": "sha512-0HvZzxD93et4DdrYgAvclI1BqclkZS7iPWRtbGg3r+PQhRPbOkNypzBy6XH6wflbmr+WBGdmyJvynHsdhcCqUA==" + }, + "@walletconnect/utils": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@walletconnect/utils/-/utils-1.7.5.tgz", + "integrity": "sha512-U954rIIA/g/Cmdqy+n3hMY1DDMmXxGs8w/QmrK9b/H5nkQ3e4QicOyynq5g/JTTesN5HZdDTFiyX9r0GSKa+iA==", + "requires": { + "@walletconnect/browser-utils": "^1.7.5", + "@walletconnect/encoding": "^1.0.1", + "@walletconnect/jsonrpc-utils": "^1.0.0", + "@walletconnect/types": "^1.7.5", + "bn.js": "4.11.8", + "js-sha3": "0.8.0", + "query-string": "6.13.5" + }, + "dependencies": { + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + }, + "query-string": { + "version": "6.13.5", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-6.13.5.tgz", + "integrity": "sha512-svk3xg9qHR39P3JlHuD7g3nRnyay5mHbrPctEBDUxUkHRifPHXJDhBUycdCC0NBjXoDf44Gb+IsOZL1Uwn8M/Q==", + "requires": { + "decode-uri-component": "^0.2.0", + "split-on-first": "^1.0.0", + "strict-uri-encode": "^2.0.0" + } + }, + "strict-uri-encode": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz", + "integrity": "sha1-ucczDHBChi9rFC3CdLvMWGbONUY=" + } + } + }, + "@walletconnect/web3-provider": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@walletconnect/web3-provider/-/web3-provider-1.7.5.tgz", + "integrity": "sha512-x+UWOTu7jd9qog9NWhaspOmVRDJPnQrgZBscnaSC+x/aAsi52VUrd1GZ9c5UNZFgss41fdx3Z2KhkPeVrlrbuQ==", + "requires": { + "@walletconnect/client": "^1.7.5", + "@walletconnect/http-connection": "^1.7.5", + "@walletconnect/qrcode-modal": "^1.7.5", + "@walletconnect/types": "^1.7.5", + "@walletconnect/utils": "^1.7.5", + "web3-provider-engine": "16.0.1" + } + }, + "@walletconnect/window-getters": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@walletconnect/window-getters/-/window-getters-1.0.0.tgz", + "integrity": "sha512-xB0SQsLaleIYIkSsl43vm8EwETpBzJ2gnzk7e0wMF3ktqiTGS6TFHxcprMl5R44KKh4tCcHCJwolMCaDSwtAaA==" + }, + "@walletconnect/window-metadata": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@walletconnect/window-metadata/-/window-metadata-1.0.0.tgz", + "integrity": "sha512-9eFvmJxIKCC3YWOL97SgRkKhlyGXkrHwamfechmqszbypFspaSk+t2jQXAEU7YClHF6Qjw5eYOmy1//zFi9/GA==", + "requires": { + "@walletconnect/window-getters": "^1.0.0" + } + }, + "@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" + } + }, + "@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 + }, + "@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 + }, + "@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 + }, + "@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": { + "@webassemblyjs/floating-point-hex-parser": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "@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 + }, + "@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": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1" + } + }, + "@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": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "@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": { + "@xtuc/long": "4.2.2" + } + }, + "@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": { + "@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" + } + }, + "@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" + } + }, + "@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": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1" + } + }, + "@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": { + "@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" + } + }, + "@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": { + "@webassemblyjs/ast": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "@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==", + "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==", + "dev": true + }, + "abab": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz", + "integrity": "sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==", + "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 + }, + "abstract-leveldown": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.6.3.tgz", + "integrity": "sha512-2++wDf/DYqkPR3o5tbfdhF96EfMApo1GpPfzOsR/ZYXdkSmELlvOOEAl9iKkRsktMPHdGjO4rtkBpf2I7TiTeA==", + "requires": { + "xtend": "~4.0.0" + } + }, + "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": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + } + }, + "acorn": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz", + "integrity": "sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==", + "dev": true + }, + "acorn-import-assertions": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", + "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", + "dev": true, + "requires": {} + }, + "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, + "requires": {} + }, + "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": { + "loader-utils": "^2.0.0", + "regex-parser": "^2.2.11" + }, + "dependencies": { + "loader-utils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", + "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + } + } + } + }, + "aes-js": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-3.1.2.tgz", + "integrity": "sha512-e5pEa2kBnBOgR4Y/p20pskXI74UEz7de8ZGVo58asOtvSVG5YAbJeELPZxOmt+Bnz3rX753YKhfIn4X4l1PPRQ==" + }, + "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": { + "debug": "4" + } + }, + "agentkeepalive": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz", + "integrity": "sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA==", + "dev": true, + "requires": { + "debug": "^4.1.0", + "depd": "^1.1.2", + "humanize-ms": "^1.2.1" + } + }, + "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": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, + "ajv": { + "version": "8.9.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.9.0.tgz", + "integrity": "sha512-qOKJyNj/h+OWx7s5DePL6Zu1KeM9jPZhwBqs+7DzP6bGOvqzVCSf0xueYmVuaC/oQ/VtS2zLMLHdQFbkka+XDQ==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "dev": true, + "requires": { + "ajv": "^8.0.0" + } + }, + "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, + "requires": {} + }, + "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 + }, + "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": { + "type-fest": "^0.21.3" + } + }, + "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 + }, + "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": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "requires": { + "color-convert": "^1.9.0" + } + }, + "anymatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "dev": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "aproba": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", + "dev": true + }, + "are-we-there-yet": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.0.tgz", + "integrity": "sha512-0GWpv50YSOcLXaN6/FAKY3vfRbllXWV2xvfA/oKJF8pzFhWXPV+yjhJXDBbjscDYowv7Yw1A3uigpzn5iEGTyw==", + "dev": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + } + }, + "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": "4.2.2", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-4.2.2.tgz", + "integrity": "sha512-o/HelwhuKpTj/frsOsbNLNgnNGVIFsVP/SW2BSF14gVl7kAfMOJ6/8wUAUvG1R1NHKrfG+2sHZTu0yauT1qBrA==", + "dev": true, + "requires": { + "@babel/runtime": "^7.10.2", + "@babel/runtime-corejs3": "^7.10.2" + } + }, + "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-union": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-3.0.1.tgz", + "integrity": "sha512-1OvF9IbWwaeiM9VhzYXVQacMibxpXOMYVNIvMtKRyX9SImBXpKcFr8XvFDeEslCyuH/t6KRt7HEO94AlP8Iatw==", + "dev": true + }, + "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==", + "requires": { + "safer-buffer": "~2.1.0" + } + }, + "asn1.js": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", + "requires": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "safer-buffer": "^2.1.0" + } + }, + "assert": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz", + "integrity": "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==", + "dev": true, + "requires": { + "es6-object-assign": "^1.1.0", + "is-nan": "^1.2.1", + "object-is": "^1.0.1", + "util": "^0.12.0" + } + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + }, + "async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "requires": { + "lodash": "^4.17.14" + } + }, + "async-eventemitter": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/async-eventemitter/-/async-eventemitter-0.2.4.tgz", + "integrity": "sha512-pd20BwL7Yt1zwDFy+8MX8F1+WCT8aQeKj0kQnTrH9WaeRETlRamVhD0JtRPmrV4GfOJ2F9CvdQkZeZhnh2TuHw==", + "requires": { + "async": "^2.4.0" + } + }, + "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==" + }, + "async-mutex": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/async-mutex/-/async-mutex-0.2.6.tgz", + "integrity": "sha512-Hs4R+4SPgamu6rSGW8C7cV9gaWUKEHykfzCCvIRuaVv636Ju10ZdeUbvb4TBEW0INuq2DHZqXbK4Nd3yG4RaRw==", + "requires": { + "tslib": "^2.0.0" + } + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "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==", + "dev": true + }, + "autoprefixer": { + "version": "10.4.2", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.2.tgz", + "integrity": "sha512-9fOPpHKuDW1w/0EKfRmVnxTDt8166MAnLI3mgZ1JCnhNtYWxcJ6Ud5CO/AVOZi/AvFa8DY9RTy3h3+tFBlrrdQ==", + "dev": true, + "requires": { + "browserslist": "^4.19.1", + "caniuse-lite": "^1.0.30001297", + "fraction.js": "^4.1.2", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.0", + "postcss-value-parser": "^4.2.0" + } + }, + "available-typed-arrays": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", + "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==" + }, + "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=" + }, + "aws4": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", + "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==" + }, + "axobject-query": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz", + "integrity": "sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==", + "dev": true + }, + "babel-loader": { + "version": "8.2.3", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.3.tgz", + "integrity": "sha512-n4Zeta8NC3QAsuyiizu0GkmRcQ6clkV9WFUnUf1iXP//IeSKbWjofW3UHyZVwlOB4y039YQKefawyTn64Zwbuw==", + "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": { + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", + "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + } + } + }, + "babel-plugin-dynamic-import-node": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", + "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "dev": true, + "requires": { + "object.assign": "^4.1.0" + } + }, + "babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + } + }, + "babel-plugin-polyfill-corejs2": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.1.tgz", + "integrity": "sha512-v7/T6EQcNfVLfcN2X8Lulb7DjprieyLWJK/zOWH5DUYcAgex9sP3h25Q+DLsX9TloXe3y1O8l2q2Jv9q8UVB9w==", + "requires": { + "@babel/compat-data": "^7.13.11", + "@babel/helper-define-polyfill-provider": "^0.3.1", + "semver": "^6.1.1" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "babel-plugin-polyfill-corejs3": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.2.tgz", + "integrity": "sha512-G3uJih0XWiID451fpeFaYGVuxHEjzKTHtc9uGFEjR6hHrvNzeS/PX+LLLcetJcytsB5m4j+K3o/EpXJNb/5IEQ==", + "requires": { + "@babel/helper-define-polyfill-provider": "^0.3.1", + "core-js-compat": "^3.21.0" + } + }, + "babel-plugin-polyfill-regenerator": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz", + "integrity": "sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A==", + "requires": { + "@babel/helper-define-polyfill-provider": "^0.3.1" + } + }, + "babel-plugin-styled-components": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/babel-plugin-styled-components/-/babel-plugin-styled-components-2.0.6.tgz", + "integrity": "sha512-Sk+7o/oa2HfHv3Eh8sxoz75/fFvEdHsXV4grdeHufX0nauCmymlnN0rGhIvfpMQSJMvGutJ85gvCGea4iqmDpg==", + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.0", + "@babel/helper-module-imports": "^7.16.0", + "babel-plugin-syntax-jsx": "^6.18.0", + "lodash": "^4.17.11", + "picomatch": "^2.3.0" + } + }, + "babel-plugin-syntax-jsx": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", + "integrity": "sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY=" + }, + "backoff": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/backoff/-/backoff-2.5.0.tgz", + "integrity": "sha1-9hbtqdPktmuMp/ynn2lXIsX44m8=", + "requires": { + "precond": "0.2" + } + }, + "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 + }, + "base-x": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.9.tgz", + "integrity": "sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ==", + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "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 + }, + "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=", + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "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 + }, + "bignumber.js": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.2.tgz", + "integrity": "sha512-GAcQvbpsM0pUb0zw1EI0KhQEZ+lRwR5fYaAp3vPOYuP7aDvGy6cVN6XHLauvF8SOga2y0dcLcjt3iQDTSEliyw==" + }, + "binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true + }, + "bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dev": true, + "requires": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "blakejs": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/blakejs/-/blakejs-1.1.1.tgz", + "integrity": "sha512-bLG6PHOCZJKNshTjGRBvET0vTciwQE6zFKOKKXPDJfwFBd4Ac0yBfPZqcGvGJap50l7ktvlpFqc2jGVaUgbJgg==" + }, + "bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" + }, + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-SAAwOxgoCKMGs9uUAUFHygfLAyaniaoun6I8mFY9pRAJL9+Kec34aU+oIjDhTycub1jozEfEwx1W1IuOYxVSFw==", + "requires": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "1.8.1", + "iconv-lite": "0.4.24", + "on-finished": "~2.3.0", + "qs": "6.9.7", + "raw-body": "2.4.3", + "type-is": "~1.6.18" + }, + "dependencies": { + "bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" + }, + "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=" + } + } + }, + "bonjour": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz", + "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", + "dev": true, + "requires": { + "array-flatten": "^2.1.0", + "deep-equal": "^1.0.1", + "dns-equal": "^1.0.0", + "dns-txt": "^2.0.2", + "multicast-dns": "^6.0.1", + "multicast-dns-service-types": "^1.1.0" + } + }, + "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==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" + }, + "browser": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/browser/-/browser-0.2.6.tgz", + "integrity": "sha1-sr1AU59tHK+rEreUOVTX51j2tj4=", + "dev": true, + "requires": { + "cheerio": "x.x.x", + "junjo": ">=0.2.6", + "termcolor": "x.x.x", + "u2r": "x.x.x" + } + }, + "browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "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" + } + }, + "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==", + "requires": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "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==", + "requires": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "browserify-rsa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", + "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", + "requires": { + "bn.js": "^5.0.0", + "randombytes": "^2.0.1" + }, + "dependencies": { + "bn.js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz", + "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==" + } + } + }, + "browserify-sign": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", + "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", + "requires": { + "bn.js": "^5.1.1", + "browserify-rsa": "^4.0.1", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.5.3", + "inherits": "^2.0.4", + "parse-asn1": "^5.1.5", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "dependencies": { + "bn.js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz", + "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==" + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + } + } + }, + "browserslist": { + "version": "4.20.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.0.tgz", + "integrity": "sha512-bnpOoa+DownbciXj0jVGENf8VYQnE2LNWomhYuCsMmmx9Jd9lwq0WXODuwpSsp8AVdKM2/HorrzxAfbKvWTByQ==", + "requires": { + "caniuse-lite": "^1.0.30001313", + "electron-to-chromium": "^1.4.76", + "escalade": "^3.1.1", + "node-releases": "^2.0.2", + "picocolors": "^1.0.0" + } + }, + "bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha1-vhYedsNU9veIrkBx9j806MTwpCo=", + "requires": { + "base-x": "^3.0.2" + } + }, + "bs58check": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", + "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", + "requires": { + "bs58": "^4.0.0", + "create-hash": "^1.1.0", + "safe-buffer": "^5.1.2" + } + }, + "btoa": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz", + "integrity": "sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g==" + }, + "buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "buffer-alloc": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", + "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", + "requires": { + "buffer-alloc-unsafe": "^1.1.0", + "buffer-fill": "^1.0.0" + } + }, + "buffer-alloc-unsafe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", + "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==" + }, + "buffer-fill": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", + "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=" + }, + "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==" + }, + "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 + }, + "buffer-to-arraybuffer": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/buffer-to-arraybuffer/-/buffer-to-arraybuffer-0.0.5.tgz", + "integrity": "sha1-YGSkD6dutDxyOrqe+PbhIW0QURo=" + }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" + }, + "bufferutil": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.6.tgz", + "integrity": "sha512-jduaYOYtnio4aIAyc6UbvPCVcgq7nYpVnucyxr6eCYg/Woad9Hf/oxxBRDnGGjPfjUm6j5O/uBWhIu4iLebFaw==", + "requires": { + "node-gyp-build": "^4.3.0" + } + }, + "builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", + "dev": true + }, + "builtins": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", + "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", + "dev": true + }, + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", + "dev": true + }, + "cacache": { + "version": "15.3.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz", + "integrity": "sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==", + "dev": true, + "requires": { + "@npmcli/fs": "^1.0.0", + "@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" + } + }, + "cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "requires": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" + }, + "dependencies": { + "get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "requires": { + "pump": "^3.0.0" + } + }, + "lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==" + } + } + }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" + }, + "camelize": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.0.tgz", + "integrity": "sha1-FkpUg+Yw+kMh5a8HAg5TGDGyYJs=" + }, + "can-use-dom": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/can-use-dom/-/can-use-dom-0.1.0.tgz", + "integrity": "sha1-IsxKNKCrxDlQ9CxkEQJKP2NmtFo=" + }, + "caniuse-lite": { + "version": "1.0.30001317", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001317.tgz", + "integrity": "sha512-xIZLh8gBm4dqNX0gkzrBeyI86J2eCjWzYAs40q88smG844YIrN4tVQl/RhquHvKEKImWWFIVh1Lxe5n1G/N+GQ==" + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, + "chart.js": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-3.7.1.tgz", + "integrity": "sha512-8knRegQLFnPQAheZV8MjxIXc5gQEfDFD897BJgv/klO/vtIyFFmgMXrNfgrXpbTr/XbTturxRgxIXx/Y+ASJBA==" + }, + "checkpoint-store": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/checkpoint-store/-/checkpoint-store-1.1.0.tgz", + "integrity": "sha1-BOTLUWuRQziTWB5tRgGnjpVS6gY=", + "requires": { + "functional-red-black-tree": "^1.0.1" + } + }, + "cheerio": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz", + "integrity": "sha1-qbqoYKP5tZWmuBsahocxIe06Jp4=", + "dev": true, + "requires": { + "css-select": "~1.2.0", + "dom-serializer": "~0.1.0", + "entities": "~1.1.1", + "htmlparser2": "^3.9.1", + "lodash.assignin": "^4.0.9", + "lodash.bind": "^4.1.4", + "lodash.defaults": "^4.0.1", + "lodash.filter": "^4.4.0", + "lodash.flatten": "^4.2.0", + "lodash.foreach": "^4.3.0", + "lodash.map": "^4.4.0", + "lodash.merge": "^4.4.0", + "lodash.pick": "^4.2.1", + "lodash.reduce": "^4.4.0", + "lodash.reject": "^4.4.0", + "lodash.some": "^4.4.0" + }, + "dependencies": { + "css-select": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", + "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "dev": true, + "requires": { + "boolbase": "~1.0.0", + "css-what": "2.1", + "domutils": "1.5.1", + "nth-check": "~1.0.1" + } + }, + "css-what": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", + "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==", + "dev": true + }, + "dom-serializer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", + "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", + "dev": true, + "requires": { + "domelementtype": "^1.3.0", + "entities": "^1.1.1" + } + }, + "domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", + "dev": true + }, + "domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "dev": true, + "requires": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", + "dev": true + }, + "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==", + "dev": true, + "requires": { + "boolbase": "~1.0.0" + } + } + } + }, + "chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "requires": { + "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" + }, + "dependencies": { + "glob-parent": { + "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": "^4.0.1" + } + } + } + }, + "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.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "dev": true + }, + "cids": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/cids/-/cids-0.7.5.tgz", + "integrity": "sha512-zT7mPeghoWAu+ppn8+BS1tQ5qGmbMfB4AregnQjA/qHY3GC1m1ptI9GkWNlgeu38r7CuRdXB47uY2XgAYt6QVA==", + "requires": { + "buffer": "^5.5.0", + "class-is": "^1.1.0", + "multibase": "~0.6.0", + "multicodec": "^1.0.0", + "multihashes": "~0.4.15" + }, + "dependencies": { + "multicodec": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/multicodec/-/multicodec-1.0.4.tgz", + "integrity": "sha512-NDd7FeS3QamVtbgfvu5h7fd1IlbaC4EQ0/pgU4zqE2vdHCmBGsUa0TiM8/TdSeG6BMPC92OOCf8F1ocE/Wkrrg==", + "requires": { + "buffer": "^5.6.0", + "varint": "^5.0.0" + } + } + } + }, + "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==", + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "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, + "requires": {} + }, + "class-is": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/class-is/-/class-is-1.1.0.tgz", + "integrity": "sha512-rhjH9AG1fvabIDoGRVH587413LPjTZgmDF9fOFCbFJQV4yuocX1mHxxvXI4g3cGwbVY9wAYIoKlg1N79frJKQw==" + }, + "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": { + "restore-cursor": "^3.1.0" + } + }, + "cli-spinners": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz", + "integrity": "sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==", + "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": "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": "^7.0.0" + } + }, + "clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=" + }, + "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": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + } + }, + "clone-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", + "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", + "requires": { + "mimic-response": "^1.0.0" + } + }, + "color": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/color/-/color-0.11.4.tgz", + "integrity": "sha1-bXtcdPtl6EHNSHkq0e1eB7kE12Q=", + "requires": { + "clone": "^1.0.2", + "color-convert": "^1.3.0", + "color-string": "^0.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==", + "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": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "color-string": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-0.3.0.tgz", + "integrity": "sha1-J9RvtnAlxcL6JZk7+/V55HhBuZE=", + "requires": { + "color-name": "^1.0.0" + } + }, + "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 + }, + "colorette": { + "version": "2.0.16", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.16.tgz", + "integrity": "sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g==", + "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==", + "requires": { + "delayed-stream": "~1.0.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 + }, + "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==", + "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" + } + }, + "compression": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "dev": true, + "requires": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "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 + } + } + }, + "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 + }, + "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 + } + } + }, + "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-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", + "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": { + "safe-buffer": "5.2.1" + }, + "dependencies": { + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + } + } + }, + "content-hash": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/content-hash/-/content-hash-2.5.2.tgz", + "integrity": "sha512-FvIQKy0S1JaWV10sMsA7TRx8bpU+pqPkhbsfvOJAdjRXvYxEckAwQWGwtRjiaJfh+E0DvcWUGqcdjwMGFjsSdw==", + "requires": { + "cids": "^0.7.1", + "multicodec": "^0.5.5", + "multihashes": "^0.4.15" + } + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" + }, + "convert-source-map": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", + "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", + "requires": { + "safe-buffer": "~5.1.1" + } + }, + "cookie": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", + "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==" + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + }, + "cookiejar": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.3.tgz", + "integrity": "sha512-JxbCBUdrfr6AQjOXrxoTvAMJO4HBTUIlBzslcJPAz+/KT8yk53fXun51u+RenNYvad/+Vc2DIz5o9UxlCDymFQ==" + }, + "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": { + "is-what": "^3.14.1" + } + }, + "copy-to-clipboard": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.3.1.tgz", + "integrity": "sha512-i13qo6kIHTTpCm8/Wup+0b1mVWETvu2kIMzKoK8FpkLkFxlt0znUAHcMzox+T8sPlqtZXq3CulEjQHsYiGFJUw==", + "requires": { + "toggle-selection": "^1.0.6" + } + }, + "copy-webpack-plugin": { + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-10.2.1.tgz", + "integrity": "sha512-nr81NhCAIpAWXGCK5thrKmfCQ6GDY0L5RN0U+BnIn/7Us55+UCex5ANNsNKmIVtDRnk0Ecf+/kzp9SUVrrBMLg==", + "dev": true, + "requires": { + "fast-glob": "^3.2.7", + "glob-parent": "^6.0.1", + "globby": "^12.0.2", + "normalize-path": "^3.0.0", + "schema-utils": "^4.0.0", + "serialize-javascript": "^6.0.0" + }, + "dependencies": { + "ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.3" + } + }, + "schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + } + } + } + }, + "core-js": { + "version": "3.20.3", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.20.3.tgz", + "integrity": "sha512-vVl8j8ph6tRS3B8qir40H7yw7voy17xL0piAjlbBUsH7WIfzoedL/ZOr1OV9FyZQLWXsayOJyV4tnRyXR85/ag==" + }, + "core-js-compat": { + "version": "3.21.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.21.1.tgz", + "integrity": "sha512-gbgX5AUvMb8gwxC7FLVWYT7Kkgu/y7+h/h1X43yJkNqhlK2fuYyQimqvKGNZFAY6CKii/GFKJ2cp/1/42TN36g==", + "requires": { + "browserslist": "^4.19.1", + "semver": "7.0.0" + }, + "dependencies": { + "semver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", + "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==" + } + } + }, + "core-js-pure": { + "version": "3.21.1", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.21.1.tgz", + "integrity": "sha512-12VZfFIu+wyVbBebyHmRTuEE/tZrB4tJToWcwAMcsp3h4+sHR+fMJWbKpYiCRWlhFBq+KNyO8rIV9rTkeVmznQ==", + "dev": true + }, + "core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" + }, + "cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "requires": { + "object-assign": "^4", + "vary": "^1" + } + }, + "cosmiconfig": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz", + "integrity": "sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==", + "dev": true, + "requires": { + "@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" + } + }, + "crc-32": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.1.tgz", + "integrity": "sha512-Dn/xm/1vFFgs3nfrpEVScHoIslO9NZRITWGz/1E/St6u4xw99vfZzVkW0OSnzx2h9egej9xwMCEut6sqwokM/w==", + "requires": { + "exit-on-epipe": "~1.0.1", + "printj": "~1.3.1" + } + }, + "create-ecdh": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", + "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", + "requires": { + "bn.js": "^4.1.0", + "elliptic": "^6.5.3" + } + }, + "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==", + "requires": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.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==", + "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" + } + }, + "critters": { + "version": "0.0.16", + "resolved": "https://registry.npmjs.org/critters/-/critters-0.0.16.tgz", + "integrity": "sha512-JwjgmO6i3y6RWtLYmXwO5jMd+maZt8Tnfu7VVISmEWyQqfLpB8soBswf8/2bu6SBXxtKA68Al3c+qIG1ApT68A==", + "dev": true, + "requires": { + "chalk": "^4.1.0", + "css-select": "^4.2.0", + "parse5": "^6.0.1", + "parse5-htmlparser2-tree-adapter": "^6.0.1", + "postcss": "^8.3.7", + "pretty-bytes": "^5.3.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "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": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.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 + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.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": "^4.0.0" + } + } + } + }, + "cross-fetch": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-2.2.5.tgz", + "integrity": "sha512-xqYAhQb4NhCJSRym03dwxpP1bYXpK3y7UN83Bo2WFi3x1Zmzn0SL/6xGoPr+gpt4WmNrgCCX3HPysvOwFOW36w==", + "requires": { + "node-fetch": "2.6.1", + "whatwg-fetch": "2.0.4" + } + }, + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "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==", + "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" + } + }, + "css": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", + "integrity": "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==", + "dev": true, + "requires": { + "inherits": "^2.0.4", + "source-map": "^0.6.1", + "source-map-resolve": "^0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "css-blank-pseudo": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-3.0.3.tgz", + "integrity": "sha512-VS90XWtsHGqoM0t4KpH053c4ehxZ2E6HtGI7x68YFV0pTo/QmkV/YFA+NnlvK8guxZVNWGQhVNJGC39Q8XF4OQ==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.9" + } + }, + "css-color-keywords": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz", + "integrity": "sha1-/qJhbcZ2spYmhrOvjb2+GAskTgU=" + }, + "css-has-pseudo": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-3.0.4.tgz", + "integrity": "sha512-Vse0xpR1K9MNlp2j5w1pgWIJtm1a8qS0JwS9goFYcImjlHEmywP9VUF05aGBXzGpDJF86QXk4L0ypBmwPhGArw==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.9" + } + }, + "css-loader": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.5.1.tgz", + "integrity": "sha512-gEy2w9AnJNnD9Kuo4XAP9VflW/ujKoS9c/syO+uWMlm5igc7LysKzPXaDoR2vroROkSwsTS2tGr1yGGEbZOYZQ==", + "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-prefers-color-scheme": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-6.0.3.tgz", + "integrity": "sha512-4BqMbZksRkJQx2zAjrokiGMd07RqOa2IxIrrN10lyBe9xhn9DEvjUK79J6jkeiv9D9hQFXKb6g1jwU62jziJZA==", + "dev": true, + "requires": {} + }, + "css-select": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.2.1.tgz", + "integrity": "sha512-/aUslKhzkTNCQUB2qTX84lVmfia9NyjP3WpDGtj/WxhwBzWBYUV3DgUpurHTme8UTPcPlAD1DJ+b0nN/t50zDQ==", + "dev": true, + "requires": { + "boolbase": "^1.0.0", + "css-what": "^5.1.0", + "domhandler": "^4.3.0", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + } + }, + "css-to-react-native": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.0.0.tgz", + "integrity": "sha512-Ro1yETZA813eoyUp2GDBhG2j+YggidUmzO1/v9eYBKR2EHVEniE2MI/NqpTQ954BMpTPZFsGNPm46qFB9dpaPQ==", + "requires": { + "camelize": "^1.0.0", + "css-color-keywords": "^1.0.0", + "postcss-value-parser": "^4.0.2" + } + }, + "css-what": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-5.1.0.tgz", + "integrity": "sha512-arSMRWIIFY0hV8pIxZMEfmMI47Wj3R/aWpZDDxWYCPEiOMv6tfOrnpDtgxBYPEQD4V0Y/958+1TdC3iWTFcUPw==", + "dev": true + }, + "cssdb": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-5.1.0.tgz", + "integrity": "sha512-/vqjXhv1x9eGkE/zO6o8ZOI7dgdZbLVLUGyVRbPgk6YipXbW87YzUCcO+Jrmi5bwJlAH6oD+MNeZyRgXea1GZw==", + "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==", + "dev": true + }, + "custom-event": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", + "integrity": "sha1-XQKkaFCt8bSjF5RqOSj8y1v9BCU=", + "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==", + "requires": { + "es5-ext": "^0.10.50", + "type": "^1.0.1" + } + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "requires": { + "assert-plus": "^1.0.0" + } + }, + "date-format": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/date-format/-/date-format-4.0.5.tgz", + "integrity": "sha512-zBhRiN/M0gDxUoM2xRtzTjJzSg0XEi1ofYpF84PfXeS3hN2PsGxmc7jw3DNQtFlimRbMmob5FC3G0cJq6jQQpw==", + "dev": true + }, + "debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "requires": { + "ms": "2.1.2" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" + }, + "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=" + }, + "decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "requires": { + "mimic-response": "^1.0.0" + } + }, + "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==", + "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" + } + }, + "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": "6.0.3", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", + "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", + "dev": true, + "requires": { + "execa": "^5.0.0" + } + }, + "defaults": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", + "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", + "dev": true, + "requires": { + "clone": "^1.0.2" + } + }, + "defer-to-connect": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==" + }, + "deferred-leveldown": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-1.2.2.tgz", + "integrity": "sha512-uukrWD2bguRtXilKt6cAWKyoXrTSMo5m7crUdLfWQmu8kIm88w3QZoUL+6nhpfKVmhHANER6Re3sKoNoZ3IKMA==", + "requires": { + "abstract-leveldown": "~2.6.0" + } + }, + "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 + }, + "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" + } + }, + "del": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/del/-/del-6.0.0.tgz", + "integrity": "sha512-1shh9DQ23L16oXSZKB2JxpL7iMy2E0S9d517ptA1P8iw0alkPtQcrKH7ru31rYtKwF499HkTu+DRzq3TCKDFRQ==", + "dev": true, + "requires": { + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", + "is-glob": "^4.0.1", + "is-path-cwd": "^2.2.0", + "is-path-inside": "^3.0.2", + "p-map": "^4.0.0", + "rimraf": "^3.0.2", + "slash": "^3.0.0" + }, + "dependencies": { + "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 + }, + "globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "requires": { + "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" + } + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "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=" + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", + "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.11.0", + "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz", + "integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==", + "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==", + "requires": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + }, + "detect-browser": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/detect-browser/-/detect-browser-5.3.0.tgz", + "integrity": "sha512-53rsFbGdwMwlF7qvCt0ypLM5V5/Mbl0szB7GPN8y9NCcbknYOeVVXdrXEq+90IwAfrrzt6Hd+u2E2ntakICU8w==" + }, + "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 + }, + "di": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", + "integrity": "sha1-gGZJMmzqp8qjMG112YXqJ0i6kTw=", + "dev": true + }, + "diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "requires": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, + "dijkstrajs": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/dijkstrajs/-/dijkstrajs-1.0.2.tgz", + "integrity": "sha512-QV6PMaHTCNmKSeP6QoXhVTw9snc9VD8MulTT0Bd99Pacp4SS1cjcrYPgBPmibqKVtMJJfqC6XvOXgPMEEPH/fg==" + }, + "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": { + "path-type": "^4.0.0" + } + }, + "dns-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", + "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=", + "dev": true + }, + "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": { + "ip": "^1.1.0", + "safe-buffer": "^5.0.1" + } + }, + "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" + } + }, + "doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "dom-serialize": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", + "integrity": "sha1-ViromZ9Evl6jB29UGdzVnrQ6yVs=", + "dev": true, + "requires": { + "custom-event": "~1.0.0", + "ent": "~2.2.0", + "extend": "^3.0.0", + "void-elements": "^2.0.0" + } + }, + "dom-serializer": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz", + "integrity": "sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==", + "dev": true, + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + } + }, + "dom-walk": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz", + "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==" + }, + "domelementtype": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", + "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", + "dev": true + }, + "domhandler": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.0.tgz", + "integrity": "sha512-fC0aXNQXqKSFTr2wDNZDhsEYjCiYsDWl3D01kwt25hm1YIPyDGHvvi3rw+PLqHAl/m71MaiF7d5zvBr0p5UB2g==", + "dev": true, + "requires": { + "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" + } + }, + "duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=" + }, + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + }, + "ejs": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.6.tgz", + "integrity": "sha512-9lt9Zse4hPucPkoP7FHDF0LQAlGyF9JVpnClFLFH3aSSbxmyoqINRpp/9wePWJTUl4KOQwRL72Iw3InHPDkoGw==", + "dev": true, + "requires": { + "jake": "^10.6.1" + } + }, + "electron-to-chromium": { + "version": "1.4.84", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.84.tgz", + "integrity": "sha512-b+DdcyOiZtLXHdgEG8lncYJdxbdJWJvclPNMg0eLUDcSOSO876WA/pYjdSblUTd7eJdIs4YdIxHWGazx7UPSJw==" + }, + "elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "requires": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^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": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "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.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dev": true, + "optional": true, + "requires": { + "iconv-lite": "^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, + "optional": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } + } + } + }, + "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==", + "requires": { + "once": "^1.4.0" + } + }, + "engine.io": { + "version": "6.1.3", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.1.3.tgz", + "integrity": "sha512-rqs60YwkvWTLLnfazqgZqLa/aKo+9cueVfEi/dZ8PyGyaf8TLOxj++4QMIgeG3Gn0AhrWiFXvghsoY9L9h25GA==", + "dev": true, + "requires": { + "@types/cookie": "^0.4.1", + "@types/cors": "^2.8.12", + "@types/node": ">=10.0.0", + "accepts": "~1.3.4", + "base64id": "2.0.0", + "cookie": "~0.4.1", + "cors": "~2.8.5", + "debug": "~4.3.1", + "engine.io-parser": "~5.0.3", + "ws": "~8.2.3" + }, + "dependencies": { + "ws": { + "version": "8.2.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz", + "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==", + "dev": true, + "requires": {} + } + } + }, + "engine.io-parser": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.3.tgz", + "integrity": "sha512-BtQxwF27XUNnSafQLvDi0dQ8s3i6VgzSoQMJacpIcGNrlUdfHSKbgm3jmjCVvQluGzqwujQMPAoMai3oYSTurg==", + "dev": true, + "requires": { + "@socket.io/base64-arraybuffer": "~1.0.2" + } + }, + "enhanced-resolve": { + "version": "5.9.2", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.9.2.tgz", + "integrity": "sha512-GIm3fQfwLJ8YZx2smuHpBKkXC1yOk+OBEmKckVyL0i/ea8mqDEykK3ld5dgH1QYPNyT/lIllxV2LULnxCHaHkA==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + } + }, + "enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "dev": true, + "requires": { + "ansi-colors": "^4.1.1" + } + }, + "ent": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", + "integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0=", + "dev": true + }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true + }, + "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 + }, + "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==", + "requires": { + "prr": "~1.0.1" + } + }, + "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": { + "is-arrayish": "^0.2.1" + } + }, + "es-abstract": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.1.tgz", + "integrity": "sha512-2vJ6tjA/UfqLm2MPs7jxVybLoB8i1t1Jd9R3kISld20sIxPcTbLuggQOUxeWeAvIUkduv/CfMjuh4WmiXr2v9w==", + "requires": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "get-intrinsic": "^1.1.1", + "get-symbol-description": "^1.0.0", + "has": "^1.0.3", + "has-symbols": "^1.0.2", + "internal-slot": "^1.0.3", + "is-callable": "^1.2.4", + "is-negative-zero": "^2.0.1", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.1", + "is-string": "^1.0.7", + "is-weakref": "^1.0.1", + "object-inspect": "^1.11.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.2", + "string.prototype.trimend": "^1.0.4", + "string.prototype.trimstart": "^1.0.4", + "unbox-primitive": "^1.0.1" + } + }, + "es-module-lexer": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", + "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", + "dev": true + }, + "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==", + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "es5-ext": { + "version": "0.10.58", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.58.tgz", + "integrity": "sha512-LHO+KBBaHGwjy32ibSaMY+ZzjpC4K4I5bPoijICMBL7gXEXfrEUrzssmNP+KigbQEp1dRUnGkry/vUnxOqptLQ==", + "requires": { + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.3", + "next-tick": "^1.1.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-object-assign": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/es6-object-assign/-/es6-object-assign-1.1.0.tgz", + "integrity": "sha1-wsNYJlYkfDnqEHyx5mUrb58kUjw=", + "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" + } + }, + "esbuild-android-arm64": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.22.tgz", + "integrity": "sha512-k1Uu4uC4UOFgrnTj2zuj75EswFSEBK+H6lT70/DdS4mTAOfs2ECv2I9ZYvr3w0WL0T4YItzJdK7fPNxcPw6YmQ==", + "dev": true, + "optional": true + }, + "esbuild-darwin-64": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.22.tgz", + "integrity": "sha512-d8Ceuo6Vw6HM3fW218FB6jTY6O3r2WNcTAU0SGsBkXZ3k8SDoRLd3Nrc//EqzdgYnzDNMNtrWegK2Qsss4THhw==", + "dev": true, + "optional": true + }, + "esbuild-darwin-arm64": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.22.tgz", + "integrity": "sha512-YAt9Tj3SkIUkswuzHxkaNlT9+sg0xvzDvE75LlBo4DI++ogSgSmKNR6B4eUhU5EUUepVXcXdRIdqMq9ppeRqfw==", + "dev": true, + "optional": true + }, + "esbuild-freebsd-64": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.22.tgz", + "integrity": "sha512-ek1HUv7fkXMy87Qm2G4IRohN+Qux4IcnrDBPZGXNN33KAL0pEJJzdTv0hB/42+DCYWylSrSKxk3KUXfqXOoH4A==", + "dev": true, + "optional": true + }, + "esbuild-freebsd-arm64": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.22.tgz", + "integrity": "sha512-zPh9SzjRvr9FwsouNYTqgqFlsMIW07O8mNXulGeQx6O5ApgGUBZBgtzSlBQXkHi18WjrosYfsvp5nzOKiWzkjQ==", + "dev": true, + "optional": true + }, + "esbuild-linux-32": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.22.tgz", + "integrity": "sha512-SnpveoE4nzjb9t2hqCIzzTWBM0RzcCINDMBB67H6OXIuDa4KqFqaIgmTchNA9pJKOVLVIKd5FYxNiJStli21qg==", + "dev": true, + "optional": true + }, + "esbuild-linux-64": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.22.tgz", + "integrity": "sha512-Zcl9Wg7gKhOWWNqAjygyqzB+fJa19glgl2JG7GtuxHyL1uEnWlpSMytTLMqtfbmRykIHdab797IOZeKwk5g0zg==", + "dev": true, + "optional": true + }, + "esbuild-linux-arm": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.22.tgz", + "integrity": "sha512-soPDdbpt/C0XvOOK45p4EFt8HbH5g+0uHs5nUKjHVExfgR7du734kEkXR/mE5zmjrlymk5AA79I0VIvj90WZ4g==", + "dev": true, + "optional": true + }, + "esbuild-linux-arm64": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.22.tgz", + "integrity": "sha512-8q/FRBJtV5IHnQChO3LHh/Jf7KLrxJ/RCTGdBvlVZhBde+dk3/qS9fFsUy+rs3dEi49aAsyVitTwlKw1SUFm+A==", + "dev": true, + "optional": true + }, + "esbuild-linux-mips64le": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.22.tgz", + "integrity": "sha512-SiNDfuRXhGh1JQLLA9JPprBgPVFOsGuQ0yDfSPTNxztmVJd8W2mX++c4FfLpAwxuJe183mLuKf7qKCHQs5ZnBQ==", + "dev": true, + "optional": true + }, + "esbuild-linux-ppc64le": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.22.tgz", + "integrity": "sha512-6t/GI9I+3o1EFm2AyN9+TsjdgWCpg2nwniEhjm2qJWtJyJ5VzTXGUU3alCO3evopu8G0hN2Bu1Jhz2YmZD0kng==", + "dev": true, + "optional": true + }, + "esbuild-linux-riscv64": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.22.tgz", + "integrity": "sha512-AyJHipZKe88sc+tp5layovquw5cvz45QXw5SaDgAq2M911wLHiCvDtf/07oDx8eweCyzYzG5Y39Ih568amMTCQ==", + "dev": true, + "optional": true + }, + "esbuild-linux-s390x": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.22.tgz", + "integrity": "sha512-Sz1NjZewTIXSblQDZWEFZYjOK6p8tV6hrshYdXZ0NHTjWE+lwxpOpWeElUGtEmiPcMT71FiuA9ODplqzzSxkzw==", + "dev": true, + "optional": true + }, + "esbuild-netbsd-64": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.22.tgz", + "integrity": "sha512-TBbCtx+k32xydImsHxvFgsOCuFqCTGIxhzRNbgSL1Z2CKhzxwT92kQMhxort9N/fZM2CkRCPPs5wzQSamtzEHA==", + "dev": true, + "optional": true + }, + "esbuild-openbsd-64": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.22.tgz", + "integrity": "sha512-vK912As725haT313ANZZZN+0EysEEQXWC/+YE4rQvOQzLuxAQc2tjbzlAFREx3C8+uMuZj/q7E5gyVB7TzpcTA==", + "dev": true, + "optional": true + }, + "esbuild-sunos-64": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.22.tgz", + "integrity": "sha512-/mbJdXTW7MTcsPhtfDsDyPEOju9EOABvCjeUU2OJ7fWpX/Em/H3WYDa86tzLUbcVg++BScQDzqV/7RYw5XNY0g==", + "dev": true, + "optional": true + }, + "esbuild-wasm": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.14.22.tgz", + "integrity": "sha512-FOSAM29GN1fWusw0oLMv6JYhoheDIh5+atC72TkJKfIUMID6yISlicoQSd9gsNSFsNBvABvtE2jR4JB1j4FkFw==", + "dev": true + }, + "esbuild-windows-32": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.22.tgz", + "integrity": "sha512-1vRIkuvPTjeSVK3diVrnMLSbkuE36jxA+8zGLUOrT4bb7E/JZvDRhvtbWXWaveUc/7LbhaNFhHNvfPuSw2QOQg==", + "dev": true, + "optional": true + }, + "esbuild-windows-64": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.22.tgz", + "integrity": "sha512-AxjIDcOmx17vr31C5hp20HIwz1MymtMjKqX4qL6whPj0dT9lwxPexmLj6G1CpR3vFhui6m75EnBEe4QL82SYqw==", + "dev": true, + "optional": true + }, + "esbuild-windows-arm64": { + "version": "0.14.22", + "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.22.tgz", + "integrity": "sha512-5wvQ+39tHmRhNpu2Fx04l7QfeK3mQ9tKzDqqGR8n/4WUxsFxnVLfDRBGirIfk4AfWlxk60kqirlODPoT5LqMUg==", + "dev": true, + "optional": true + }, + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + }, + "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=" + }, + "eslint": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.11.0.tgz", + "integrity": "sha512-/KRpd9mIRg2raGxHRGwW9ZywYNAClZrHjdueHcrVDuO3a6bj83eoTirCCk0M0yPwOjWYKHwRVRid+xK4F/GHgA==", + "dev": true, + "requires": { + "@eslint/eslintrc": "^1.2.1", + "@humanwhocodes/config-array": "^0.9.2", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.1.1", + "eslint-utils": "^3.0.0", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.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": "^6.0.1", + "globals": "^13.6.0", + "ignore": "^5.2.0", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^4.1.0", + "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", + "regexpp": "^3.2.0", + "strip-ansi": "^6.0.1", + "strip-json-comments": "^3.1.0", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "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" + } + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "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": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.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 + }, + "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-scope": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", + "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "dev": true, + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + } + }, + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + }, + "globals": { + "version": "13.13.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz", + "integrity": "sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==", + "dev": true, + "requires": { + "type-fest": "^0.20.2" + } + }, + "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 + }, + "js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "requires": { + "argparse": "^2.0.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 + }, + "supports-color": { + "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": "^4.0.0" + } + }, + "type-fest": { + "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 + } + } + }, + "eslint-etc": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/eslint-etc/-/eslint-etc-5.1.0.tgz", + "integrity": "sha512-Rmjl01h5smi5cbsFne2xpTuch2xNnwXiX2lbS4HttXUN5FwXKAwG1UEFBVGO1nC091YO/QyVahyfNPJSX2ae+g==", + "dev": true, + "requires": { + "@typescript-eslint/experimental-utils": "^5.0.0", + "tsutils": "^3.17.1", + "tsutils-etc": "^1.4.1" + } + }, + "eslint-plugin-ngrx": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-ngrx/-/eslint-plugin-ngrx-2.0.4.tgz", + "integrity": "sha512-pNLZM3dlqowBMz/SoeYFHWC15NLtwv25q4/usWSPRfn2viDJzhdGRjphIyYG7zzgh3urHvBPhBuRwGE4hn57ng==", + "dev": true, + "requires": { + "@angular-devkit/schematics": "^13.0.3", + "@typescript-eslint/experimental-utils": "^5.4.0", + "eslint-etc": "^5.1.0", + "semver": "^7.3.5", + "strip-json-comments": "3.1.1" + } + }, + "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, + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + } + }, + "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" + }, + "dependencies": { + "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 + } + } + }, + "eslint-visitor-keys": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "dev": true + }, + "espree": { + "version": "9.3.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.1.tgz", + "integrity": "sha512-bvdyLmJMfwkV3NCRl5ZhJf22zBFo1y8bYh3VYb+bfzqNB4Je68P2sSuXyuFquzWLebHpNd2/d5uv7yoP9ISnGQ==", + "dev": true, + "requires": { + "acorn": "^8.7.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^3.3.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==", + "dev": true + }, + "esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "dev": true, + "requires": { + "estraverse": "^5.1.0" + }, + "dependencies": { + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + } + } + }, + "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": { + "estraverse": "^5.2.0" + }, + "dependencies": { + "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": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" + }, + "eth-block-tracker": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/eth-block-tracker/-/eth-block-tracker-4.4.3.tgz", + "integrity": "sha512-A8tG4Z4iNg4mw5tP1Vung9N9IjgMNqpiMoJ/FouSFwNCGHv2X0mmOYwtQOJzki6XN7r7Tyo01S29p7b224I4jw==", + "requires": { + "@babel/plugin-transform-runtime": "^7.5.5", + "@babel/runtime": "^7.5.5", + "eth-query": "^2.1.0", + "json-rpc-random-id": "^1.0.1", + "pify": "^3.0.0", + "safe-event-emitter": "^1.0.1" + }, + "dependencies": { + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" + } + } + }, + "eth-ens-namehash": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/eth-ens-namehash/-/eth-ens-namehash-2.0.8.tgz", + "integrity": "sha1-IprEbsqG1S4MmR58sq74P/D2i88=", + "requires": { + "idna-uts46-hx": "^2.3.1", + "js-sha3": "^0.5.7" + }, + "dependencies": { + "js-sha3": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.5.7.tgz", + "integrity": "sha1-DU/9gALVMzqrr0oj7tL2N0yfKOc=" + } + } + }, + "eth-json-rpc-filters": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/eth-json-rpc-filters/-/eth-json-rpc-filters-4.2.2.tgz", + "integrity": "sha512-DGtqpLU7bBg63wPMWg1sCpkKCf57dJ+hj/k3zF26anXMzkmtSBDExL8IhUu7LUd34f0Zsce3PYNO2vV2GaTzaw==", + "requires": { + "@metamask/safe-event-emitter": "^2.0.0", + "async-mutex": "^0.2.6", + "eth-json-rpc-middleware": "^6.0.0", + "eth-query": "^2.1.2", + "json-rpc-engine": "^6.1.0", + "pify": "^5.0.0" + }, + "dependencies": { + "pify": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz", + "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==" + } + } + }, + "eth-json-rpc-infura": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/eth-json-rpc-infura/-/eth-json-rpc-infura-5.1.0.tgz", + "integrity": "sha512-THzLye3PHUSGn1EXMhg6WTLW9uim7LQZKeKaeYsS9+wOBcamRiCQVGHa6D2/4P0oS0vSaxsBnU/J6qvn0MPdow==", + "requires": { + "eth-json-rpc-middleware": "^6.0.0", + "eth-rpc-errors": "^3.0.0", + "json-rpc-engine": "^5.3.0", + "node-fetch": "^2.6.0" + }, + "dependencies": { + "json-rpc-engine": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/json-rpc-engine/-/json-rpc-engine-5.4.0.tgz", + "integrity": "sha512-rAffKbPoNDjuRnXkecTjnsE3xLLrb00rEkdgalINhaYVYIxDwWtvYBr9UFbhTvPB1B2qUOLoFd/cV6f4Q7mh7g==", + "requires": { + "eth-rpc-errors": "^3.0.0", + "safe-event-emitter": "^1.0.1" + } + } + } + }, + "eth-json-rpc-middleware": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/eth-json-rpc-middleware/-/eth-json-rpc-middleware-6.0.0.tgz", + "integrity": "sha512-qqBfLU2Uq1Ou15Wox1s+NX05S9OcAEL4JZ04VZox2NS0U+RtCMjSxzXhLFWekdShUPZ+P8ax3zCO2xcPrp6XJQ==", + "requires": { + "btoa": "^1.2.1", + "clone": "^2.1.1", + "eth-query": "^2.1.2", + "eth-rpc-errors": "^3.0.0", + "eth-sig-util": "^1.4.2", + "ethereumjs-util": "^5.1.2", + "json-rpc-engine": "^5.3.0", + "json-stable-stringify": "^1.0.1", + "node-fetch": "^2.6.1", + "pify": "^3.0.0", + "safe-event-emitter": "^1.0.1" + }, + "dependencies": { + "clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=" + }, + "ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "requires": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "json-rpc-engine": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/json-rpc-engine/-/json-rpc-engine-5.4.0.tgz", + "integrity": "sha512-rAffKbPoNDjuRnXkecTjnsE3xLLrb00rEkdgalINhaYVYIxDwWtvYBr9UFbhTvPB1B2qUOLoFd/cV6f4Q7mh7g==", + "requires": { + "eth-rpc-errors": "^3.0.0", + "safe-event-emitter": "^1.0.1" + } + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" + } + } + }, + "eth-lib": { + "version": "0.1.29", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.1.29.tgz", + "integrity": "sha512-bfttrr3/7gG4E02HoWTDUcDDslN003OlOoBxk9virpAZQ1ja/jDgwkWB8QfJF7ojuEowrqy+lzp9VcJG7/k5bQ==", + "requires": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "nano-json-stream-parser": "^0.1.2", + "servify": "^0.1.12", + "ws": "^3.0.0", + "xhr-request-promise": "^0.1.2" + }, + "dependencies": { + "ws": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", + "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", + "requires": { + "async-limiter": "~1.0.0", + "safe-buffer": "~5.1.0", + "ultron": "~1.1.0" + } + } + } + }, + "eth-query": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/eth-query/-/eth-query-2.1.2.tgz", + "integrity": "sha1-1nQdkAAQa1FRDHLbktY2VFam2l4=", + "requires": { + "json-rpc-random-id": "^1.0.0", + "xtend": "^4.0.1" + } + }, + "eth-rpc-errors": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eth-rpc-errors/-/eth-rpc-errors-3.0.0.tgz", + "integrity": "sha512-iPPNHPrLwUlR9xCSYm7HHQjWBasor3+KZfRvwEWxMz3ca0yqnlBeJrnyphkGIXZ4J7AMAaOLmwy4AWhnxOiLxg==", + "requires": { + "fast-safe-stringify": "^2.0.6" + } + }, + "eth-sig-util": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/eth-sig-util/-/eth-sig-util-1.4.2.tgz", + "integrity": "sha1-jZWCAsftuq6Dlwf7pvCf8ydgYhA=", + "requires": { + "ethereumjs-abi": "git+https://github.com/ethereumjs/ethereumjs-abi.git", + "ethereumjs-util": "^5.1.1" + }, + "dependencies": { + "ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "requires": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + } + } + }, + "ethereum-bloom-filters": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/ethereum-bloom-filters/-/ethereum-bloom-filters-1.0.10.tgz", + "integrity": "sha512-rxJ5OFN3RwjQxDcFP2Z5+Q9ho4eIdEmSc2ht0fCu8Se9nbXjZ7/031uXoUYJ87KHCOdVeiUuwSnoS7hmYAGVHA==", + "requires": { + "js-sha3": "^0.8.0" + } + }, + "ethereum-common": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/ethereum-common/-/ethereum-common-0.2.0.tgz", + "integrity": "sha512-XOnAR/3rntJgbCdGhqdaLIxDLWKLmsZOGhHdBKadEr6gEnJLH52k93Ou+TUdFaPN3hJc3isBZBal3U/XZ15abA==" + }, + "ethereum-cryptography": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", + "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", + "requires": { + "@types/pbkdf2": "^3.0.0", + "@types/secp256k1": "^4.0.1", + "blakejs": "^1.1.0", + "browserify-aes": "^1.2.0", + "bs58check": "^2.1.2", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "hash.js": "^1.1.7", + "keccak": "^3.0.0", + "pbkdf2": "^3.0.17", + "randombytes": "^2.1.0", + "safe-buffer": "^5.1.2", + "scrypt-js": "^3.0.0", + "secp256k1": "^4.0.1", + "setimmediate": "^1.0.5" + } + }, + "ethereumjs-abi": { + "version": "git+ssh://git@github.com/ethereumjs/ethereumjs-abi.git#ee3994657fa7a427238e6ba92a84d0b529bbcde0", + "from": "ethereumjs-abi@git+https://github.com/ethereumjs/ethereumjs-abi.git", + "requires": { + "bn.js": "^4.11.8", + "ethereumjs-util": "^6.0.0" + }, + "dependencies": { + "ethereumjs-util": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-6.2.1.tgz", + "integrity": "sha512-W2Ktez4L01Vexijrm5EB6w7dg4n/TgpoYU4avuT5T3Vmnw/eCRtiBrJfQYS/DCSvDIOLn2k57GcHdeBcgVxAqw==", + "requires": { + "@types/bn.js": "^4.11.3", + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "0.1.6", + "rlp": "^2.2.3" + } + } + } + }, + "ethereumjs-account": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/ethereumjs-account/-/ethereumjs-account-2.0.5.tgz", + "integrity": "sha512-bgDojnXGjhMwo6eXQC0bY6UK2liSFUSMwwylOmQvZbSl/D7NXQ3+vrGO46ZeOgjGfxXmgIeVNDIiHw7fNZM4VA==", + "requires": { + "ethereumjs-util": "^5.0.0", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + }, + "dependencies": { + "ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "requires": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + } + } + }, + "ethereumjs-block": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/ethereumjs-block/-/ethereumjs-block-1.7.1.tgz", + "integrity": "sha512-B+sSdtqm78fmKkBq78/QLKJbu/4Ts4P2KFISdgcuZUPDm9x+N7qgBPIIFUGbaakQh8bzuquiRVbdmvPKqbILRg==", + "requires": { + "async": "^2.0.1", + "ethereum-common": "0.2.0", + "ethereumjs-tx": "^1.2.2", + "ethereumjs-util": "^5.0.0", + "merkle-patricia-tree": "^2.1.2" + }, + "dependencies": { + "ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "requires": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + } + } + }, + "ethereumjs-common": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/ethereumjs-common/-/ethereumjs-common-1.5.2.tgz", + "integrity": "sha512-hTfZjwGX52GS2jcVO6E2sx4YuFnf0Fhp5ylo4pEPhEffNln7vS59Hr5sLnp3/QCazFLluuBZ+FZ6J5HTp0EqCA==" + }, + "ethereumjs-tx": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/ethereumjs-tx/-/ethereumjs-tx-1.3.7.tgz", + "integrity": "sha512-wvLMxzt1RPhAQ9Yi3/HKZTn0FZYpnsmQdbKYfUUpi4j1SEIcbkd9tndVjcPrufY3V7j2IebOpC00Zp2P/Ay2kA==", + "requires": { + "ethereum-common": "^0.0.18", + "ethereumjs-util": "^5.0.0" + }, + "dependencies": { + "ethereum-common": { + "version": "0.0.18", + "resolved": "https://registry.npmjs.org/ethereum-common/-/ethereum-common-0.0.18.tgz", + "integrity": "sha1-L9w1dvIykDNYl26znaeDIT/5Uj8=" + }, + "ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "requires": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + } + } + }, + "ethereumjs-util": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.4.tgz", + "integrity": "sha512-p6KmuPCX4mZIqsQzXfmSx9Y0l2hqf+VkAiwSisW3UKUFdk8ZkAt+AYaor83z2nSi6CU2zSsXMlD80hAbNEGM0A==", + "requires": { + "@types/bn.js": "^5.1.0", + "bn.js": "^5.1.2", + "create-hash": "^1.1.2", + "ethereum-cryptography": "^0.1.3", + "rlp": "^2.2.4" + }, + "dependencies": { + "@types/bn.js": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.0.tgz", + "integrity": "sha512-QSSVYj7pYFN49kW77o2s9xTCwZ8F2xLbjLLSEVh8D2F4JUhZtPAGOFLTD+ffqksBx/u4cE/KImFjyhqCjn/LIA==", + "requires": { + "@types/node": "*" + } + }, + "bn.js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz", + "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==" + } + } + }, + "ethereumjs-vm": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/ethereumjs-vm/-/ethereumjs-vm-2.6.0.tgz", + "integrity": "sha512-r/XIUik/ynGbxS3y+mvGnbOKnuLo40V5Mj1J25+HEO63aWYREIqvWeRO/hnROlMBE5WoniQmPmhiaN0ctiHaXw==", + "requires": { + "async": "^2.1.2", + "async-eventemitter": "^0.2.2", + "ethereumjs-account": "^2.0.3", + "ethereumjs-block": "~2.2.0", + "ethereumjs-common": "^1.1.0", + "ethereumjs-util": "^6.0.0", + "fake-merkle-patricia-tree": "^1.0.1", + "functional-red-black-tree": "^1.0.1", + "merkle-patricia-tree": "^2.3.2", + "rustbn.js": "~0.2.0", + "safe-buffer": "^5.1.1" + }, + "dependencies": { + "ethereumjs-block": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/ethereumjs-block/-/ethereumjs-block-2.2.2.tgz", + "integrity": "sha512-2p49ifhek3h2zeg/+da6XpdFR3GlqY3BIEiqxGF8j9aSRIgkb7M1Ky+yULBKJOu8PAZxfhsYA+HxUk2aCQp3vg==", + "requires": { + "async": "^2.0.1", + "ethereumjs-common": "^1.5.0", + "ethereumjs-tx": "^2.1.1", + "ethereumjs-util": "^5.0.0", + "merkle-patricia-tree": "^2.1.2" + }, + "dependencies": { + "ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "requires": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + } + } + }, + "ethereumjs-tx": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ethereumjs-tx/-/ethereumjs-tx-2.1.2.tgz", + "integrity": "sha512-zZEK1onCeiORb0wyCXUvg94Ve5It/K6GD1K+26KfFKodiBiS6d9lfCXlUKGBBdQ+bv7Day+JK0tj1K+BeNFRAw==", + "requires": { + "ethereumjs-common": "^1.5.0", + "ethereumjs-util": "^6.0.0" + } + }, + "ethereumjs-util": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-6.2.1.tgz", + "integrity": "sha512-W2Ktez4L01Vexijrm5EB6w7dg4n/TgpoYU4avuT5T3Vmnw/eCRtiBrJfQYS/DCSvDIOLn2k57GcHdeBcgVxAqw==", + "requires": { + "@types/bn.js": "^4.11.3", + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "0.1.6", + "rlp": "^2.2.3" + } + } + } + }, + "ethjs-unit": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/ethjs-unit/-/ethjs-unit-0.1.6.tgz", + "integrity": "sha1-xmWSHkduh7ziqdWIpv4EBbLEFpk=", + "requires": { + "bn.js": "4.11.6", + "number-to-bn": "1.7.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=" + } + } + }, + "ethjs-util": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/ethjs-util/-/ethjs-util-0.1.6.tgz", + "integrity": "sha512-CUnVOQq7gSpDHZVVrQW8ExxUETWrnrvXYvYz55wOU8Uj4VCgw56XC2B/fVqQN+f7gmrnRHSLVnFAwsCuNwji8w==", + "requires": { + "is-hex-prefixed": "1.0.0", + "strip-hex-prefix": "1.0.0" + } + }, + "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==" + }, + "events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" + }, + "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==", + "requires": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "requires": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + } + }, + "exit-on-epipe": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/exit-on-epipe/-/exit-on-epipe-1.0.1.tgz", + "integrity": "sha512-h2z5mrROTxce56S+pnvAV890uu7ls7f1kEvVGJbw1OlFH3/mlJ5bkXu0KRyW94v37zzHPiUd55iLn3DA7TjWpw==" + }, + "express": { + "version": "4.17.3", + "resolved": "https://registry.npmjs.org/express/-/express-4.17.3.tgz", + "integrity": "sha512-yuSQpz5I+Ch7gFrPCk4/c+dIBKlQUxtgwqzph132bsT6qhuzss6I8cLJQz7B3rFblzd6wtcI0ZbGltH/C4LjUg==", + "requires": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.19.2", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.4.2", + "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.7", + "qs": "6.9.7", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.17.2", + "serve-static": "1.14.2", + "setprototypeof": "1.2.0", + "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=" + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + } + } + }, + "ext": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.6.0.tgz", + "integrity": "sha512-sdBImtzkq2HpkdRLtlLWDa6w4DX22ijZLKx8BMPUuKe1c5lbN6xwQDQCxSfxBQnHZ13ls/FH0MQZx/q/gr6FQg==", + "requires": { + "type": "^2.5.0" + }, + "dependencies": { + "type": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.6.0.tgz", + "integrity": "sha512-eiDBDOmkih5pMbo9OqsqPRGMljLodLcwd5XD5JbtNB0o89xZAwynY9EdCDsJU7LtcVCClu9DvM7/0Ep1hYX3EQ==" + } + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "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": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + } + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" + }, + "fake-merkle-patricia-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/fake-merkle-patricia-tree/-/fake-merkle-patricia-tree-1.0.1.tgz", + "integrity": "sha1-S4w6z7Ugr635hgsfFM2M40As3dM=", + "requires": { + "checkpoint-store": "^1.1.0" + } + }, + "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==" + }, + "fast-glob": { + "version": "3.2.11", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz", + "integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "dependencies": { + "glob-parent": { + "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": "^4.0.1" + } + } + } + }, + "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==" + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "fast-safe-stringify": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", + "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==" + }, + "fastq": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", + "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", + "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" + } + }, + "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" + } + }, + "filelist": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.2.tgz", + "integrity": "sha512-z7O0IS8Plc39rTCq6i6iHxk43duYOn8uFJiWSewIq0Bww1RNybVHSCjahmcC87ZqAm4OTvFzlzeGu3XAzG1ctQ==", + "dev": true, + "requires": { + "minimatch": "^3.0.4" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "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" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } + } + }, + "find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "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" + } + }, + "flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dev": true, + "requires": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + } + }, + "flatted": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.5.tgz", + "integrity": "sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==", + "dev": true + }, + "follow-redirects": { + "version": "1.14.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz", + "integrity": "sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==", + "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=" + }, + "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==", + "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==" + }, + "fraction.js": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", + "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", + "dev": true + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" + }, + "fs-extra": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.1.tgz", + "integrity": "sha512-NbdoVMZso2Lsrn/QwLXOy6rm0ufY2zEOKCDzJR/0kBsb0E6qed0P3iYK+Ath3BfvXEeu4JhEtXLgILx5psUfag==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dev": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "fs-monkey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", + "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==", + "dev": true + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "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==" + }, + "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": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=" + }, + "gauge": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.3.tgz", + "integrity": "sha512-ICw1DhAwMtb22rYFwEHgJcx1JCwJGv3x6G0OQUq56Nge+H4Q8JEwr8iveS0XFlsUNSI67F5ffMGK25bK4Pmskw==", + "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==" + }, + "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.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + } + }, + "get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true + }, + "get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true + }, + "get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + } + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "requires": { + "assert-plus": "^1.0.0" + } + }, + "glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "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" + } + }, + "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" + } + }, + "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 + }, + "global": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz", + "integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==", + "requires": { + "min-document": "^2.19.0", + "process": "^0.11.10" + } + }, + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==" + }, + "globby": { + "version": "12.2.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-12.2.0.tgz", + "integrity": "sha512-wiSuFQLZ+urS9x2gGPl1H5drc5twabmm4m2gTR27XDFyjUHJUNsS8o/2aKyIF6IoBaR630atdher0XJ5g6OMmA==", + "dev": true, + "requires": { + "array-union": "^3.0.1", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.7", + "ignore": "^5.1.9", + "merge2": "^1.4.1", + "slash": "^4.0.0" + } + }, + "got": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "requires": { + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" + }, + "dependencies": { + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "requires": { + "pump": "^3.0.0" + } + } + } + }, + "graceful-fs": { + "version": "4.2.9", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", + "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + }, + "handle-thing": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", + "dev": true + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" + }, + "har-validator": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "requires": { + "ajv": "^6.12.3", + "har-schema": "^2.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==", + "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==" + } + } + }, + "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" + } + }, + "has-bigints": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", + "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==" + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" + }, + "has-symbol-support-x": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz", + "integrity": "sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw==" + }, + "has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" + }, + "has-to-string-tag-x": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz", + "integrity": "sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw==", + "requires": { + "has-symbol-support-x": "^1.4.1" + } + }, + "has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "requires": { + "has-symbols": "^1.0.2" + } + }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", + "dev": true + }, + "hash-base": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "requires": { + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "dependencies": { + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + } + } + }, + "hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "requires": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "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": { + "@assemblyscript/loader": "^0.10.1", + "base64-js": "^1.2.0", + "pako": "^1.0.3" + } + }, + "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=", + "requires": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "requires": { + "react-is": "^16.7.0" + }, + "dependencies": { + "react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + } + } + }, + "hosted-git-info": { + "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": "^6.0.0" + } + }, + "hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + }, + "dependencies": { + "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==", + "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" + } + }, + "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" + } + } + } + }, + "html-entities": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.2.tgz", + "integrity": "sha512-c3Ab/url5ksaT0WyleslpBEthOzWhrjQbg75y7XUsfSzi3Dgzt0l8w5e7DylRn15MTlMMD58dTfzddNS2kcAjQ==", + "dev": true + }, + "html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "htmlparser2": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", + "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", + "dev": true, + "requires": { + "domelementtype": "^1.3.1", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^3.1.1" + }, + "dependencies": { + "dom-serializer": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", + "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", + "dev": true, + "requires": { + "domelementtype": "^2.0.1", + "entities": "^2.0.0" + }, + "dependencies": { + "domelementtype": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", + "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", + "dev": true + }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true + } + } + }, + "domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", + "dev": true + }, + "domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "dev": true, + "requires": { + "domelementtype": "1" + } + }, + "domutils": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", + "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", + "dev": true, + "requires": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", + "dev": true + } + } + }, + "http-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==" + }, + "http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=", + "dev": true + }, + "http-errors": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", + "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.1" + } + }, + "http-https": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/http-https/-/http-https-1.0.0.tgz", + "integrity": "sha1-L5CN1fHbQGjAWM1ubUzjkskTOJs=" + }, + "http-parser-js": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.6.tgz", + "integrity": "sha512-vDlkRPDJn93swjcjqMSaGSPABbIarsr1TLAui/gLDXzV5VsJNdXNzMYDyNBLQkjWQCJ1uizu8T2oDMhmGt0PRA==", + "dev": true + }, + "http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "dev": true, + "requires": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + } + }, + "http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "dev": true, + "requires": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + } + }, + "http-proxy-middleware": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.4.tgz", + "integrity": "sha512-m/4FxX17SUvz4lJ5WPXOHDUuCwIqXLfLHs1s0uZ3oYjhoXlx9csYxaOa0ElDEJ+h8Q4iJ1s+lTMbiCa4EXIJqg==", + "dev": true, + "requires": { + "@types/http-proxy": "^1.17.8", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" + } + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "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": "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": "6", + "debug": "4" + } + }, + "human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true + }, + "humanize-ms": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", + "integrity": "sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0=", + "dev": true, + "requires": { + "ms": "^2.0.0" + } + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "dev": true, + "requires": {} + }, + "idna-uts46-hx": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/idna-uts46-hx/-/idna-uts46-hx-2.3.1.tgz", + "integrity": "sha512-PWoF9Keq6laYdIRwwCdhTPl60xRqAloYNMQLiyUnG42VjT53oW07BXIRM+NK7eQjzXjAk2gUvX9caRxlnF9TAA==", + "requires": { + "punycode": "2.1.0" + }, + "dependencies": { + "punycode": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.0.tgz", + "integrity": "sha1-X4Y+3Im5bbCQdLrXlHvwkFbKTn0=" + } + } + }, + "ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" + }, + "ignore": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", + "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", + "dev": true + }, + "ignore-walk": { + "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" + } + }, + "image-size": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", + "integrity": "sha1-Cd/Uq50g4p6xw+gLiZA3jfnjy5w=", + "dev": true, + "optional": true + }, + "immediate": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.3.0.tgz", + "integrity": "sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q==" + }, + "immutable": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.0.0.tgz", + "integrity": "sha512-zIE9hX70qew5qTUjSS7wi1iwj/l7+m54KWU247nhM3v806UdGj1yDndXj+IOYxxtW9zyLI+xqFNZjTuDaLUqFw==", + "dev": true + }, + "import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "dependencies": { + "resolve-from": { + "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 + } + } + }, + "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 + }, + "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": "2.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", + "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", + "dev": true + }, + "inquirer": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.0.tgz", + "integrity": "sha512-0crLweprevJ02tTuA6ThpoAERAGyVILC4sS74uib58Xf/zSr1/ZWtmm7D5CI+bSQEaA04f0K7idaHpQbSWgiVQ==", + "dev": true, + "requires": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.1", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.21", + "mute-stream": "0.0.8", + "ora": "^5.4.1", + "run-async": "^2.4.0", + "rxjs": "^7.2.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "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": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.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 + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.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": "^4.0.0" + } + } + } + }, + "internal-slot": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", + "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", + "requires": { + "get-intrinsic": "^1.1.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + } + }, + "ip": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", + "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", + "dev": true + }, + "ipaddr.js": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", + "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==", + "dev": true + }, + "is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + }, + "is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "requires": { + "has-bigints": "^1.0.1" + } + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-callable": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", + "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==" + }, + "is-core-module": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", + "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", + "requires": { + "has": "^1.0.3" + } + }, + "is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "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-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true + }, + "is-fn": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fn/-/is-fn-1.0.0.tgz", + "integrity": "sha1-lUPV3nvPWwiiLsiiC65uKG1RDYw=" + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "is-function": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-function/-/is-function-1.0.2.tgz", + "integrity": "sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==" + }, + "is-generator-function": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", + "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-glob": { + "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" + } + }, + "is-hex-prefixed": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz", + "integrity": "sha1-fY035q135dEnFIkTxXPggtd39VQ=" + }, + "is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "dev": true + }, + "is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha1-PZh3iZ5qU+/AFgUEzeFfgubwYdU=", + "dev": true + }, + "is-nan": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz", + "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3" + } + }, + "is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==" + }, + "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-number-object": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.6.tgz", + "integrity": "sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g==", + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-object": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz", + "integrity": "sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==" + }, + "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-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true + }, + "is-plain-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", + "dev": true + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-retry-allowed": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz", + "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==" + }, + "is-shared-array-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz", + "integrity": "sha512-IU0NmyknYZN0rChcKhRO1X8LYz5Isj/Fsqh8NJOSf+N/hCOTwy29F32Ik7a+QszE63IdvmwdTPDd6cZ5pg4cwA==" + }, + "is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true + }, + "is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "requires": { + "has-symbols": "^1.0.2" + } + }, + "is-typed-array": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.8.tgz", + "integrity": "sha512-HqH41TNZq2fgtGT8WHVFVJhBVGuY3AnP3Q36K8JKXUxSxRgk/d+7NjmwG2vo2mYmXK8UYZKu0qH8bVP5gEisjA==", + "requires": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "es-abstract": "^1.18.5", + "foreach": "^2.0.5", + "has-tostringtag": "^1.0.0" + } + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" + }, + "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-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "requires": { + "call-bind": "^1.0.2" + } + }, + "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-wsl": { + "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=" + }, + "isbinaryfile": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.8.tgz", + "integrity": "sha512-53h6XFniq77YdW+spoRrebh0mnmTxRPTlcuIArO57lmMdq4uBKFKaeTjnb92oYWrSn/LVL+LT+Hap2tFQj8V+w==", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "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=" + }, + "istanbul-lib-coverage": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", + "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", + "dev": true + }, + "istanbul-lib-instrument": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.1.0.tgz", + "integrity": "sha512-czwUz525rkOFDJxfKK6mYfIs9zBKILyrZQxjz3ABhjQXhbhFsSbo1HW/BFcsDnfJYJWA6thRR5/TUY2qs5W99Q==", + "dev": true, + "requires": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "dev": true, + "requires": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^3.0.0", + "supports-color": "^7.1.0" + }, + "dependencies": { + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.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": "^4.0.0" + } + } + } + }, + "istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "requires": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "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 + } + } + }, + "istanbul-reports": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.4.tgz", + "integrity": "sha512-r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw==", + "dev": true, + "requires": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + } + }, + "isurl": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz", + "integrity": "sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w==", + "requires": { + "has-to-string-tag-x": "^1.2.0", + "is-object": "^1.0.1" + } + }, + "jake": { + "version": "10.8.2", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.8.2.tgz", + "integrity": "sha512-eLpKyrfG3mzvGE2Du8VoPbeSkRry093+tyNjdYaBbJS9v17knImYGNXQCUV0gLxQtF82m3E8iRb/wdSQZLoq7A==", + "dev": true, + "requires": { + "async": "0.9.x", + "chalk": "^2.4.2", + "filelist": "^1.0.1", + "minimatch": "^3.0.4" + }, + "dependencies": { + "async": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz", + "integrity": "sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=", + "dev": true + } + } + }, + "jasmine-core": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-4.0.1.tgz", + "integrity": "sha512-w+JDABxQCkxbGGxg+a2hUVZyqUS2JKngvIyLGu/xiw2ZwgsoSB0iiecLQsQORSeaKQ6iGrCyWG86RfNDuoA7Lg==", + "dev": true + }, + "jest-worker": { + "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": "^8.0.0" + }, + "dependencies": { + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "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": "^4.0.0" + } + } + } + }, + "js-sha3": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", + "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "js-yaml": { + "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" + } + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" + }, + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==" + }, + "json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=" + }, + "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-rpc-engine": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/json-rpc-engine/-/json-rpc-engine-6.1.0.tgz", + "integrity": "sha512-NEdLrtrq1jUZyfjkr9OCz9EzCNhnRyWtt1PAnvnhwy6e8XETS0Dtc+ZNCO2gvuAoKsIn2+vCSowXTYE4CkgnAQ==", + "requires": { + "@metamask/safe-event-emitter": "^2.0.0", + "eth-rpc-errors": "^4.0.2" + }, + "dependencies": { + "eth-rpc-errors": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/eth-rpc-errors/-/eth-rpc-errors-4.0.3.tgz", + "integrity": "sha512-Z3ymjopaoft7JDoxZcEb3pwdGh7yiYMhOwm2doUt6ASXlMavpNlK6Cre0+IMl2VSGyEU9rkiperQhp5iRxn5Pg==", + "requires": { + "fast-safe-stringify": "^2.0.6" + } + } + } + }, + "json-rpc-random-id": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-rpc-random-id/-/json-rpc-random-id-1.0.1.tgz", + "integrity": "sha1-uknZat7RRE27jaPSA3SKy7zeyMg=" + }, + "json-schema": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==" + }, + "json-schema-traverse": { + "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": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", + "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", + "requires": { + "jsonify": "~0.0.0" + } + }, + "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": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" + }, + "json5": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", + "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", + "requires": { + "minimist": "^1.2.5" + } + }, + "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": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, + "jsonify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", + "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=" + }, + "jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", + "dev": true + }, + "jsprim": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", + "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.4.0", + "verror": "1.10.0" + } + }, + "junjo": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/junjo/-/junjo-0.2.8.tgz", + "integrity": "sha1-irILjLUbd+X8Oo1Bh3TXl1tTH9g=", + "dev": true + }, + "karma": { + "version": "6.3.17", + "resolved": "https://registry.npmjs.org/karma/-/karma-6.3.17.tgz", + "integrity": "sha512-2TfjHwrRExC8yHoWlPBULyaLwAFmXmxQrcuFImt/JsAsSZu1uOWTZ1ZsWjqQtWpHLiatJOHL5jFjXSJIgCd01g==", + "dev": true, + "requires": { + "@colors/colors": "1.5.0", + "body-parser": "^1.19.0", + "braces": "^3.0.2", + "chokidar": "^3.5.1", + "connect": "^3.7.0", + "di": "^0.0.1", + "dom-serialize": "^2.2.1", + "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": "^4.2.0", + "source-map": "^0.6.1", + "tmp": "^0.2.1", + "ua-parser-js": "^0.7.30", + "yargs": "^16.1.1" + }, + "dependencies": { + "mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", + "dev": true + }, + "mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dev": true, + "requires": { + "minimist": "^1.2.5" + } + }, + "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 + }, + "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" + } + }, + "yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "requires": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + } + }, + "yargs-parser": { + "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.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": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/karma-coverage/-/karma-coverage-2.1.1.tgz", + "integrity": "sha512-oxeOSBVK/jdZsiX03LhHQkO4eISSQb5GbHi6Nsw3Mw7G4u6yUgacBAftnO7q+emPBLMsrNbz1pGIrj+Jb3z17A==", + "dev": true, + "requires": { + "istanbul-lib-coverage": "^3.2.0", + "istanbul-lib-instrument": "^4.0.3", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.1", + "istanbul-reports": "^3.0.5", + "minimatch": "^3.0.4" + }, + "dependencies": { + "istanbul-lib-instrument": { + "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", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.0.0", + "semver": "^6.3.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 + } + } + }, + "karma-jasmine": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-4.0.1.tgz", + "integrity": "sha512-h8XDAhTiZjJKzfkoO1laMH+zfNlra+dEQHUAjpn5JV1zCPtOIVWGQjLBrqhnzQa/hrU2XrZwSyBa6XjEBzfXzw==", + "dev": true, + "requires": { + "jasmine-core": "^3.6.0" + }, + "dependencies": { + "jasmine-core": { + "version": "3.99.1", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-3.99.1.tgz", + "integrity": "sha512-Hu1dmuoGcZ7AfyynN3LsfruwMbxMALMka+YtZeGoLuDEySVmVAPaonkNoBRIw/ectu8b9tVQCJNgp4a4knp+tg==", + "dev": true + } + } + }, + "karma-jasmine-html-reporter": { + "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, + "requires": {} + }, + "karma-source-map-support": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/karma-source-map-support/-/karma-source-map-support-1.4.0.tgz", + "integrity": "sha512-RsBECncGO17KAoJCYXjv+ckIz+Ii9NCi+9enk+rq6XC81ezYkb4/RHE6CTXdA7IOJqoF3wcaLfVG0CPmE5ca6A==", + "dev": true, + "requires": { + "source-map-support": "^0.5.5" + } + }, + "keccak": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/keccak/-/keccak-3.0.2.tgz", + "integrity": "sha512-PyKKjkH53wDMLGrvmRGSNWgmSxZOUqbnXwKL9tmgbFYA1iAYqW21kfR7mZXV0MlESiefxQQE9X9fTa3X+2MPDQ==", + "requires": { + "node-addon-api": "^2.0.0", + "node-gyp-build": "^4.2.0", + "readable-stream": "^3.6.0" + }, + "dependencies": { + "node-addon-api": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.2.tgz", + "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==" + } + } + }, + "keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "requires": { + "json-buffer": "3.0.0" + } + }, + "keyvaluestorage-interface": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/keyvaluestorage-interface/-/keyvaluestorage-interface-1.0.0.tgz", + "integrity": "sha512-8t6Q3TclQ4uZynJY9IGr2+SsIGwK9JHcO6ootkHCGA0CrQCRy+VkouYNO2xicET6b9al7QKzpebNow+gkpCL8g==" + }, + "kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true + }, + "klona": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.5.tgz", + "integrity": "sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ==", + "dev": true + }, + "less": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/less/-/less-4.1.2.tgz", + "integrity": "sha512-EoQp/Et7OSOVu0aJknJOtlXZsnr8XE8KwuzTHOLeVSEx8pVWUICc8Q0VYRHgzyjX78nMEyC/oztWFbgyhtNfDA==", + "dev": true, + "requires": { + "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", + "needle": "^2.5.2", + "parse-node-version": "^1.0.1", + "source-map": "~0.6.0", + "tslib": "^2.3.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" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "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 + } + } + }, + "less-loader": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-10.2.0.tgz", + "integrity": "sha512-AV5KHWvCezW27GT90WATaDnfXBv99llDbtaj4bshq6DvAihMdNjaPDcUMa6EXKLRF+P2opFenJp89BXg91XLYg==", + "dev": true, + "requires": { + "klona": "^2.0.4" + } + }, + "level-codec": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-7.0.1.tgz", + "integrity": "sha512-Ua/R9B9r3RasXdRmOtd+t9TCOEIIlts+TN/7XTT2unhDaL6sJn83S3rUyljbr6lVtw49N3/yA0HHjpV6Kzb2aQ==" + }, + "level-errors": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-1.0.5.tgz", + "integrity": "sha512-/cLUpQduF6bNrWuAC4pwtUKA5t669pCsCi2XbmojG2tFeOr9j6ShtdDCtFFQO1DRt+EVZhx9gPzP9G2bUaG4ig==", + "requires": { + "errno": "~0.1.1" + } + }, + "level-iterator-stream": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-1.3.1.tgz", + "integrity": "sha1-5Dt4sagUPm+pek9IXrjqUwNS8u0=", + "requires": { + "inherits": "^2.0.1", + "level-errors": "^1.0.3", + "readable-stream": "^1.0.33", + "xtend": "^4.0.0" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + }, + "readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + } + } + }, + "level-ws": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/level-ws/-/level-ws-0.0.0.tgz", + "integrity": "sha1-Ny5RIXeSSgBCSwtDrvK7QkltIos=", + "requires": { + "readable-stream": "~1.0.15", + "xtend": "~2.1.1" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + }, + "object-keys": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz", + "integrity": "sha1-KKaq50KN0sOpLz2V8hM13SBOAzY=" + }, + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + }, + "xtend": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz", + "integrity": "sha1-bv7MKk2tjmlixJAbM3znuoe10os=", + "requires": { + "object-keys": "~0.4.0" + } + } + } + }, + "levelup": { + "version": "1.3.9", + "resolved": "https://registry.npmjs.org/levelup/-/levelup-1.3.9.tgz", + "integrity": "sha512-VVGHfKIlmw8w1XqpGOAGwq6sZm2WwWLmlDcULkKWQXEA5EopA8OBNJ2Ck2v6bdk8HeEZSbCSEgzXadyQFm76sQ==", + "requires": { + "deferred-leveldown": "~1.2.1", + "level-codec": "~7.0.0", + "level-errors": "~1.0.3", + "level-iterator-stream": "~1.3.0", + "prr": "~1.0.1", + "semver": "~5.4.1", + "xtend": "~4.0.0" + }, + "dependencies": { + "semver": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", + "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==" + } + } + }, + "levn": { + "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.2.1", + "type-check": "~0.4.0" + } + }, + "license-webpack-plugin": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-4.0.2.tgz", + "integrity": "sha512-771TFWFD70G1wLTC4oU2Cw4qvtmNrIw+wRvBtn+okgHl7slJVi7zfNcdmqDL72BojM30VNJ2UHylr1o77U37Jw==", + "dev": true, + "requires": { + "webpack-sources": "^3.0.0" + } + }, + "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": "4.2.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.2.0.tgz", + "integrity": "sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw==", + "dev": true + }, + "loader-utils": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.0.tgz", + "integrity": "sha512-HVl9ZqccQihZ7JM85dco1MvO9G+ONvxoGa9rkhzFsneGLKSUg1gJf9bWzhRhcvm2qChhWpebQhP44qxjKIUCaQ==", + "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" + } + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "lodash.assignin": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", + "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=", + "dev": true + }, + "lodash.bind": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz", + "integrity": "sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU=", + "dev": true + }, + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=" + }, + "lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=", + "dev": true + }, + "lodash.filter": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz", + "integrity": "sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4=", + "dev": true + }, + "lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=", + "dev": true + }, + "lodash.foreach": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", + "integrity": "sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=", + "dev": true + }, + "lodash.map": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz", + "integrity": "sha1-dx7Hg540c9nEzeKLGTlMNWL09tM=", + "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=" + }, + "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.pick": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", + "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=", + "dev": true + }, + "lodash.reduce": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz", + "integrity": "sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs=", + "dev": true + }, + "lodash.reject": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reject/-/lodash.reject-4.6.0.tgz", + "integrity": "sha1-gNZJLcFHCGS79YNTO2UfQqn1JBU=", + "dev": true + }, + "lodash.some": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz", + "integrity": "sha1-G7nzFO9ri63tE7VJFpsqlF62jk0=", + "dev": true + }, + "lodash.throttle": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", + "integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=" + }, + "log-symbols": { + "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": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "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": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.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 + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.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": "^4.0.0" + } + } + } + }, + "log4js": { + "version": "6.4.3", + "resolved": "https://registry.npmjs.org/log4js/-/log4js-6.4.3.tgz", + "integrity": "sha512-H/oQKcCVIhQ8zCtUh5aftdp9eRpGyVB1M5sKzAJ0i10q5jS+YXk133vtLgzT1RIoWMbIn7QD1LUto8a1hqh6gA==", + "dev": true, + "requires": { + "date-format": "^4.0.5", + "debug": "^4.3.3", + "flatted": "^3.2.5", + "rfdc": "^1.3.0", + "streamroller": "^3.0.5" + } + }, + "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==", + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, + "lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==" + }, + "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" + } + }, + "ltgt": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ltgt/-/ltgt-2.2.1.tgz", + "integrity": "sha1-81ypHEk/e3PaDgdJUwTxezH4fuU=" + }, + "magic-string": { + "version": "0.25.7", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", + "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==", + "dev": true, + "requires": { + "sourcemap-codec": "^1.4.4" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "^6.0.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "make-fetch-happen": { + "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" + } + }, + "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==", + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" + }, + "memdown": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/memdown/-/memdown-1.4.1.tgz", + "integrity": "sha1-tOThkhdGZP+65BNhqlAPMRnv4hU=", + "requires": { + "abstract-leveldown": "~2.7.1", + "functional-red-black-tree": "^1.0.1", + "immediate": "^3.2.3", + "inherits": "~2.0.1", + "ltgt": "~2.2.0", + "safe-buffer": "~5.1.1" + }, + "dependencies": { + "abstract-leveldown": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.7.2.tgz", + "integrity": "sha512-+OVvxH2rHVEhWLdbudP6p0+dNMXu8JA1CbhP19T8paTYAcX7oJ4OVjT+ZUVpv7mITxXHqDMej+GdqXBmXkw09w==", + "requires": { + "xtend": "~4.0.0" + } + } + } + }, + "memfs": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.1.tgz", + "integrity": "sha512-1c9VPVvW5P7I85c35zAdEr1TD5+F11IToIHIlrVIcflfnzPkJa0ZoYEoEdYDP8KgPFoSZ/opDrUsAoZWym3mtw==", + "dev": true, + "requires": { + "fs-monkey": "1.0.3" + } + }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" + }, + "merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true + }, + "merkle-patricia-tree": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/merkle-patricia-tree/-/merkle-patricia-tree-2.3.2.tgz", + "integrity": "sha512-81PW5m8oz/pz3GvsAwbauj7Y00rqm81Tzad77tHBwU7pIAtN+TJnMSOJhxBKflSVYhptMMb9RskhqHqrSm1V+g==", + "requires": { + "async": "^1.4.2", + "ethereumjs-util": "^5.0.0", + "level-ws": "0.0.0", + "levelup": "^1.2.1", + "memdown": "^1.0.0", + "readable-stream": "^2.0.0", + "rlp": "^2.0.0", + "semaphore": ">=1.0.1" + }, + "dependencies": { + "async": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=" + }, + "ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "requires": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "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==", + "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" + } + }, + "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==", + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "mersenne-twister": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/mersenne-twister/-/mersenne-twister-1.1.0.tgz", + "integrity": "sha1-+RZhjuQ9cXnvz2Qb7EUx65Zwl4o=" + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" + }, + "micromatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.2.3" + } + }, + "miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "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.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 + }, + "mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" + }, + "min-document": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", + "integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=", + "requires": { + "dom-walk": "^0.1.0" + } + }, + "mini-css-extract-plugin": { + "version": "2.5.3", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.5.3.tgz", + "integrity": "sha512-YseMB8cs8U/KCaAGQoqYmfUuhhGW0a9p9XvWXrxVOkE3/IiISTLw4ALNt7JR5B2eYauFM+PQGSbXMDmVbR7Tfw==", + "dev": true, + "requires": { + "schema-utils": "^4.0.0" + }, + "dependencies": { + "ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.3" + } + }, + "schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + } + } + } + }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, + "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=" + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + }, + "minipass": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", + "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "dev": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-fetch": { + "version": "1.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", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dev": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-json-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", + "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", + "dev": true, + "requires": { + "jsonparse": "^1.3.1", + "minipass": "^3.0.0" + } + }, + "minipass-pipeline": { + "version": "1.2.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": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dev": true, + "requires": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + } + }, + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" + }, + "mkdirp-promise": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/mkdirp-promise/-/mkdirp-promise-5.0.1.tgz", + "integrity": "sha1-6bj2jlUsaKnBcTuEiD96HdA5uKE=", + "requires": { + "mkdirp": "*" + } + }, + "mock-fs": { + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-4.14.0.tgz", + "integrity": "sha512-qYvlv/exQ4+svI3UOvPUpLDF0OMX5euvUH0Ny4N5QyRyhNdgAgUrVH3iUINSzEPLvx0kbo/Bp28GJKIqvE7URw==" + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "multibase": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/multibase/-/multibase-0.6.1.tgz", + "integrity": "sha512-pFfAwyTjbbQgNc3G7D48JkJxWtoJoBMaR4xQUOuB8RnCgRqaYmWNFeJTTvrJ2w51bjLq2zTby6Rqj9TQ9elSUw==", + "requires": { + "base-x": "^3.0.8", + "buffer": "^5.5.0" + } + }, + "multicast-dns": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.3.tgz", + "integrity": "sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==", + "dev": true, + "requires": { + "dns-packet": "^1.3.1", + "thunky": "^1.0.2" + } + }, + "multicast-dns-service-types": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz", + "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=", + "dev": true + }, + "multicodec": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/multicodec/-/multicodec-0.5.7.tgz", + "integrity": "sha512-PscoRxm3f+88fAtELwUnZxGDkduE2HD9Q6GHUOywQLjOGT/HAdhjLDYNZ1e7VR0s0TP0EwZ16LNUTFpoBGivOA==", + "requires": { + "varint": "^5.0.0" + } + }, + "multihashes": { + "version": "0.4.21", + "resolved": "https://registry.npmjs.org/multihashes/-/multihashes-0.4.21.tgz", + "integrity": "sha512-uVSvmeCWf36pU2nB4/1kzYZjsXD9vofZKpgudqkceYY5g2aZZXJ5r9lxuzoRLl1OAp28XljXsEJ/X/85ZsKmKw==", + "requires": { + "buffer": "^5.5.0", + "multibase": "^0.7.0", + "varint": "^5.0.0" + }, + "dependencies": { + "multibase": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/multibase/-/multibase-0.7.0.tgz", + "integrity": "sha512-TW8q03O0f6PNFTQDvh3xxH03c8CjGaaYrjkl9UQPG6rz53TQzzxJVCIWVjzcbN/Q5Y53Zd0IBQBMVktVgNx4Fg==", + "requires": { + "base-x": "^3.0.8", + "buffer": "^5.5.0" + } + } + } + }, + "mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "dev": true + }, + "nano-json-stream-parser": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/nano-json-stream-parser/-/nano-json-stream-parser-0.1.2.tgz", + "integrity": "sha1-DMj20OK2IrR5xA1JnEbWS3Vcb18=" + }, + "nanoid": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.1.tgz", + "integrity": "sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw==", + "dev": true + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "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.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" + }, + "neo-async": { + "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.1.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", + "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" + }, + "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" + } + }, + "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, + "optional": true + }, + "node-fetch": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", + "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==" + }, + "node-forge": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.2.1.tgz", + "integrity": "sha512-Fcvtbb+zBcZXbTTVwqGA5W+MKBj56UjVRevvchv5XrcyXbmNdesfZL37nlcWOfpgHhgmxApw3tQbTr4CqNmX4w==", + "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.3.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.3.0.tgz", + "integrity": "sha512-iWjXZvmboq0ja1pUGULQBexmxq8CV4xBhX7VDOTbL7ZR4FOowwY/VOtRxBN/yKxmdGoIp4j5ysNT4u3S2pDQ3Q==" + }, + "node-releases": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.2.tgz", + "integrity": "sha512-XxYDdcQ6eKqp/YjI+tb2C5WM2LgjnZrfYg4vgQt49EK268b6gYCHsBLrK2qvJo4FmCtqmKezb0WZFK4fkrZNsg==" + }, + "nopt": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", + "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", + "dev": true, + "requires": { + "abbrev": "1" + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", + "dev": true + }, + "normalize-url": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", + "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==" + }, + "npm-bundled": { + "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", + "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==", + "dev": true + }, + "npm-package-arg": { + "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": "^4.0.1", + "semver": "^7.3.4", + "validate-npm-package-name": "^3.0.0" + } + }, + "npm-packlist": { + "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": { + "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": "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": { + "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": "12.0.2", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-12.0.2.tgz", + "integrity": "sha512-Df5QT3RaJnXYuOwtXBXS9BWs+tHH2olvkCLh6jcR/b/u3DvPMlp3J0TvvYwplPKxHMOwfg287PYih9QqaVFoKA==", + "dev": true, + "requires": { + "make-fetch-happen": "^10.0.1", + "minipass": "^3.1.6", + "minipass-fetch": "^1.4.1", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.1.2", + "npm-package-arg": "^8.1.5" + }, + "dependencies": { + "@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true + }, + "cacache": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.0.0.tgz", + "integrity": "sha512-pMX6sqJSlGpxCM257by5syifGb7zH6C30CaJXeGXqmKNrHKqvMmwM8KgKmsZcUAsnNQkt7WvENH2Kl53RpFQuA==", + "dev": true, + "requires": { + "@npmcli/fs": "^1.0.0", + "@npmcli/move-file": "^1.1.2", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.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.4", + "mkdirp": "^1.0.4", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^8.0.1", + "tar": "^6.1.11", + "unique-filename": "^1.1.1" + }, + "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" + } + } + } + }, + "http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "requires": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + } + }, + "lru-cache": { + "version": "7.5.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.5.1.tgz", + "integrity": "sha512-q1TS8IqKvcg3aScamKCHpepSrHF537Ww7nHahBOxhDu9D2YoBXAsj/7uFdZFj1xJr9LmyeJ62AdyofCHafUbIA==", + "dev": true + }, + "make-fetch-happen": { + "version": "10.0.6", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.0.6.tgz", + "integrity": "sha512-4Gfh6lV3TLXmj7qz79hBFuvVqjYSMW6v2+sxtdX4LFQU0rK3V/txRjE0DoZb7X0IF3t9f8NO3CxPSWlvdckhVA==", + "dev": true, + "requires": { + "agentkeepalive": "^4.2.1", + "cacache": "^16.0.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.5.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^2.0.3", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^6.1.1", + "ssri": "^8.0.1" + }, + "dependencies": { + "minipass-fetch": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.0.3.tgz", + "integrity": "sha512-VA+eiiUtaIvpQJXISwE3OiMvQwAWrgKb97F0aXlCS1Ahikr8fEQq8m3Hf7Kv9KT3nokuHigJKsDMB6atU04olQ==", + "dev": true, + "requires": { + "encoding": "^0.1.13", + "minipass": "^3.1.6", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + } + } + } + } + } + }, + "npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "requires": { + "path-key": "^3.0.0" + } + }, + "npmlog": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.1.tgz", + "integrity": "sha512-BTHDvY6nrRHuRfyjt1MAufLxYdVXZfd099H4+i1f0lPywNQyI4foeNXJRObB/uy+TYqUW0vAD9gbdSOXPst7Eg==", + "dev": true, + "requires": { + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.0", + "set-blocking": "^2.0.0" + } + }, + "nth-check": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.1.tgz", + "integrity": "sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w==", + "dev": true, + "requires": { + "boolbase": "^1.0.0" + } + }, + "number-to-bn": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/number-to-bn/-/number-to-bn-1.7.0.tgz", + "integrity": "sha1-uzYjWS9+X54AMLGXe9QaDFP+HqA=", + "requires": { + "bn.js": "4.11.6", + "strip-hex-prefix": "1.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=" + } + } + }, + "nx": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/nx/-/nx-13.1.3.tgz", + "integrity": "sha512-clM0NQhQKYkqcNz2E3uYRMLwhp2L/9dBhJhQi9XBX4IAyA2gWAomhRIlLm5Xxg3g4h1xwSpP3eJ5t89VikY8Pw==", + "dev": true, + "requires": { + "@nrwl/cli": "*" + } + }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==" + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "object-inspect": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz", + "integrity": "sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==" + }, + "object-is": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", + "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + } + }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" + }, + "object.assign": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "requires": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "has-symbols": "^1.0.1", + "object-keys": "^1.1.1" + } + }, + "oboe": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/oboe/-/oboe-2.1.5.tgz", + "integrity": "sha1-VVQoTFQ6ImbXo48X4HOCH73jk80=", + "requires": { + "http-https": "^1.0.0" + } + }, + "obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", + "dev": true + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "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==", + "dev": true + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1" + } + }, + "onetime": { + "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": "8.4.0", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", + "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", + "dev": true, + "requires": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + } + }, + "optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dev": true, + "requires": { + "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.3" + } + }, + "ora": { + "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": { + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "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": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.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 + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.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": "^4.0.0" + } + } + } + }, + "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-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true + }, + "p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==" + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=" + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "p-map": { + "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" + } + }, + "p-retry": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.1.tgz", + "integrity": "sha512-e2xXGNhZOZ0lfgR9kL34iGlU8N/KO0xZnQxVEwdeOvpqNDQfdnxIYizvWtK8RglUa3bGqI8g0R/BdfzLMxRkiA==", + "dev": true, + "requires": { + "@types/retry": "^0.12.0", + "retry": "^0.13.1" + } + }, + "p-timeout": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-1.2.1.tgz", + "integrity": "sha1-XrOzU7f86Z8QGhA4iAuwVOu+o4Y=", + "requires": { + "p-finally": "^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==" + }, + "pacote": { + "version": "12.0.3", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-12.0.3.tgz", + "integrity": "sha512-CdYEl03JDrRO3x18uHjBYA9TyoW8gy+ThVcypcDkxPtKlw76e4ejhYB6i9lJ+/cebbjpqPW/CijjqxwDTts8Ow==", + "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", + "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": "^12.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": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "dev": true + }, + "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": { + "callsites": "^3.0.0" + } + }, + "parse-asn1": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", + "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", + "requires": { + "asn1.js": "^5.2.0", + "browserify-aes": "^1.0.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" + } + }, + "parse-headers": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.5.tgz", + "integrity": "sha512-ft3iAoLOB/MlwbNXgzy43SWGP6sQki2jQvAyBg/zDFAgr9bfNWZIUj42Kw2eJIl8kEi4PbgE6U1Zau/HwI75HA==" + }, + "parse-json": { + "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-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + } + }, + "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 + }, + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": 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" + } + }, + "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": { + "parse5": "^6.0.1" + } + }, + "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": { + "parse5": "^6.0.1" + } + }, + "parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" + }, + "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 + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "path-key": { + "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.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "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=" + }, + "path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true + }, + "pbkdf2": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", + "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" + } + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" + }, + "picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + }, + "picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==" + }, + "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 + }, + "pirates": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", + "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", + "dev": true + }, + "piscina": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/piscina/-/piscina-3.2.0.tgz", + "integrity": "sha512-yn/jMdHRw+q2ZJhFhyqsmANcbF6V2QwmD84c6xRau+QpQOmtrBCoRGdvTfeuFDYXB5W2m6MfLkjkvQa9lUSmIA==", + "dev": true, + "requires": { + "eventemitter-asyncresource": "^1.0.0", + "hdr-histogram-js": "^2.0.1", + "hdr-histogram-percentiles-obj": "^3.0.0", + "nice-napi": "^1.0.2" + } + }, + "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" + } + }, + "pngjs": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-3.4.0.tgz", + "integrity": "sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==" + }, + "portfinder": { + "version": "1.0.28", + "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.28.tgz", + "integrity": "sha512-Se+2isanIcEqf2XMHjyUKskczxbPH7dQnlMjXX6+dybayyHvAf/TCgyMRlzf/B6QDhAEFOGes0pzRo3by4AbMA==", + "dev": true, + "requires": { + "async": "^2.6.2", + "debug": "^3.1.1", + "mkdirp": "^0.5.5" + }, + "dependencies": { + "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" + } + }, + "mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dev": true, + "requires": { + "minimist": "^1.2.5" + } + } + } + }, + "postcss": { + "version": "8.4.5", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.5.tgz", + "integrity": "sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg==", + "dev": true, + "requires": { + "nanoid": "^3.1.30", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.1" + } + }, + "postcss-attribute-case-insensitive": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-5.0.0.tgz", + "integrity": "sha512-b4g9eagFGq9T5SWX4+USfVyjIb3liPnjhHHRMP7FMB2kFVpYyfEscV0wP3eaXhKlcHKUut8lt5BGoeylWA/dBQ==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.2" + } + }, + "postcss-color-functional-notation": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-4.2.2.tgz", + "integrity": "sha512-DXVtwUhIk4f49KK5EGuEdgx4Gnyj6+t2jBSEmxvpIK9QI40tWrpS2Pua8Q7iIZWBrki2QOaeUdEaLPPa91K0RQ==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-color-hex-alpha": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-8.0.3.tgz", + "integrity": "sha512-fESawWJCrBV035DcbKRPAVmy21LpoyiXdPTuHUfWJ14ZRjY7Y7PA6P4g8z6LQGYhU1WAxkTxjIjurXzoe68Glw==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-color-rebeccapurple": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-7.0.2.tgz", + "integrity": "sha512-SFc3MaocHaQ6k3oZaFwH8io6MdypkUtEy/eXzXEB1vEQlO3S3oDc/FSZA8AsS04Z25RirQhlDlHLh3dn7XewWw==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-custom-media": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-8.0.0.tgz", + "integrity": "sha512-FvO2GzMUaTN0t1fBULDeIvxr5IvbDXcIatt6pnJghc736nqNgsGao5NT+5+WVLAQiTt6Cb3YUms0jiPaXhL//g==", + "dev": true, + "requires": {} + }, + "postcss-custom-properties": { + "version": "12.1.4", + "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-12.1.4.tgz", + "integrity": "sha512-i6AytuTCoDLJkWN/MtAIGriJz3j7UX6bV7Z5t+KgFz+dwZS15/mlTJY1S0kRizlk6ba0V8u8hN50Fz5Nm7tdZw==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-custom-selectors": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-6.0.0.tgz", + "integrity": "sha512-/1iyBhz/W8jUepjGyu7V1OPcGbc636snN1yXEQCinb6Bwt7KxsiU7/bLQlp8GwAXzCh7cobBU5odNn/2zQWR8Q==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.4" + } + }, + "postcss-dir-pseudo-class": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-6.0.4.tgz", + "integrity": "sha512-I8epwGy5ftdzNWEYok9VjW9whC4xnelAtbajGv4adql4FIF09rnrxnA9Y8xSHN47y7gqFIv10C5+ImsLeJpKBw==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.9" + } + }, + "postcss-double-position-gradients": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-3.1.1.tgz", + "integrity": "sha512-jM+CGkTs4FcG53sMPjrrGE0rIvLDdCrqMzgDC5fLI7JHDO7o6QG8C5TQBtExb13hdBdoH9C2QVbG4jo2y9lErQ==", + "dev": true, + "requires": { + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-env-function": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-4.0.5.tgz", + "integrity": "sha512-gPUJc71ji9XKyl0WSzAalBeEA/89kU+XpffpPxSaaaZ1c48OL36r1Ep5R6+9XAPkIiDlSvVAwP4io12q/vTcvA==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-focus-visible": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-6.0.4.tgz", + "integrity": "sha512-QcKuUU/dgNsstIK6HELFRT5Y3lbrMLEOwG+A4s5cA+fx3A3y/JTq3X9LaOj3OC3ALH0XqyrgQIgey/MIZ8Wczw==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.9" + } + }, + "postcss-focus-within": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-5.0.4.tgz", + "integrity": "sha512-vvjDN++C0mu8jz4af5d52CB184ogg/sSxAFS+oUJQq2SuCe7T5U2iIsVJtsCp2d6R4j0jr5+q3rPkBVZkXD9fQ==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.9" + } + }, + "postcss-font-variant": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-5.0.0.tgz", + "integrity": "sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==", + "dev": true, + "requires": {} + }, + "postcss-gap-properties": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-3.0.3.tgz", + "integrity": "sha512-rPPZRLPmEKgLk/KlXMqRaNkYTUpE7YC+bOIQFN5xcu1Vp11Y4faIXv6/Jpft6FMnl6YRxZqDZG0qQOW80stzxQ==", + "dev": true, + "requires": {} + }, + "postcss-image-set-function": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-4.0.6.tgz", + "integrity": "sha512-KfdC6vg53GC+vPd2+HYzsZ6obmPqOk6HY09kttU19+Gj1nC3S3XBVEXDHxkhxTohgZqzbUb94bKXvKDnYWBm/A==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "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": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + } + }, + "postcss-initial": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-4.0.1.tgz", + "integrity": "sha512-0ueD7rPqX8Pn1xJIjay0AZeIuDoF+V+VvMt/uOnn+4ezUKhZM/NokDeP6DwMNyIoYByuN/94IQnt5FEkaN59xQ==", + "dev": true, + "requires": {} + }, + "postcss-lab-function": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-4.1.2.tgz", + "integrity": "sha512-isudf5ldhg4fk16M8viAwAbg6Gv14lVO35N3Z/49NhbwPQ2xbiEoHgrRgpgQojosF4vF7jY653ktB6dDrUOR8Q==", + "dev": true, + "requires": { + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-loader": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-6.2.1.tgz", + "integrity": "sha512-WbbYpmAaKcux/P66bZ40bpWsBucjx/TTgVVzRZ9yUO8yQfVBlameJ0ZGVaPfH64hNSBh63a+ICP5nqOpBA0w+Q==", + "dev": true, + "requires": { + "cosmiconfig": "^7.0.0", + "klona": "^2.0.5", + "semver": "^7.3.5" + } + }, + "postcss-logical": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-5.0.4.tgz", + "integrity": "sha512-RHXxplCeLh9VjinvMrZONq7im4wjWGlRJAqmAVLXyZaXwfDWP73/oq4NdIp+OZwhQUMj0zjqDfM5Fj7qby+B4g==", + "dev": true, + "requires": {} + }, + "postcss-media-minmax": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-5.0.0.tgz", + "integrity": "sha512-yDUvFf9QdFZTuCUg0g0uNSHVlJ5X1lSzDZjPSFaiCWvjgsvu8vEVxtahPrLMinIDEEGnx6cBe6iqdx5YWz08wQ==", + "dev": true, + "requires": {} + }, + "postcss-modules-extract-imports": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", + "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", + "dev": true, + "requires": {} + }, + "postcss-modules-local-by-default": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", + "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", + "dev": true, + "requires": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + } + }, + "postcss-modules-scope": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", + "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.4" + } + }, + "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": { + "icss-utils": "^5.0.0" + } + }, + "postcss-nesting": { + "version": "10.1.3", + "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-10.1.3.tgz", + "integrity": "sha512-wUC+/YCik4wH3StsbC5fBG1s2Z3ZV74vjGqBFYtmYKlVxoio5TYGM06AiaKkQPPlkXWn72HKfS7Cw5PYxnoXSw==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.9" + } + }, + "postcss-overflow-shorthand": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-3.0.3.tgz", + "integrity": "sha512-CxZwoWup9KXzQeeIxtgOciQ00tDtnylYIlJBBODqkgS/PU2jISuWOL/mYLHmZb9ZhZiCaNKsCRiLp22dZUtNsg==", + "dev": true, + "requires": {} + }, + "postcss-page-break": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-3.0.4.tgz", + "integrity": "sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==", + "dev": true, + "requires": {} + }, + "postcss-place": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-7.0.4.tgz", + "integrity": "sha512-MrgKeiiu5OC/TETQO45kV3npRjOFxEHthsqGtkh3I1rPbZSbXGD/lZVi9j13cYh+NA8PIAPyk6sGjT9QbRyvSg==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-preset-env": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-7.2.3.tgz", + "integrity": "sha512-Ok0DhLfwrcNGrBn8sNdy1uZqWRk/9FId0GiQ39W4ILop5GHtjJs8bu1MY9isPwHInpVEPWjb4CEcEaSbBLpfwA==", + "dev": true, + "requires": { + "autoprefixer": "^10.4.2", + "browserslist": "^4.19.1", + "caniuse-lite": "^1.0.30001299", + "css-blank-pseudo": "^3.0.2", + "css-has-pseudo": "^3.0.3", + "css-prefers-color-scheme": "^6.0.2", + "cssdb": "^5.0.0", + "postcss-attribute-case-insensitive": "^5.0.0", + "postcss-color-functional-notation": "^4.2.1", + "postcss-color-hex-alpha": "^8.0.2", + "postcss-color-rebeccapurple": "^7.0.2", + "postcss-custom-media": "^8.0.0", + "postcss-custom-properties": "^12.1.2", + "postcss-custom-selectors": "^6.0.0", + "postcss-dir-pseudo-class": "^6.0.3", + "postcss-double-position-gradients": "^3.0.4", + "postcss-env-function": "^4.0.4", + "postcss-focus-visible": "^6.0.3", + "postcss-focus-within": "^5.0.3", + "postcss-font-variant": "^5.0.0", + "postcss-gap-properties": "^3.0.2", + "postcss-image-set-function": "^4.0.4", + "postcss-initial": "^4.0.1", + "postcss-lab-function": "^4.0.3", + "postcss-logical": "^5.0.3", + "postcss-media-minmax": "^5.0.0", + "postcss-nesting": "^10.1.2", + "postcss-overflow-shorthand": "^3.0.2", + "postcss-page-break": "^3.0.4", + "postcss-place": "^7.0.3", + "postcss-pseudo-class-any-link": "^7.0.2", + "postcss-replace-overflow-wrap": "^4.0.0", + "postcss-selector-not": "^5.0.0" + } + }, + "postcss-pseudo-class-any-link": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-7.1.1.tgz", + "integrity": "sha512-JRoLFvPEX/1YTPxRxp1JO4WxBVXJYrSY7NHeak5LImwJ+VobFMwYDQHvfTXEpcn+7fYIeGkC29zYFhFWIZD8fg==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.9" + } + }, + "postcss-replace-overflow-wrap": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-4.0.0.tgz", + "integrity": "sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==", + "dev": true, + "requires": {} + }, + "postcss-selector-not": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-5.0.0.tgz", + "integrity": "sha512-/2K3A4TCP9orP4TNS7u3tGdRFVKqz/E6pX3aGnriPG0jU78of8wsUcqE4QAhWEU0d+WnMSF93Ah3F//vUtK+iQ==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0" + } + }, + "postcss-selector-parser": { + "version": "6.0.9", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.9.tgz", + "integrity": "sha512-UO3SgnZOVTwu4kyLR22UQ1xZh086RyNZppb7lLAKBFK8a32ttG5i87Y/P3+2bRSjZNyJ1B7hfFNo273tKe9YxQ==", + "dev": true, + "requires": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + } + }, + "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==" + }, + "preact": { + "version": "10.4.1", + "resolved": "https://registry.npmjs.org/preact/-/preact-10.4.1.tgz", + "integrity": "sha512-WKrRpCSwL2t3tpOOGhf2WfTpcmbpxaWtDbdJdKdjd0aEiTkvOmS4NBkG6kzlaAHI9AkQ3iVqbFWM3Ei7mZ4o1Q==" + }, + "precond": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/precond/-/precond-0.2.3.tgz", + "integrity": "sha1-qpWRvKokkj8eD0hJ0kD0fvwQdaw=" + }, + "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 + }, + "prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=" + }, + "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 + }, + "primeicons": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/primeicons/-/primeicons-5.0.0.tgz", + "integrity": "sha512-heygWF0X5HFI1otlZE62pp6ye7sZ8om78J9au2BRkg8O7Y8AHTZ9qKMRzchZUHLe8zUAvdi6hZzzm9XxgwIExw==" + }, + "primeng": { + "version": "13.2.1", + "resolved": "https://registry.npmjs.org/primeng/-/primeng-13.2.1.tgz", + "integrity": "sha512-Z+HvNlcH3AUYUIhNkAKWmkR+RUshoN1FYrN/zLhQhrOGIhMdisPXA2uILjGezEvte9X1rNOE8kOPpYvDWdKatA==", + "requires": { + "tslib": "^2.3.0" + } + }, + "printj": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/printj/-/printj-1.3.1.tgz", + "integrity": "sha512-GA3TdL8szPK4AQ2YnOe/b+Y1jUFwmmGMMK/qbY7VcE3Z7FU8JstbKiKRzO6CIiAKPhTO8m01NoQ0V5f3jc4OGg==" + }, + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" + }, + "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-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": "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" + }, + "dependencies": { + "retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", + "dev": true + } + } + }, + "promise-to-callback": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/promise-to-callback/-/promise-to-callback-1.0.0.tgz", + "integrity": "sha1-XSp0kBC/tn2WNZj805YHRqaP7vc=", + "requires": { + "is-fn": "^1.0.0", + "set-immediate-shim": "^1.0.1" + } + }, + "prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "requires": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + }, + "dependencies": { + "react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + } + } + }, + "proxy-addr": { + "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.2.0", + "ipaddr.js": "1.9.1" + }, + "dependencies": { + "ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" + } + } + }, + "prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=" + }, + "psl": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==" + }, + "public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "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" + } + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + }, + "qjobs": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz", + "integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==", + "dev": true + }, + "qrcode": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/qrcode/-/qrcode-1.4.4.tgz", + "integrity": "sha512-oLzEC5+NKFou9P0bMj5+v6Z40evexeE29Z9cummZXZ9QXyMr3lphkURzxjXgPJC5azpxcshoDWV1xE46z+/c3Q==", + "requires": { + "buffer": "^5.4.3", + "buffer-alloc": "^1.2.0", + "buffer-from": "^1.1.1", + "dijkstrajs": "^1.0.1", + "isarray": "^2.0.1", + "pngjs": "^3.3.0", + "yargs": "^13.2.4" + }, + "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==" + }, + "cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "requires": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + } + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "^3.0.0" + } + }, + "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=" + }, + "isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "requires": { + "p-limit": "^2.0.0" + } + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" + }, + "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==", + "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==", + "requires": { + "ansi-regex": "^4.1.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==", + "requires": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.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==" + }, + "yargs": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "requires": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.2" + } + }, + "yargs-parser": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } + }, + "qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw==" + }, + "query-string": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-5.1.1.tgz", + "integrity": "sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==", + "requires": { + "decode-uri-component": "^0.2.0", + "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 + }, + "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==", + "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==", + "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.3", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.3.tgz", + "integrity": "sha512-UlTNLIcu0uzb4D2f4WltY6cVjLi+/jEN4lgEUj3E04tpMDpUlkBo/eSn6zou9hum2VMNpCCUone0O0WeJim07g==", + "requires": { + "bytes": "3.1.2", + "http-errors": "1.8.1", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "dependencies": { + "bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" + } + } + }, + "react": { + "version": "16.14.0", + "resolved": "https://registry.npmjs.org/react/-/react-16.14.0.tgz", + "integrity": "sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==", + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1", + "prop-types": "^15.6.2" + } + }, + "react-dom": { + "version": "16.14.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.14.0.tgz", + "integrity": "sha512-1gCeQXDLoIqMgqD3IO2Ah9bnf0w9kzhwN5q4FGnHZ67hBm9yePzB5JJAIQCc8x3pFnNlwFq4RidZggNAAkzWWw==", + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1", + "prop-types": "^15.6.2", + "scheduler": "^0.19.1" + } + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "peer": true + }, + "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, + "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 + } + } + }, + "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": { + "json-parse-even-better-errors": "^2.3.0", + "npm-normalize-package-bin": "^1.0.1" + } + }, + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "requires": { + "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==", + "dev": true + }, + "regenerate": { + "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": "10.0.1", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.0.1.tgz", + "integrity": "sha512-vn5DU6yg6h8hP/2OkQo3K7uVILvY4iu0oI4t3HFa81UPkhGJwkRwM10JEc3upjdhHjs/k8GJY1sRBhk5sr69Bw==", + "dev": true, + "requires": { + "regenerate": "^1.4.2" + } + }, + "regenerator-runtime": { + "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==" + }, + "regenerator-transform": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz", + "integrity": "sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==", + "dev": true, + "requires": { + "@babel/runtime": "^7.8.4" + } + }, + "regex-parser": { + "version": "2.2.11", + "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.2.11.tgz", + "integrity": "sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==", + "dev": true + }, + "regexp.prototype.flags": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.1.tgz", + "integrity": "sha512-pMR7hBVUUGI7PMA37m2ofIdQCsomVnas+Jn5UPGAHQ+/LlwKm/aTLJHdasmHRzlfeZwHiAOaRSo2rbBDm3nNUQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + } + }, + "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": "5.0.1", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.0.1.tgz", + "integrity": "sha512-CriEZlrKK9VJw/xQGJpQM5rY88BtuL8DM+AEwvcThHilbxiTAy8vq4iJnd2tqq8wLmjbGZzP7ZcKFjbGkmEFrw==", + "dev": true, + "requires": { + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.0.1", + "regjsgen": "^0.6.0", + "regjsparser": "^0.8.2", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.0.0" + } + }, + "regjsgen": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.6.0.tgz", + "integrity": "sha512-ozE883Uigtqj3bx7OhL1KNbCzGyW2NQZPl6Hs09WTvCuZD5sTI4JY58bkbQWa/Y9hxIsvJ3M8Nbf7j54IqeZbA==", + "dev": true + }, + "regjsparser": { + "version": "0.8.4", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.8.4.tgz", + "integrity": "sha512-J3LABycON/VNEu3abOviqGHuB/LOtOQj8SKmfP9anY5GfAVw/SPjwzSjxGjbZXIxbGfqTHtJw58C2Li/WkStmA==", + "dev": true, + "requires": { + "jsesc": "~0.5.0" + }, + "dependencies": { + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true + } + } + }, + "request": { + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "dependencies": { + "qs": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", + "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==" + }, + "uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" + } + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" + }, + "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": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==" + }, + "requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", + "dev": true + }, + "resolve": { + "version": "1.22.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", + "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", + "requires": { + "is-core-module": "^2.8.1", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true + }, + "resolve-url-loader": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz", + "integrity": "sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==", + "dev": true, + "requires": { + "adjust-sourcemap-loader": "^4.0.0", + "convert-source-map": "^1.7.0", + "loader-utils": "^2.0.0", + "postcss": "^8.2.14", + "source-map": "0.6.1" + }, + "dependencies": { + "loader-utils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", + "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.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 + } + } + }, + "responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", + "requires": { + "lowercase-keys": "^1.0.0" + } + }, + "restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "requires": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + } + }, + "retry": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", + "dev": true + }, + "reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true + }, + "rfdc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", + "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", + "dev": true + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "rlp": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/rlp/-/rlp-2.2.7.tgz", + "integrity": "sha512-d5gdPmgQ0Z+AklL2NVXr/IoSjNZFfTVvQWzL/AM2AOcSzYP2xjlb0AC8YyCLc41MSNf6P6QVtjgPdmVtzb+4lQ==", + "requires": { + "bn.js": "^5.2.0" + }, + "dependencies": { + "bn.js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz", + "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==" + } + } + }, + "run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true + }, + "run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "requires": { + "queue-microtask": "^1.2.2" + } + }, + "rustbn.js": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/rustbn.js/-/rustbn.js-0.2.0.tgz", + "integrity": "sha512-4VlvkRUuCJvr2J6Y0ImW7NvTCriMi7ErOAqWk1y69vAdoNIzCF3yPmgeNzx+RQTLEDFq5sHfscn1MwHxP9hNfA==" + }, + "rxjs": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz", + "integrity": "sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==", + "requires": { + "tslib": "^2.1.0" + } + }, + "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==" + }, + "safe-event-emitter": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/safe-event-emitter/-/safe-event-emitter-1.0.1.tgz", + "integrity": "sha512-e1wFe99A91XYYxoQbcq2ZJUWurxEyP8vfz7A7vuUe1s95q8r5ebraVaA1BukYJcpM6V16ugWoD9vngi8Ccu5fg==", + "requires": { + "events": "^3.0.0" + } + }, + "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.49.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.49.0.tgz", + "integrity": "sha512-TVwVdNDj6p6b4QymJtNtRS2YtLJ/CqZriGg0eIAbAKMlN8Xy6kbv33FsEZSF7FufFFM705SQviHjjThfaQ4VNw==", + "dev": true, + "requires": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + } + }, + "sass-loader": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-12.4.0.tgz", + "integrity": "sha512-7xN+8khDIzym1oL9XyS6zP6Ges+Bo2B2xbPrjdMHEYyV3AQYhd/wXeru++3ODHF0zMjYmVadblSKrPrjEkL8mg==", + "dev": true, + "requires": { + "klona": "^2.0.4", + "neo-async": "^2.6.2" + } + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + }, + "scheduler": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.19.1.tgz", + "integrity": "sha512-n/zwRWRYSUj0/3g/otKDRPMh6qv2SYMWNq85IEa8iZyAv8od9zDYpGSnpBEjNgcMNq6Scbu5KfIPxNF72R/2EA==", + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + } + }, + "schema-utils": { + "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": { + "@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" + } + }, + "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 + } + } + }, + "scrypt-js": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz", + "integrity": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==" + }, + "secp256k1": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.3.tgz", + "integrity": "sha512-NLZVf+ROMxwtEj3Xa562qgv2BK5e2WNmXPiOdVIPLgs6lyTzMvBq0aWTYMI5XCP9jZMVKOcqZLw/Wc4vDkuxhA==", + "requires": { + "elliptic": "^6.5.4", + "node-addon-api": "^2.0.0", + "node-gyp-build": "^4.2.0" + }, + "dependencies": { + "node-addon-api": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.2.tgz", + "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==" + } + } + }, + "select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=", + "dev": true + }, + "selfsigned": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.0.0.tgz", + "integrity": "sha512-cUdFiCbKoa1mZ6osuJs2uDHrs0k0oprsKveFiiaBKCNq3SYyb5gs2HxhQyDNLCmL51ZZThqi4YNDpCK6GOP1iQ==", + "dev": true, + "requires": { + "node-forge": "^1.2.0" + } + }, + "semaphore": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/semaphore/-/semaphore-1.1.0.tgz", + "integrity": "sha512-O4OZEaNtkMd/K0i6js9SL+gqy0ZCBMgUvlSqHKi4IBdjhe7wB8pwztUk1BbZ1fmrvpwFrPbHzqd2w5pTcJH6LA==" + }, + "semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "send": { + "version": "0.17.2", + "resolved": "https://registry.npmjs.org/send/-/send-0.17.2.tgz", + "integrity": "sha512-UJYB6wFSJE3G00nEivR5rgWp8c2xXvJ3OPWPhmuteU0IKj8nKbG3DrjiOmLwpnHGYWAVwA69zmTm++YG0Hmwww==", + "requires": { + "debug": "2.6.9", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "1.8.1", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "~2.3.0", + "range-parser": "~1.2.1", + "statuses": "~1.5.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + }, + "dependencies": { + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } + } + }, + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + } + } + }, + "serialize-javascript": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", + "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", + "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=", + "dev": true, + "requires": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + }, + "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" + } + }, + "http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", + "dev": true, + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "dev": true + } + } + }, + "serve-static": { + "version": "1.14.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.2.tgz", + "integrity": "sha512-+TMNA9AFxUEGuC0z2mevogSnn9MXKb4fa7ngeRMJaaGv8vTwnIEkKi+QGvPt33HSnf8pRS+WGM0EbMtCJLKMBQ==", + "requires": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.17.2" + } + }, + "servify": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/servify/-/servify-0.1.12.tgz", + "integrity": "sha512-/xE6GvsKKqyo1BAY+KxOWXcLpPsUUyji7Qg3bVD7hh1eRze5bR1uYiuDA/k3Gof1s9BTzQZEJK8sNcNGFIzeWw==", + "requires": { + "body-parser": "^1.16.0", + "cors": "^2.8.1", + "express": "^4.14.0", + "request": "^2.79.0", + "xhr": "^2.3.3" + } + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "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=" + }, + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" + }, + "setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + }, + "sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "dev": true, + "requires": { + "kind-of": "^6.0.2" + } + }, + "shallowequal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", + "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==" + }, + "shebang-command": { + "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": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true + }, + "side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "requires": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + } + }, + "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 + }, + "simple-concat": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", + "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==" + }, + "simple-get": { + "version": "2.8.2", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-2.8.2.tgz", + "integrity": "sha512-Ijd/rV5o+mSBBs4F/x9oDPtTx9Zb6X9brmnXvMW4J7IR15ngi9q5xxqWBKU744jTZiaXtxaPL7uHG6vtN8kUkw==", + "requires": { + "decompress-response": "^3.3.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } + }, + "simplebar": { + "version": "5.3.6", + "resolved": "https://registry.npmjs.org/simplebar/-/simplebar-5.3.6.tgz", + "integrity": "sha512-FJUMbV+hNDd/m+1/fvD41TXKd5mSdlI5zgBygkaQIV3SffNbcLhSbJT6ufTs8ZNRLJ6i+qc/KCFMqWmvlGWMhA==", + "requires": { + "@juggle/resize-observer": "^3.3.1", + "can-use-dom": "^0.1.0", + "core-js": "^3.0.1", + "lodash.debounce": "^4.0.8", + "lodash.memoize": "^4.1.2", + "lodash.throttle": "^4.1.1" + } + }, + "simplebar-angular": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/simplebar-angular/-/simplebar-angular-2.3.6.tgz", + "integrity": "sha512-chSUdCYCLOdajbCA73oL/OU+H/YFNGGdAYkcYx76YDY81C3sj3vMePjuW8cPgZZHwSCGI+opcl6xoBsCK56fJA==", + "requires": { + "simplebar": "^5.3.6", + "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==" + } + } + }, + "slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "dev": true + }, + "smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "dev": true + }, + "socket.io": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.4.1.tgz", + "integrity": "sha512-s04vrBswdQBUmuWJuuNTmXUVJhP0cVky8bBDhdkf8y0Ptsu7fKU2LuLbts9g+pdmAdyMMn8F/9Mf1/wbtUN0fg==", + "dev": true, + "requires": { + "accepts": "~1.3.4", + "base64id": "~2.0.0", + "debug": "~4.3.2", + "engine.io": "~6.1.0", + "socket.io-adapter": "~2.3.3", + "socket.io-parser": "~4.0.4" + } + }, + "socket.io-adapter": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.3.3.tgz", + "integrity": "sha512-Qd/iwn3VskrpNO60BeRyCyr8ZWw9CPZyitW4AQwmRZ8zCiyDiL+znRnWX6tDHXnWn1sJrM1+b6Mn6wEDJJ4aYQ==", + "dev": true + }, + "socket.io-parser": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.0.4.tgz", + "integrity": "sha512-t+b0SS+IxG7Rxzda2EVvyBZbvFPBCjJoyHuE0P//7OAsN23GItzDRdWa6ALxZI/8R5ygK7jAR6t028/z+7295g==", + "dev": true, + "requires": { + "@types/component-emitter": "^1.2.10", + "component-emitter": "~1.3.0", + "debug": "~4.3.1" + } + }, + "sockjs": { + "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.11.3", + "uuid": "^8.3.2", + "websocket-driver": "^0.7.4" + } + }, + "socks": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.6.2.tgz", + "integrity": "sha512-zDZhHhZRY9PxRruRMR7kMhnf3I8hDs4S3f9RecfnGxvcBHQcKcIH/oUcEWffsfl1XxdYlA7nnlGbbTvPz9D8gA==", + "dev": true, + "requires": { + "ip": "^1.1.5", + "smart-buffer": "^4.2.0" + } + }, + "socks-proxy-agent": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.1.1.tgz", + "integrity": "sha512-t8J0kG3csjA4g6FTbsMOWws+7R7vuRC8aQ/wy3/1OWmsgwA68zs/+cExQ0koSitUDXqhufF/YJr9wtNMZHw5Ew==", + "dev": true, + "requires": { + "agent-base": "^6.0.2", + "debug": "^4.3.1", + "socks": "^2.6.1" + } + }, + "source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "dev": true + }, + "source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "dev": true + }, + "source-map-loader": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-3.0.1.tgz", + "integrity": "sha512-Vp1UsfyPvgujKQzi4pyDiTOnE3E4H+yHvkVRN3c/9PJmQS4CQJExvcDvaX/D+RV+xQben9HJ56jMJS3CgUeWyA==", + "dev": true, + "requires": { + "abab": "^2.0.5", + "iconv-lite": "^0.6.3", + "source-map-js": "^1.0.1" + }, + "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": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", + "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", + "dev": true, + "requires": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0" + } + }, + "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" + }, + "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 + } + } + }, + "sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "dev": true + }, + "spdy": { + "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", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" + } + }, + "spdy-transport": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", + "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", + "dev": true, + "requires": { + "debug": "^4.1.0", + "detect-node": "^2.0.4", + "hpack.js": "^2.1.6", + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" + } + }, + "split-on-first": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/split-on-first/-/split-on-first-1.1.0.tgz", + "integrity": "sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw==" + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "sshpk": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", + "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "ssri": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", + "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", + "dev": true, + "requires": { + "minipass": "^3.1.1" + } + }, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" + }, + "stream-browserify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", + "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==", + "dev": true, + "requires": { + "inherits": "~2.0.4", + "readable-stream": "^3.5.0" + } + }, + "stream-http": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.2.0.tgz", + "integrity": "sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==", + "dev": true, + "requires": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "xtend": "^4.0.2" + } + }, + "streamroller": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-3.0.5.tgz", + "integrity": "sha512-5uzTEUIi4OB5zy/H30kbUN/zpDNJsFUA+Z47ZL8EfrP93lcZvRLEqdbhdunEPa7CouuAzXXsHpCJ9dg90Umw7g==", + "dev": true, + "requires": { + "date-format": "^4.0.5", + "debug": "^4.3.3", + "fs-extra": "^10.0.1" + } + }, + "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=" + }, + "string_decoder": { + "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==", + "requires": { + "safe-buffer": "~5.2.0" + }, + "dependencies": { + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + } + } + }, + "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==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "string.prototype.trimend": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", + "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + } + }, + "string.prototype.trimstart": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", + "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + } + }, + "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" + } + }, + "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-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true + }, + "strip-hex-prefix": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz", + "integrity": "sha1-DF8VX+8RUTczd96du1iNoFUA428=", + "requires": { + "is-hex-prefixed": "1.0.0" + } + }, + "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 + }, + "styled-components": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-5.3.3.tgz", + "integrity": "sha512-++4iHwBM7ZN+x6DtPPWkCI4vdtwumQ+inA/DdAsqYd4SVgUKJie5vXyzotA00ttcFdQkCng7zc6grwlfIfw+lw==", + "requires": { + "@babel/helper-module-imports": "^7.0.0", + "@babel/traverse": "^7.4.5", + "@emotion/is-prop-valid": "^0.8.8", + "@emotion/stylis": "^0.8.4", + "@emotion/unitless": "^0.7.4", + "babel-plugin-styled-components": ">= 1.12.0", + "css-to-react-native": "^3.0.0", + "hoist-non-react-statics": "^3.0.0", + "shallowequal": "^1.1.0", + "supports-color": "^5.5.0" + } + }, + "stylus": { + "version": "0.56.0", + "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.56.0.tgz", + "integrity": "sha512-Ev3fOb4bUElwWu4F9P9WjnnaSpc8XB9OFHSFZSKMFL1CE1oM+oFXWEgAqPmmZIyhBihuqIQlFsVTypiiS9RxeA==", + "dev": true, + "requires": { + "css": "^3.0.0", + "debug": "^4.3.2", + "glob": "^7.1.6", + "safer-buffer": "^2.1.2", + "sax": "~1.2.4", + "source-map": "^0.7.3" + } + }, + "stylus-loader": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-6.2.0.tgz", + "integrity": "sha512-5dsDc7qVQGRoc6pvCL20eYgRUxepZ9FpeK28XhdXaIPP6kXr6nI1zAAKFQgP5OBkOfKaURp4WUpJzspg1f01Gg==", + "dev": true, + "requires": { + "fast-glob": "^3.2.7", + "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==", + "requires": { + "has-flag": "^3.0.0" + } + }, + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" + }, + "swarm-js": { + "version": "0.1.40", + "resolved": "https://registry.npmjs.org/swarm-js/-/swarm-js-0.1.40.tgz", + "integrity": "sha512-yqiOCEoA4/IShXkY3WKwP5PvZhmoOOD8clsKA7EEcRILMkTEYHCQ21HDCAcVpmIxZq4LyZvWeRJ6quIyHk1caA==", + "requires": { + "bluebird": "^3.5.0", + "buffer": "^5.0.5", + "eth-lib": "^0.1.26", + "fs-extra": "^4.0.2", + "got": "^7.1.0", + "mime-types": "^2.1.16", + "mkdirp-promise": "^5.0.1", + "mock-fs": "^4.1.0", + "setimmediate": "^1.0.5", + "tar": "^4.0.2", + "xhr-request": "^1.0.1" + }, + "dependencies": { + "chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" + }, + "fs-extra": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", + "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", + "requires": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "fs-minipass": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz", + "integrity": "sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==", + "requires": { + "minipass": "^2.6.0" + } + }, + "get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" + }, + "got": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/got/-/got-7.1.0.tgz", + "integrity": "sha512-Y5WMo7xKKq1muPsxD+KmrR8DH5auG7fBdDVueZwETwV6VytKyU9OX/ddpq2/1hp1vIPvVb4T81dKQz3BivkNLw==", + "requires": { + "decompress-response": "^3.2.0", + "duplexer3": "^0.1.4", + "get-stream": "^3.0.0", + "is-plain-obj": "^1.1.0", + "is-retry-allowed": "^1.0.0", + "is-stream": "^1.0.0", + "isurl": "^1.0.0-alpha5", + "lowercase-keys": "^1.0.0", + "p-cancelable": "^0.3.0", + "p-timeout": "^1.1.1", + "safe-buffer": "^5.0.1", + "timed-out": "^4.0.0", + "url-parse-lax": "^1.0.0", + "url-to-options": "^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=" + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" + }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "requires": { + "graceful-fs": "^4.1.6" + } + }, + "minipass": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", + "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", + "requires": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "minizlib": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz", + "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==", + "requires": { + "minipass": "^2.9.0" + } + }, + "mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "requires": { + "minimist": "^1.2.5" + } + }, + "p-cancelable": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz", + "integrity": "sha512-RVbZPLso8+jFeq1MfNvgXtCRED2raz/dKpacfTNxsx6pLEpEomM7gah6VeHSYV3+vo0OAi4MkArtQcWWXuQoyw==" + }, + "prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=" + }, + "tar": { + "version": "4.4.19", + "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.19.tgz", + "integrity": "sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA==", + "requires": { + "chownr": "^1.1.4", + "fs-minipass": "^1.2.7", + "minipass": "^2.9.0", + "minizlib": "^1.3.3", + "mkdirp": "^0.5.5", + "safe-buffer": "^5.2.1", + "yallist": "^3.1.1" + }, + "dependencies": { + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + } + } + }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==" + }, + "url-parse-lax": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", + "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", + "requires": { + "prepend-http": "^1.0.1" + } + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + } + } + }, + "symbol-observable": { + "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 + }, + "tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true + }, + "tar": { + "version": "6.1.11", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", + "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", + "dev": true, + "requires": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^3.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + } + }, + "termcolor": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/termcolor/-/termcolor-0.2.0.tgz", + "integrity": "sha1-KDr//UF6SbpzDpTVwSAhLgsf5HU=", + "dev": true + }, + "terser": { + "version": "5.11.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.11.0.tgz", + "integrity": "sha512-uCA9DLanzzWSsN1UirKwylhhRz3aKPInlfmpGfw8VN6jHsAtu8HJtIpeeHHK23rxnE/cDc+yvmq5wqkIC6Kn0A==", + "dev": true, + "requires": { + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map": "~0.7.2", + "source-map-support": "~0.5.20" + } + }, + "terser-webpack-plugin": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.1.tgz", + "integrity": "sha512-GvlZdT6wPQKbDNW/GDQzZFg/j4vKU96yl2q6mcUkzKOgW4gwf1Z8cZToUCrz31XHlPWH8MVb1r2tFtdDtTGJ7g==", + "dev": true, + "requires": { + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.0", + "source-map": "^0.6.1", + "terser": "^5.7.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" + } + }, + "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.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "requires": { + "@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 + } + } + }, + "test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "requires": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + } + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "thunky": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", + "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", + "dev": true + }, + "timed-out": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", + "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=" + }, + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "requires": { + "os-tmpdir": "~1.0.2" + } + }, + "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=" + }, + "to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==" + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + }, + "toggle-selection": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/toggle-selection/-/toggle-selection-1.0.6.tgz", + "integrity": "sha1-bkWxJj8gF/oKzH2J14sVuL932jI=" + }, + "toidentifier": { + "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", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "requires": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + } + }, + "tree-kill": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", + "dev": true + }, + "tsconfig-paths": { + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.0.tgz", + "integrity": "sha512-cg/1jAZoL57R39+wiw4u/SCC6Ic9Q5NqjBOb+9xISedOYurfog9ZNmKJSxAnb2m/5Bq4lE9lhUcau33Ml8DM0g==", + "dev": true, + "requires": { + "@types/json5": "^0.0.29", + "json5": "^1.0.1", + "minimist": "^1.2.0", + "strip-bom": "^3.0.0" + }, + "dependencies": { + "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" + } + } + } + }, + "tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + }, + "tsutils": { + "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 + } + } + }, + "tsutils-etc": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/tsutils-etc/-/tsutils-etc-1.4.1.tgz", + "integrity": "sha512-6UPYgc7OXcIW5tFxlsZF3OVSBvDInl/BkS3Xsu64YITXk7WrnWTVByKWPCThFDBp5gl5IGHOzGMdQuDCE7OL4g==", + "dev": true, + "requires": { + "@types/yargs": "^17.0.0", + "yargs": "^17.0.0" + } + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" + }, + "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.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.2.1" + } + }, + "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 + }, + "type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "requires": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + } + }, + "typed-assert": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/typed-assert/-/typed-assert-1.0.9.tgz", + "integrity": "sha512-KNNZtayBCtmnNmbo5mG47p1XsCyrx6iVqomjcZnec/1Y5GGARaxPs6r49RnSPeUP3YjNYiU9sQHAtY4BBvnZwg==", + "dev": true + }, + "typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "requires": { + "is-typedarray": "^1.0.0" + } + }, + "typescript": { + "version": "4.5.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.5.5.tgz", + "integrity": "sha512-TCTIul70LyWe6IJWT8QSYeA54WQe8EjQFU4wY52Fasj5UKx88LNYKCgBEHcOMOrFF1rKGbD8v/xcNWVUq9SymA==", + "dev": true + }, + "u2r": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/u2r/-/u2r-0.1.3.tgz", + "integrity": "sha1-xfx5FnJTIJwWpVzYP0eBY9a9AHQ=", + "dev": true + }, + "ua-parser-js": { + "version": "0.7.31", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.31.tgz", + "integrity": "sha512-qLK/Xe9E2uzmYI3qLeOmI0tEOt+TBBQyUIAh4aAgU05FVYzeZrKUdkAZfBNVGRaHVgV0TDkdEngJSw/SyQchkQ==", + "dev": true + }, + "ultron": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", + "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==" + }, + "unbox-primitive": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", + "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", + "requires": { + "function-bind": "^1.1.1", + "has-bigints": "^1.0.1", + "has-symbols": "^1.0.2", + "which-boxed-primitive": "^1.0.2" + } + }, + "unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true + }, + "unicode-match-property-ecmascript": { + "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": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + } + }, + "unicode-match-property-value-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz", + "integrity": "sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==", + "dev": true + }, + "unicode-property-aliases-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz", + "integrity": "sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==", + "dev": true + }, + "unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "dev": true, + "requires": { + "unique-slug": "^2.0.0" + } + }, + "unique-slug": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", + "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "dev": true, + "requires": { + "imurmurhash": "^0.1.4" + } + }, + "universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "dev": true + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "requires": { + "punycode": "^2.1.0" + } + }, + "url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "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 + } + } + }, + "url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", + "requires": { + "prepend-http": "^2.0.0" + } + }, + "url-set-query": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-set-query/-/url-set-query-1.0.0.tgz", + "integrity": "sha1-AW6M/Xwg7gXK/neV6JK9BwL6ozk=" + }, + "url-to-options": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz", + "integrity": "sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k=" + }, + "utf-8-validate": { + "version": "5.0.9", + "resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.9.tgz", + "integrity": "sha512-Yek7dAy0v3Kl0orwMlvi7TPtiCNrdfHNd7Gcc/pLq4BLXqfAmd0J7OWMizUQnTTJsyjKn02mU7anqwfmUP4J8Q==", + "requires": { + "node-gyp-build": "^4.3.0" + } + }, + "utf8": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/utf8/-/utf8-3.0.0.tgz", + "integrity": "sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==" + }, + "util": { + "version": "0.12.4", + "resolved": "https://registry.npmjs.org/util/-/util-0.12.4.tgz", + "integrity": "sha512-bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw==", + "requires": { + "inherits": "^2.0.3", + "is-arguments": "^1.0.4", + "is-generator-function": "^1.0.7", + "is-typed-array": "^1.1.3", + "safe-buffer": "^5.1.2", + "which-typed-array": "^1.1.2" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" + }, + "uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "dev": true + }, + "v8-compile-cache": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", + "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", + "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=", + "dev": true, + "requires": { + "builtins": "^1.0.3" + } + }, + "varint": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/varint/-/varint-5.0.2.tgz", + "integrity": "sha512-lKxKYG6H03yCZUpAGOPOsMcGxd1RHCu1iKvEHYDPmTyq2HueGhD73ssNBqqQWfvYs04G9iUFRvmAVLW20Jw6ow==" + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + }, + "dependencies": { + "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=" + } + } + }, + "void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", + "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=", + "dev": true + }, + "watchpack": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.3.1.tgz", + "integrity": "sha512-x0t0JuydIo8qCNctdDrn1OzH/qDzk2+rdCOC3YzumZ42fiMqmQ7T3xQurykYMhYfHaPHTp4ZxAx2NfUo1K6QaA==", + "dev": true, + "requires": { + "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": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", + "dev": true, + "requires": { + "defaults": "^1.0.3" + } + }, + "web3": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3/-/web3-1.7.1.tgz", + "integrity": "sha512-RKVdyZ5FuVEykj62C1o2tc0teJciSOh61jpVB9yb344dBHO3ZV4XPPP24s/PPqIMXmVFN00g2GD9M/v1SoHO/A==", + "requires": { + "web3-bzz": "1.7.1", + "web3-core": "1.7.1", + "web3-eth": "1.7.1", + "web3-eth-personal": "1.7.1", + "web3-net": "1.7.1", + "web3-shh": "1.7.1", + "web3-utils": "1.7.1" + } + }, + "web3-bzz": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-bzz/-/web3-bzz-1.7.1.tgz", + "integrity": "sha512-sVeUSINx4a4pfdnT+3ahdRdpDPvZDf4ZT/eBF5XtqGWq1mhGTl8XaQAk15zafKVm6Onq28vN8abgB/l+TrG8kA==", + "requires": { + "@types/node": "^12.12.6", + "got": "9.6.0", + "swarm-js": "^0.1.40" + } + }, + "web3-core": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-core/-/web3-core-1.7.1.tgz", + "integrity": "sha512-HOyDPj+4cNyeNPwgSeUkhtS0F+Pxc2obcm4oRYPW5ku6jnTO34pjaij0us+zoY3QEusR8FfAKVK1kFPZnS7Dzw==", + "requires": { + "@types/bn.js": "^4.11.5", + "@types/node": "^12.12.6", + "bignumber.js": "^9.0.0", + "web3-core-helpers": "1.7.1", + "web3-core-method": "1.7.1", + "web3-core-requestmanager": "1.7.1", + "web3-utils": "1.7.1" + } + }, + "web3-core-helpers": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.7.1.tgz", + "integrity": "sha512-xn7Sx+s4CyukOJdlW8bBBDnUCWndr+OCJAlUe/dN2wXiyaGRiCWRhuQZrFjbxLeBt1fYFH7uWyYHhYU6muOHgw==", + "requires": { + "web3-eth-iban": "1.7.1", + "web3-utils": "1.7.1" + } + }, + "web3-core-method": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-core-method/-/web3-core-method-1.7.1.tgz", + "integrity": "sha512-383wu5FMcEphBFl5jCjk502JnEg3ugHj7MQrsX7DY76pg5N5/dEzxeEMIJFCN6kr5Iq32NINOG3VuJIyjxpsEg==", + "requires": { + "@ethersproject/transactions": "^5.0.0-beta.135", + "web3-core-helpers": "1.7.1", + "web3-core-promievent": "1.7.1", + "web3-core-subscriptions": "1.7.1", + "web3-utils": "1.7.1" + } + }, + "web3-core-promievent": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-core-promievent/-/web3-core-promievent-1.7.1.tgz", + "integrity": "sha512-Vd+CVnpPejrnevIdxhCkzMEywqgVbhHk/AmXXceYpmwA6sX41c5a65TqXv1i3FWRJAz/dW7oKz9NAzRIBAO/kA==", + "requires": { + "eventemitter3": "4.0.4" + }, + "dependencies": { + "eventemitter3": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", + "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==" + } + } + }, + "web3-core-requestmanager": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-core-requestmanager/-/web3-core-requestmanager-1.7.1.tgz", + "integrity": "sha512-/EHVTiMShpZKiq0Jka0Vgguxi3vxq1DAHKxg42miqHdUsz4/cDWay2wGALDR2x3ofDB9kqp7pb66HsvQImQeag==", + "requires": { + "util": "^0.12.0", + "web3-core-helpers": "1.7.1", + "web3-providers-http": "1.7.1", + "web3-providers-ipc": "1.7.1", + "web3-providers-ws": "1.7.1" + } + }, + "web3-core-subscriptions": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-core-subscriptions/-/web3-core-subscriptions-1.7.1.tgz", + "integrity": "sha512-NZBsvSe4J+Wt16xCf4KEtBbxA9TOwSVr8KWfUQ0tC2KMdDYdzNswl0Q9P58xaVuNlJ3/BH+uDFZJJ5E61BSA1Q==", + "requires": { + "eventemitter3": "4.0.4", + "web3-core-helpers": "1.7.1" + }, + "dependencies": { + "eventemitter3": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", + "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==" + } + } + }, + "web3-eth": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth/-/web3-eth-1.7.1.tgz", + "integrity": "sha512-Uz3gO4CjTJ+hMyJZAd2eiv2Ur1uurpN7sTMATWKXYR/SgG+SZgncnk/9d8t23hyu4lyi2GiVL1AqVqptpRElxg==", + "requires": { + "web3-core": "1.7.1", + "web3-core-helpers": "1.7.1", + "web3-core-method": "1.7.1", + "web3-core-subscriptions": "1.7.1", + "web3-eth-abi": "1.7.1", + "web3-eth-accounts": "1.7.1", + "web3-eth-contract": "1.7.1", + "web3-eth-ens": "1.7.1", + "web3-eth-iban": "1.7.1", + "web3-eth-personal": "1.7.1", + "web3-net": "1.7.1", + "web3-utils": "1.7.1" + } + }, + "web3-eth-abi": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth-abi/-/web3-eth-abi-1.7.1.tgz", + "integrity": "sha512-8BVBOoFX1oheXk+t+uERBibDaVZ5dxdcefpbFTWcBs7cdm0tP8CD1ZTCLi5Xo+1bolVHNH2dMSf/nEAssq5pUA==", + "requires": { + "@ethersproject/abi": "5.0.7", + "web3-utils": "1.7.1" + } + }, + "web3-eth-accounts": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth-accounts/-/web3-eth-accounts-1.7.1.tgz", + "integrity": "sha512-3xGQ2bkTQc7LFoqGWxp5cQDrKndlX05s7m0rAFVoyZZODMqrdSGjMPMqmWqHzJRUswNEMc+oelqSnGBubqhguQ==", + "requires": { + "@ethereumjs/common": "^2.5.0", + "@ethereumjs/tx": "^3.3.2", + "crypto-browserify": "3.12.0", + "eth-lib": "0.2.8", + "ethereumjs-util": "^7.0.10", + "scrypt-js": "^3.0.1", + "uuid": "3.3.2", + "web3-core": "1.7.1", + "web3-core-helpers": "1.7.1", + "web3-core-method": "1.7.1", + "web3-utils": "1.7.1" + }, + "dependencies": { + "eth-lib": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", + "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", + "requires": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "uuid": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==" + } + } + }, + "web3-eth-contract": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth-contract/-/web3-eth-contract-1.7.1.tgz", + "integrity": "sha512-HpnbkPYkVK3lOyos2SaUjCleKfbF0SP3yjw7l551rAAi5sIz/vwlEzdPWd0IHL7ouxXbO0tDn7jzWBRcD3sTbA==", + "requires": { + "@types/bn.js": "^4.11.5", + "web3-core": "1.7.1", + "web3-core-helpers": "1.7.1", + "web3-core-method": "1.7.1", + "web3-core-promievent": "1.7.1", + "web3-core-subscriptions": "1.7.1", + "web3-eth-abi": "1.7.1", + "web3-utils": "1.7.1" + } + }, + "web3-eth-ens": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth-ens/-/web3-eth-ens-1.7.1.tgz", + "integrity": "sha512-DVCF76i9wM93DrPQwLrYiCw/UzxFuofBsuxTVugrnbm0SzucajLLNftp3ITK0c4/lV3x9oo5ER/wD6RRMHQnvw==", + "requires": { + "content-hash": "^2.5.2", + "eth-ens-namehash": "2.0.8", + "web3-core": "1.7.1", + "web3-core-helpers": "1.7.1", + "web3-core-promievent": "1.7.1", + "web3-eth-abi": "1.7.1", + "web3-eth-contract": "1.7.1", + "web3-utils": "1.7.1" + } + }, + "web3-eth-iban": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.7.1.tgz", + "integrity": "sha512-XG4I3QXuKB/udRwZdNEhdYdGKjkhfb/uH477oFVMLBqNimU/Cw8yXUI5qwFKvBHM+hMQWfzPDuSDEDKC2uuiMg==", + "requires": { + "bn.js": "^4.11.9", + "web3-utils": "1.7.1" + } + }, + "web3-eth-personal": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth-personal/-/web3-eth-personal-1.7.1.tgz", + "integrity": "sha512-02H6nFBNfNmFjMGZL6xcDi0r7tUhxrUP91FTFdoLyR94eIJDadPp4rpXfG7MVES873i1PReh4ep5pSCHbc3+Pg==", + "requires": { + "@types/node": "^12.12.6", + "web3-core": "1.7.1", + "web3-core-helpers": "1.7.1", + "web3-core-method": "1.7.1", + "web3-net": "1.7.1", + "web3-utils": "1.7.1" + } + }, + "web3-net": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-net/-/web3-net-1.7.1.tgz", + "integrity": "sha512-8yPNp2gvjInWnU7DCoj4pIPNhxzUjrxKlODsyyXF8j0q3Z2VZuQp+c63gL++r2Prg4fS8t141/HcJw4aMu5sVA==", + "requires": { + "web3-core": "1.7.1", + "web3-core-method": "1.7.1", + "web3-utils": "1.7.1" + } + }, + "web3-provider-engine": { + "version": "16.0.1", + "resolved": "https://registry.npmjs.org/web3-provider-engine/-/web3-provider-engine-16.0.1.tgz", + "integrity": "sha512-/Eglt2aocXMBiDj7Se/lyZnNDaHBaoJlaUfbP5HkLJQC/HlGbR+3/W+dINirlJDhh7b54DzgykqY7ksaU5QgTg==", + "requires": { + "async": "^2.5.0", + "backoff": "^2.5.0", + "clone": "^2.0.0", + "cross-fetch": "^2.1.0", + "eth-block-tracker": "^4.4.2", + "eth-json-rpc-filters": "^4.2.1", + "eth-json-rpc-infura": "^5.1.0", + "eth-json-rpc-middleware": "^6.0.0", + "eth-rpc-errors": "^3.0.0", + "eth-sig-util": "^1.4.2", + "ethereumjs-block": "^1.2.2", + "ethereumjs-tx": "^1.2.0", + "ethereumjs-util": "^5.1.5", + "ethereumjs-vm": "^2.3.4", + "json-stable-stringify": "^1.0.1", + "promise-to-callback": "^1.0.0", + "readable-stream": "^2.2.9", + "request": "^2.85.0", + "semaphore": "^1.0.3", + "ws": "^5.1.1", + "xhr": "^2.2.0", + "xtend": "^4.0.1" + }, + "dependencies": { + "clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=" + }, + "ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "requires": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "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==", + "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" + } + }, + "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==", + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "ws": { + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-5.2.3.tgz", + "integrity": "sha512-jZArVERrMsKUatIdnLzqvcfydI85dvd/Fp1u/VOpfdDWQ4c9qWXe+VIeAbQ5FrDwciAkr+lzofXLz3Kuf26AOA==", + "requires": { + "async-limiter": "~1.0.0" + } + } + } + }, + "web3-providers-http": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-providers-http/-/web3-providers-http-1.7.1.tgz", + "integrity": "sha512-dmiO6G4dgAa3yv+2VD5TduKNckgfR97VI9YKXVleWdcpBoKXe2jofhdvtafd42fpIoaKiYsErxQNcOC5gI/7Vg==", + "requires": { + "web3-core-helpers": "1.7.1", + "xhr2-cookies": "1.1.0" + } + }, + "web3-providers-ipc": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-providers-ipc/-/web3-providers-ipc-1.7.1.tgz", + "integrity": "sha512-uNgLIFynwnd5M9ZC0lBvRQU5iLtU75hgaPpc7ZYYR+kjSk2jr2BkEAQhFVJ8dlqisrVmmqoAPXOEU0flYZZgNQ==", + "requires": { + "oboe": "2.1.5", + "web3-core-helpers": "1.7.1" + } + }, + "web3-providers-ws": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-providers-ws/-/web3-providers-ws-1.7.1.tgz", + "integrity": "sha512-Uj0n5hdrh0ESkMnTQBsEUS2u6Unqdc7Pe4Zl+iZFb7Yn9cIGsPJBl7/YOP4137EtD5ueXAv+MKwzcelpVhFiFg==", + "requires": { + "eventemitter3": "4.0.4", + "web3-core-helpers": "1.7.1", + "websocket": "^1.0.32" + }, + "dependencies": { + "eventemitter3": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", + "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==" + } + } + }, + "web3-shh": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-shh/-/web3-shh-1.7.1.tgz", + "integrity": "sha512-NO+jpEjo8kYX6c7GiaAm57Sx93PLYkWYUCWlZmUOW7URdUcux8VVluvTWklGPvdM9H1WfDrol91DjuSW+ykyqg==", + "requires": { + "web3-core": "1.7.1", + "web3-core-method": "1.7.1", + "web3-core-subscriptions": "1.7.1", + "web3-net": "1.7.1" + } + }, + "web3-utils": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.7.1.tgz", + "integrity": "sha512-fef0EsqMGJUgiHPdX+KN9okVWshbIumyJPmR+btnD1HgvoXijKEkuKBv0OmUqjbeqmLKP2/N9EiXKJel5+E1Dw==", + "requires": { + "bn.js": "^4.11.9", + "ethereum-bloom-filters": "^1.0.6", + "ethereumjs-util": "^7.1.0", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "utf8": "3.0.0" + } + }, + "web3modal": { + "version": "1.9.5", + "resolved": "https://registry.npmjs.org/web3modal/-/web3modal-1.9.5.tgz", + "integrity": "sha512-L5ME6zgoaCDa+T66skW9WpxGOJX6vU9v+7aLacoQJhU3AMTk784ionpX+Pg4UdhdM+UQW+odge32GkwEX11czQ==", + "requires": { + "detect-browser": "^5.1.0", + "prop-types": "^15.7.2", + "react": "^16.8.6", + "react-dom": "^16.8.6", + "styled-components": "^5.3.3", + "tslib": "^1.10.0" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "webpack": { + "version": "5.67.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.67.0.tgz", + "integrity": "sha512-LjFbfMh89xBDpUMgA1W9Ur6Rn/gnr2Cq1jjHFPo4v6a79/ypznSYbAyPgGhwsxBtMIaEmDD1oJoA7BEYw/Fbrw==", + "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.3", + "es-module-lexer": "^0.9.0", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.9", + "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.3.1", + "webpack-sources": "^3.2.3" + }, + "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 + }, + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "webpack-dev-middleware": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.0.tgz", + "integrity": "sha512-MouJz+rXAm9B1OTOYaJnn6rtD/lWZPy2ufQCH3BPs8Rloh/Du6Jze4p7AeLYHkVi0giJnYLaSGDC7S+GM9arhg==", + "dev": true, + "requires": { + "colorette": "^2.0.10", + "memfs": "^3.2.2", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + }, + "dependencies": { + "ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.3" + } + }, + "schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + } + } + } + }, + "webpack-dev-server": { + "version": "4.7.3", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.7.3.tgz", + "integrity": "sha512-mlxq2AsIw2ag016nixkzUkdyOE8ST2GTy34uKSABp1c4nhjZvH90D5ZRR+UOLSsG4Z3TFahAi72a3ymRtfRm+Q==", + "dev": true, + "requires": { + "@types/bonjour": "^3.5.9", + "@types/connect-history-api-fallback": "^1.3.5", + "@types/serve-index": "^1.9.1", + "@types/sockjs": "^0.3.33", + "@types/ws": "^8.2.2", + "ansi-html-community": "^0.0.8", + "bonjour": "^3.5.0", + "chokidar": "^3.5.2", + "colorette": "^2.0.10", + "compression": "^1.7.4", + "connect-history-api-fallback": "^1.6.0", + "default-gateway": "^6.0.3", + "del": "^6.0.0", + "express": "^4.17.1", + "graceful-fs": "^4.2.6", + "html-entities": "^2.3.2", + "http-proxy-middleware": "^2.0.0", + "ipaddr.js": "^2.0.1", + "open": "^8.0.9", + "p-retry": "^4.5.0", + "portfinder": "^1.0.28", + "schema-utils": "^4.0.0", + "selfsigned": "^2.0.0", + "serve-index": "^1.9.1", + "sockjs": "^0.3.21", + "spdy": "^4.0.2", + "strip-ansi": "^7.0.0", + "webpack-dev-middleware": "^5.3.0", + "ws": "^8.1.0" + }, + "dependencies": { + "ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.3" + } + }, + "ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true + }, + "schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + } + }, + "strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "dev": true, + "requires": { + "ansi-regex": "^6.0.1" + } + } + } + }, + "webpack-merge": { + "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": { + "clone-deep": "^4.0.1", + "wildcard": "^2.0.0" + } + }, + "webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "dev": true + }, + "webpack-subresource-integrity": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-5.1.0.tgz", + "integrity": "sha512-sacXoX+xd8r4WKsy9MvH/q/vBtEHr86cpImXwyg74pFIpERKt6FmB8cXpeuh0ZLgclOlHI4Wcll7+R5L02xk9Q==", + "dev": true, + "requires": { + "typed-assert": "^1.0.8" + } + }, + "websocket": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/websocket/-/websocket-1.0.34.tgz", + "integrity": "sha512-PRDso2sGwF6kM75QykIesBijKSVceR6jL2G8NGYyq2XrItNC2P5/qL5XeR056GhA+Ly7JMFvJb9I312mJfmqnQ==", + "requires": { + "bufferutil": "^4.0.1", + "debug": "^2.2.0", + "es5-ext": "^0.10.50", + "typedarray-to-buffer": "^3.1.5", + "utf-8-validate": "^5.0.2", + "yaeti": "^0.0.6" + }, + "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=" + } + } + }, + "websocket-driver": { + "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.5.1", + "safe-buffer": ">=5.1.0", + "websocket-extensions": ">=0.1.1" + } + }, + "websocket-extensions": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", + "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", + "dev": true + }, + "whatwg-fetch": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz", + "integrity": "sha512-dcQ1GWpOD/eEQ97k66aiEVpNnapVj90/+R+SXTPYGHpYBBypfKJEQjLrvMZ7YXbKm21gXd4NcuxUTjiv1YtLng==" + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "requires": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + } + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=" + }, + "which-typed-array": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.7.tgz", + "integrity": "sha512-vjxaB4nfDqwKI0ws7wZpxIlde1XrLX5uB0ZjpfshgmapJMD7jJWhZI+yToJTqaFByF0eNBcYxbjmCzoRP7CfEw==", + "requires": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "es-abstract": "^1.18.5", + "foreach": "^2.0.5", + "has-tostringtag": "^1.0.0", + "is-typed-array": "^1.1.7" + } + }, + "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": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "wildcard": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", + "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", + "dev": true + }, + "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==", + "dev": true + }, + "wrap-ansi": { + "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": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "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 + } + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "ws": { + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz", + "integrity": "sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg==", + "dev": true, + "requires": {} + }, + "xhr": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.6.0.tgz", + "integrity": "sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==", + "requires": { + "global": "~4.4.0", + "is-function": "^1.0.1", + "parse-headers": "^2.0.0", + "xtend": "^4.0.0" + } + }, + "xhr-request": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/xhr-request/-/xhr-request-1.1.0.tgz", + "integrity": "sha512-Y7qzEaR3FDtL3fP30k9wO/e+FBnBByZeybKOhASsGP30NIkRAAkKD/sCnLvgEfAIEC1rcmK7YG8f4oEnIrrWzA==", + "requires": { + "buffer-to-arraybuffer": "^0.0.5", + "object-assign": "^4.1.1", + "query-string": "^5.0.1", + "simple-get": "^2.7.0", + "timed-out": "^4.0.1", + "url-set-query": "^1.0.0", + "xhr": "^2.0.4" + } + }, + "xhr-request-promise": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/xhr-request-promise/-/xhr-request-promise-0.1.3.tgz", + "integrity": "sha512-YUBytBsuwgitWtdRzXDDkWAXzhdGB8bYm0sSzMPZT7Z2MBjMSTHFsyCT1yCRATY+XC69DUrQraRAEgcoCRaIPg==", + "requires": { + "xhr-request": "^1.1.0" + } + }, + "xhr2-cookies": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/xhr2-cookies/-/xhr2-cookies-1.1.0.tgz", + "integrity": "sha1-fXdEnQmZGX8VXLc7I99yUF7YnUg=", + "requires": { + "cookiejar": "^2.1.1" + } + }, + "xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" + }, + "y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true + }, + "yaeti": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/yaeti/-/yaeti-0.0.6.tgz", + "integrity": "sha1-8m9ITXJoTPQr7ft2lwqhYI+/lXc=" + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "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": "17.3.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.3.1.tgz", + "integrity": "sha512-WUANQeVgjLbNsEmGk20f+nlHgOqzRFpiGWVaBrYGYIGANIIu3lWjoyi0fNlFmJkvfhCZ6BXINe7/W2O2bV4iaA==", + "dev": true, + "requires": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.0.0" + } + }, + "yargs-parser": { + "version": "21.0.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.0.1.tgz", + "integrity": "sha512-9BK1jFpLzJROCI5TzwZL/TU4gqjK5xiHV/RfWLOahrjAko/e4DJkRDZQXfvqAsiZzzYhgAzbgz6lg48jcm4GLg==", + "dev": true + }, + "zone.js": { + "version": "0.11.5", + "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.11.5.tgz", + "integrity": "sha512-D1/7VxEuQ7xk6z/kAROe4SUbd9CzxY4zOwVGnGHerd/SgLIVU5f4esDzQUsOCeArn933BZfWMKydH7l7dPEp0g==", + "requires": { + "tslib": "^2.3.0" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000000000000000000000000000000000000..4c7c146ea7f4964e790b1cf2d7f85d6c8690f692 --- /dev/null +++ b/package.json @@ -0,0 +1,83 @@ +{ + "name": "offshift-fe", + "version": "0.0.0", + "scripts": { + "ng": "node --max_old_space_size=10240 ./node_modules/@angular/cli/bin/ng", + "start": "npm run ng -- serve --port 4315", + "build": "npm run ng -- build", + "build:prod": "npm run ng -- build --output-path=dist", + "watch": "npm run ng -- build --watch --configuration development", + "test": "ng test", + "lint": "ng lint", + "lint:fix": "ng lint --fix" + }, + "private": true, + "dependencies": { + "@angular/animations": "~13.2.0", + "@angular/cdk": "^13.3.0", + "@angular/common": "~13.2.0", + "@angular/compiler": "~13.2.0", + "@angular/core": "~13.2.0", + "@angular/forms": "~13.2.0", + "@angular/platform-browser": "~13.2.0", + "@angular/platform-browser-dynamic": "~13.2.0", + "@angular/router": "~13.2.0", + "@ethersproject/address": "^5.6.0", + "@fontsource/material-icons": "^4.5.2", + "@fontsource/metropolis": "^4.5.1", + "@metamask/jazzicon": "^2.0.0", + "@ngrx/component": "^13.0.2", + "@ngrx/effects": "^13.0.2", + "@ngrx/entity": "^13.0.2", + "@ngrx/router-store": "^13.0.2", + "@ngrx/store": "^13.0.2", + "@ngrx/store-devtools": "^13.0.2", + "@ngx-translate/core": "^14.0.0", + "@ngx-translate/http-loader": "^7.0.0", + "@uiowa/digit-only": "^3.2.1", + "@walletconnect/web3-provider": "^1.7.5", + "bignumber.js": "^9.0.2", + "chart.js": "^3.7.1", + "primeicons": "^5.0.0", + "primeng": "^13.2.1", + "rxjs": "~7.5.0", + "simplebar-angular": "^2.3.6", + "tslib": "^2.3.0", + "web3": "^1.7.1", + "web3-eth-contract": "^1.7.1", + "web3-utils": "^1.7.1", + "web3modal": "^1.9.5", + "zone.js": "~0.11.4" + }, + "devDependencies": { + "@angular-devkit/build-angular": "~13.2.6", + "@angular-eslint/builder": "13.1.0", + "@angular-eslint/eslint-plugin": "13.1.0", + "@angular-eslint/eslint-plugin-template": "13.1.0", + "@angular-eslint/schematics": "13.1.0", + "@angular-eslint/template-parser": "13.1.0", + "@angular/cli": "~13.2.6", + "@angular/compiler-cli": "~13.2.0", + "@types/jasmine": "~3.10.0", + "@types/node": "^12.11.1", + "@typescript-eslint/eslint-plugin": "5.11.0", + "@typescript-eslint/parser": "5.11.0", + "assert": "^2.0.0", + "browser": "^0.2.6", + "crypto-browserify": "^3.12.0", + "eslint": "^8.2.0", + "eslint-plugin-ngrx": "^2.0.0", + "https-browserify": "^1.0.0", + "jasmine-core": "~4.0.0", + "karma": "~6.3.0", + "karma-chrome-launcher": "~3.1.0", + "karma-coverage": "~2.1.0", + "karma-jasmine": "~4.0.0", + "karma-jasmine-html-reporter": "~1.7.0", + "os-browserify": "^0.3.0", + "stream-browserify": "^3.0.0", + "stream-http": "^3.2.0", + "typescript": "~4.5.2", + "url": "^0.11.0" + } +} diff --git a/src/app/app-routing.module.ts b/src/app/app-routing.module.ts new file mode 100644 index 0000000000000000000000000000000000000000..4b424a01ff84f7da7b5984a946a5e2d98d5942b6 --- /dev/null +++ b/src/app/app-routing.module.ts @@ -0,0 +1,41 @@ +import { NgModule } from '@angular/core'; +import { RouterModule, Routes } from '@angular/router'; + +const ROUTES: Routes = [ + { + path: '', + redirectTo: 'swap', + pathMatch: 'full', + }, + { + path: 'swap', + loadChildren: () => import('./views/swap/swap.module') + .then((m) => m.SwapModule), + }, + { + path: 'transfer', + loadChildren: () => import('./views/transfer/transfer.module') + .then((m) => m.TransferModule), + }, + { + path: 'wallet', + loadChildren: () => import('./views/wallet/wallet.module') + .then((m) => m.WalletModule), + }, + { + path: 'error', + loadChildren: () => import('./views/error/error.module') + .then((m) => m.ErrorModule), + }, + { + path: '**', + redirectTo: '/error', + }, +]; + +@NgModule({ + imports: [RouterModule.forRoot(ROUTES)], + exports: [RouterModule], +}) +export class AppRoutingModule { +} diff --git a/src/app/app.component.html b/src/app/app.component.html new file mode 100644 index 0000000000000000000000000000000000000000..dead77283ecbc043d5796de6397700f1cf79519f --- /dev/null +++ b/src/app/app.component.html @@ -0,0 +1,25 @@ +<div class="wrapper"> + <div class="wrapper__header header"> + <div class="header__left"> + <img src="assets/images/logo.svg" alt="offshift"> + </div> + <div class="header__center"> + <a routerLink="/swap" routerLinkActive="active">Shift</a> + <a routerLink="/transfer" routerLinkActive="active">Transfer</a> + <a routerLink="/wallet" routerLinkActive="active">Wallet</a> + </div> + <div class="header__right"> + <os-connect-wallet class="header__connect"></os-connect-wallet> + + <!--<div class="header__switch"> + <span [class.is-active]="!isDarkTheme" class="material-icons light-mode">light_mode</span> + <span [class.is-active]="isDarkTheme" class="material-icons dark-mode">dark_mode</span> + <p-inputSwitch [(ngModel)]="isDarkTheme"></p-inputSwitch> + </div>--> + </div> + </div> + + <div class="wrapper__content"> + <router-outlet></router-outlet> + </div> +</div> diff --git a/src/app/app.component.scss b/src/app/app.component.scss new file mode 100644 index 0000000000000000000000000000000000000000..3b3c489bab95fc8063f3b66175a91dd5c40e60dc --- /dev/null +++ b/src/app/app.component.scss @@ -0,0 +1,121 @@ +@use "sass:math"; + +@import "~src/styles/variables"; + +:host { + display: block; + position: relative; +} + +.wrapper { + display: flex; + flex-direction: column; + + & &__header { + height: 72px; + background: #FFFFFF; + } + + & &__content { + padding: $offshift-gap 80px; + } +} + + +.header { + display: flex; + align-items: center; + padding: 0 80px; + gap: $offshift-gap; + + & &__left, + & &__right { + width: 260px; + } + + & &__left { + height: 30px; + + > img { + width: auto; + height: 100%; + display: block; + } + } + + & &__center { + margin: 0 auto; + display: flex; + align-items: center; + align-self: flex-end; + gap: $offshift-gap * 2; + + + > a { + position: relative; + text-decoration: unset; + color: #1B0D3D; + text-transform: uppercase; + font-weight: 600; + font-size: 14px; + padding-bottom: 20px; + + &.active:after { + width: 100%; + } + + &:after { + width: 0; + left: 0; + bottom: 0; + position: absolute; + background: #5800B0; + height: 3px; + content: ""; + transition: .5s ease-in-out; + } + } + } + + & &__right { + display: flex; + align-items: center; + justify-content: flex-end; + gap: math.div($offshift-gap * 3, 2);; + } + + & &__connect { + } + + & &__switch { + position: relative; + cursor: pointer; + + .light-mode, + .dark-mode { + position: absolute; + top: calc(50% - 9px); + font-size: 16px; + z-index: 1; + color: #FFFFFF; + opacity: 0.3; + + &.is-active { + opacity: unset; + color: #5800B0; + } + } + + .light-mode { + left: 6px; + } + + .dark-mode { + right: 6px; + } + + > p-inputSwitch { + display: inline-flex; + } + } +} diff --git a/src/app/app.component.spec.ts b/src/app/app.component.spec.ts new file mode 100644 index 0000000000000000000000000000000000000000..c9b933523a798df907973de1e169b80e0d16b545 --- /dev/null +++ b/src/app/app.component.spec.ts @@ -0,0 +1,23 @@ +import { TestBed } from '@angular/core/testing'; +import { RouterTestingModule } from '@angular/router/testing'; +import { AppComponent } from './app.component'; + +describe('AppComponent', () => { + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [ + RouterTestingModule, + ], + declarations: [ + AppComponent, + ], + }).compileComponents(); + }); + + it('should create the app', () => { + const fixture = TestBed.createComponent(AppComponent); + const app = fixture.componentInstance; + + expect(app).toBeTruthy(); + }); +}); diff --git a/src/app/app.component.ts b/src/app/app.component.ts new file mode 100644 index 0000000000000000000000000000000000000000..a29ccd5e4e6a84bc73d4debf49ec33c41c38e6c4 --- /dev/null +++ b/src/app/app.component.ts @@ -0,0 +1,26 @@ +import { ChangeDetectionStrategy, ChangeDetectorRef, Component } from '@angular/core'; +import { WalletService } from './core/services/wallet.service'; +import { selectAccountAddress } from './core/selectors'; +import { BaseComponent } from './base.component'; +import { Store } from '@ngrx/store'; +import { Observable } from 'rxjs'; + +@Component({ + selector: 'os-root', + templateUrl: './app.component.html', + styleUrls: ['./app.component.scss'], + changeDetection: ChangeDetectionStrategy.OnPush, +}) +export class AppComponent extends BaseComponent { + public accountAddress$: Observable<string>; + + constructor( + store: Store, + private readonly _cdr: ChangeDetectorRef, + private readonly _walletService: WalletService, + ) { + super(store); + + this.accountAddress$ = this.store.select(selectAccountAddress); + } +} diff --git a/src/app/app.module.ts b/src/app/app.module.ts new file mode 100644 index 0000000000000000000000000000000000000000..db0380b473e724298e1501c8ac6e38701d1281ab --- /dev/null +++ b/src/app/app.module.ts @@ -0,0 +1,101 @@ +import { HttpClient, HttpClientModule } from '@angular/common/http'; +import { APP_INITIALIZER, NgModule } from '@angular/core'; +import { FormsModule } from '@angular/forms'; +import { BrowserModule } from '@angular/platform-browser'; +import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; +import { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core'; +import { TranslateHttpLoader } from '@ngx-translate/http-loader'; +import { ButtonModule } from 'primeng/button'; +import { DialogService, DynamicDialogModule } from 'primeng/dynamicdialog'; +import { InputSwitchModule } from 'primeng/inputswitch'; +import { firstValueFrom } from 'rxjs'; + +import { AppRoutingModule } from './app-routing.module'; +import { AppComponent } from './app.component'; +import { ConnectWalletModule } from './components/connect-wallet/connect-wallet.module'; +import { metaReducers, reducers } from './core'; +import { CoreEffects } from './core/effects'; +import { RouterParamsSerializer } from './core/router-params.serializer'; +import { WalletService } from './core/services/wallet.service'; +import { StoreModule } from '@ngrx/store'; +import { StoreDevtoolsModule } from '@ngrx/store-devtools'; +import { environment } from '../environments/environment'; +import { EffectsModule } from '@ngrx/effects'; +import { StoreRouterConnectingModule } from '@ngrx/router-store'; + +export function translateHttpLoaderFactory(http: HttpClient): TranslateHttpLoader { + return new TranslateHttpLoader(http, 'assets/i18n/', '.json'); +} + +export function initializeFactory( + walletService: WalletService, + translateService: TranslateService, +): () => Promise<void> { + return () => { + return walletService.initialize() + .then(() => firstValueFrom(translateService.use('en'))) + .then(() => { + const loader = document.querySelector('div.loader'); + + loader && document.body.removeChild(loader); + }); + }; +} + +@NgModule({ + declarations: [ + AppComponent, + ], + imports: [ + BrowserAnimationsModule, + BrowserModule, + HttpClientModule, + AppRoutingModule, + TranslateModule.forRoot({ + defaultLanguage: 'en', + loader: { + provide: TranslateLoader, + useFactory: translateHttpLoaderFactory, + deps: [HttpClient], + }, + isolate: true, + }), + DynamicDialogModule, + ButtonModule, + InputSwitchModule, + FormsModule, + StoreModule.forRoot(reducers, { + metaReducers, + runtimeChecks: { + strictStateImmutability: true, + strictActionImmutability: true, + }, + }), + StoreDevtoolsModule.instrument({ + maxAge: 25, + logOnly: environment.production, + }), + EffectsModule.forRoot([ + CoreEffects, + ]), + StoreRouterConnectingModule.forRoot({ + stateKey: 'router', + }), + ConnectWalletModule, + ], + bootstrap: [ + AppComponent, + ], + providers: [ + { + provide: APP_INITIALIZER, + useFactory: initializeFactory, + deps: [WalletService, TranslateService], + multi: true, + }, + DialogService, + RouterParamsSerializer, + ], +}) +export class AppModule { +} diff --git a/src/app/base.component.ts b/src/app/base.component.ts new file mode 100644 index 0000000000000000000000000000000000000000..3702fb62d55a51eb5eb943eb1bf8138e81f4c0db --- /dev/null +++ b/src/app/base.component.ts @@ -0,0 +1,9 @@ +import { Store } from '@ngrx/store'; + +export abstract class BaseComponent { + + protected constructor( + protected readonly store: Store, + ) { + } +} diff --git a/src/app/components/connect-wallet/connect-wallet.component.html b/src/app/components/connect-wallet/connect-wallet.component.html new file mode 100644 index 0000000000000000000000000000000000000000..bf72c33d64bc9b5f0e689c8d6abcaef9cb9c2ba7 --- /dev/null +++ b/src/app/components/connect-wallet/connect-wallet.component.html @@ -0,0 +1,16 @@ +<div class="connect-wallet"> + <div *ngIf="(accountAddress$ | ngrxPush) as accountAddress else connectWallet" + (click)="onDisconnectWalletClick()" + class="p-button connect-wallet__connected"> + {{ accountAddress | shortAddress }} + </div> + + <ng-template #connectWallet> + <button (click)="onConnectWalletClick()" + class="connect-wallet__connect" + pButton + type="button" + label="Connect wallet"> + </button> + </ng-template> +</div> diff --git a/src/app/components/connect-wallet/connect-wallet.component.scss b/src/app/components/connect-wallet/connect-wallet.component.scss new file mode 100644 index 0000000000000000000000000000000000000000..ce423d082e389d54d117e8126ddeb5e7170911a0 --- /dev/null +++ b/src/app/components/connect-wallet/connect-wallet.component.scss @@ -0,0 +1,24 @@ +@use "sass:math"; + +@import "~src/styles/variables"; + +:host { + display: inline-flex; +} + +.connect-wallet { + display: inline-flex; + width: 100%; + + & &__connect { + width: 100%; + } + + & &__connected { + color: #1B0D3D; + border: 1px solid rgba(107, 57, 250, 0.1); + background: rgba(107, 57, 250, 0.1); + padding: 0.5rem 2rem; + height: 42px; + } +} diff --git a/src/app/components/connect-wallet/connect-wallet.component.spec.ts b/src/app/components/connect-wallet/connect-wallet.component.spec.ts new file mode 100644 index 0000000000000000000000000000000000000000..77a557feffd9fe11eb010019599dd3463695cd70 --- /dev/null +++ b/src/app/components/connect-wallet/connect-wallet.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { ConnectWalletComponent } from './connect-wallet.component'; + +describe('ConnectWalletComponent', () => { + let component: ConnectWalletComponent; + let fixture: ComponentFixture<ConnectWalletComponent>; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [ ConnectWalletComponent ] + }) + .compileComponents(); + }); + + beforeEach(() => { + fixture = TestBed.createComponent(ConnectWalletComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/components/connect-wallet/connect-wallet.component.ts b/src/app/components/connect-wallet/connect-wallet.component.ts new file mode 100644 index 0000000000000000000000000000000000000000..92ac48970a8f1e6659313df84a6346294e79eeff --- /dev/null +++ b/src/app/components/connect-wallet/connect-wallet.component.ts @@ -0,0 +1,64 @@ +import { Component, OnInit, ChangeDetectionStrategy, ChangeDetectorRef, ElementRef } from '@angular/core'; +import { Store } from '@ngrx/store'; +import { delay, Observable } from 'rxjs'; +import { DisconnectWallet, GetTokensRequest } from '../../core/actions'; +import { generateJazzicon } from '../../core/helpers'; +import { selectAccountAddress } from '../../core/selectors'; +import { WalletService } from '../../core/services/wallet.service'; + +@Component({ + selector: 'os-connect-wallet', + templateUrl: './connect-wallet.component.html', + styleUrls: ['./connect-wallet.component.scss'], + changeDetection: ChangeDetectionStrategy.OnPush, +}) +export class ConnectWalletComponent implements OnInit { + public accountAddress$: Observable<string>; + + constructor( + private readonly _store: Store, + private readonly _cdr: ChangeDetectorRef, + private readonly _walletService: WalletService, + private readonly _elementRef: ElementRef, + ) { + this.accountAddress$ = this._store.select(selectAccountAddress); + } + + public ngOnInit(): void { + this.accountAddress$ + .pipe( + delay(100), + ) + .subscribe((accountAddress) => { + const element = this._elementRef.nativeElement.querySelector('div.p-button'); + const identicon = generateJazzicon(accountAddress); + + if (identicon && element) { + const previousIdenticon = element.querySelector(':scope > div'); + + if (previousIdenticon) { + element.removeChild(previousIdenticon); + } + + identicon.style.marginLeft = '12px'; + + element.appendChild(identicon); + + this._store.dispatch(GetTokensRequest()); + } + }); + } + + public async onConnectWalletClick(): Promise<void> { + this._walletService.clearCachedProvider(); + + await this._walletService.connect(); + } + + public async onDisconnectWalletClick(): Promise<void> { + this._walletService.clearCachedProvider(); + + this._store.dispatch(DisconnectWallet()); + } + +} diff --git a/src/app/components/connect-wallet/connect-wallet.module.ts b/src/app/components/connect-wallet/connect-wallet.module.ts new file mode 100644 index 0000000000000000000000000000000000000000..d382abea8a5e6b2e19d4ff4996d4ee9387c86c40 --- /dev/null +++ b/src/app/components/connect-wallet/connect-wallet.module.ts @@ -0,0 +1,23 @@ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { ReactiveComponentModule } from '@ngrx/component'; +import { ButtonModule } from 'primeng/button'; +import { PipesModule } from '../../core/pipes'; +import { ConnectWalletComponent } from './connect-wallet.component'; + +@NgModule({ + declarations: [ + ConnectWalletComponent, + ], + exports: [ + ConnectWalletComponent, + ], + imports: [ + CommonModule, + ButtonModule, + PipesModule, + ReactiveComponentModule, + ] +}) +export class ConnectWalletModule { +} diff --git a/src/app/core/actions.ts b/src/app/core/actions.ts new file mode 100644 index 0000000000000000000000000000000000000000..cd43f575ac101d11e48a31ccb327dc1723737345 --- /dev/null +++ b/src/app/core/actions.ts @@ -0,0 +1,105 @@ +import { Params } from '@angular/router'; + +import { createAction, props } from '@ngrx/store'; + +import { RouterParams } from './index'; +import { ApproveParams, OutputParamsBalance, TransactionHash } from './interfaces/contract-service-methods'; + +export const SetRouterParams = createAction( + '[@offshift] SET_ROUTER_PARAMS', + props<{ url: string; params: RouterParams; queryParams: Params }>(), +); + +export const DisconnectWallet = createAction( + '[@offshift] DISCONNECT_WALLET_REQUEST', +); + +export const SetAccountAddress = createAction( + '[@offshift] SET_ACCOUNT_ADDRESS', + props<{ accountAddress: string }>(), +); + +export const SetApproveRequest = createAction( + '[@offshift] SET_APPROVE_REQUEST', +); + +export const SetApproveSuccess = createAction( + '[@offshift] SET_APPROVE_SUCCESS', + props<{ payload: ApproveParams }>(), +); + +export const SetApproveFailure = createAction( + '[@offshift] SET_APPROVE_FAILURE', + props<{ error: any }>(), +); + +export const GetTokensRequest = createAction( + '[@offshift] GET_TOKENS_REQUEST', +); + +export const GetTokensSuccess = createAction( + '[@offshift] GET_TOKENS_SUCCESS', + props<{ payload: TransactionHash }>(), +); + +export const GetTokensFailure = createAction( + '[@offshift] GET_TOKENS_FAILURE', + props<{ error: any }>(), +); + +export const GetXFTBalanceRequest = createAction( + '[@offshift] GET_XFT_BALANCE_REQUEST', +); + +export const GetXFTBalanceSuccess = createAction( + '[@offshift] GET_XFT_BALANCE_SUCCESS', + props<{ xftBalance: string }>(), +); + +export const GetXFTBalanceFailure = createAction( + '[@offshift] GET_XFT_BALANCE_FAILURE', + props<{ error: any }>(), +); + +export const GetLatestPriceRequest = createAction( + '[@offshift] GET_LATEST_PRICE_REQUEST', + props<{ aggregator: number }>(), +); + +export const GetLatestPriceSuccess = createAction( + '[@offshift] GET_LATEST_PRICE_SUCCESS', + props<{ assetPrice: { price: string, decimals: number } }>(), +); + +export const GetLatestPriceFailure = createAction( + '[@offshift] GET_LATEST_PRICE_FAILURE', + props<{ error: any }>(), +); + +export const GetAllowanceRequest = createAction( + '[@offshift] GET_ALLOWANCE_REQUEST', +); + +export const GetAllowanceSuccess = createAction( + '[@offshift] GET_ALLOWANCE_SUCCESS', + props<{ allowance: string }>(), +); + +export const GetAllowanceFailure = createAction( + '[@offshift] GET_ALLOWANCE_FAILURE', + props<{ error: any }>(), +); + +export const GetBalancesRequest = createAction( + '[@offshift] GET_BALANCES_REQUEST', +); + +export const GetBalancesSuccess = createAction( + '[@offshift] GET_BALANCES_SUCCESS', + props<{ balances: OutputParamsBalance[] }>(), +); + +export const GetBalancesFailure = createAction( + '[@offshift] GET_BALANCES_FAILURE', + props<{ error: any }>(), +); diff --git a/src/app/core/base.effects.ts b/src/app/core/base.effects.ts new file mode 100644 index 0000000000000000000000000000000000000000..de160ce0b9016de0c7ddd38d30a852950c171e07 --- /dev/null +++ b/src/app/core/base.effects.ts @@ -0,0 +1,19 @@ +import { Actions } from '@ngrx/effects'; +import { Store } from '@ngrx/store'; + +import { Observable } from 'rxjs'; + +import { CoreState } from './reducer'; + +import { selectContext } from './selectors'; + +export abstract class BaseEffects { + protected context$: Observable<CoreState>; + + protected constructor( + protected store: Store, + protected actions$: Actions, + ) { + this.context$ = this.store.select(selectContext); + } +} diff --git a/src/app/core/effects.ts b/src/app/core/effects.ts new file mode 100644 index 0000000000000000000000000000000000000000..03253be0d175f958e5bd3522c5111c0d4b715843 --- /dev/null +++ b/src/app/core/effects.ts @@ -0,0 +1,161 @@ +import { Injectable } from '@angular/core'; +import { Router, RouterStateSnapshot } from '@angular/router'; + +import { Actions, createEffect, ofType, concatLatestFrom } from '@ngrx/effects'; +import { ROUTER_NAVIGATED, RouterNavigatedAction } from '@ngrx/router-store'; +import { Action, Store } from '@ngrx/store'; +import { catchError, from, map, mergeMap, Observable, of, tap } from 'rxjs'; +import { environment } from '../../environments/environment'; + +import { + GetAllowanceFailure, + GetAllowanceRequest, + GetAllowanceSuccess, + GetBalancesFailure, + GetBalancesRequest, + GetBalancesSuccess, + GetLatestPriceFailure, + GetLatestPriceRequest, + GetLatestPriceSuccess, + GetXFTBalanceFailure, + GetXFTBalanceRequest, + GetXFTBalanceSuccess, + SetAccountAddress, + SetRouterParams, +} from './actions'; +import { BaseEffects } from './base.effects'; + +import { RouterParamsSerializer } from './router-params.serializer'; + +import { ContractService } from './services/contract.service'; + +@Injectable() +export class CoreEffects extends BaseEffects { + + constructor( + store: Store, + actions$: Actions, + private _router: Router, + private _contractService: ContractService, + private _routerParamsSerializer: RouterParamsSerializer, + ) { + super(store, actions$); + } + + public routerNavigated$: Observable<Action> = createEffect(() => { + return this.actions$.pipe( + ofType(ROUTER_NAVIGATED), + map(({ payload }: RouterNavigatedAction<RouterStateSnapshot>) => { + const { url, params, queryParams } = this._routerParamsSerializer.serialize(payload.routerState); + + return SetRouterParams({ url, params, queryParams }); + }), + ); + }); + + public init$: Observable<Action> = createEffect(() => { + return this.actions$ + .pipe( + ofType(SetAccountAddress), + tap(async ({ accountAddress: address }) => { + try { + const actions = [ + GetXFTBalanceRequest, + GetAllowanceRequest, + GetBalancesRequest, + ]; + + actions.forEach((action) => this.store.dispatch(action())); + + const configData = { + rawURL: environment.infuraUrl, + balanceContractAddress: environment.balanceContractAddress, + priceContractAddress: environment.priceContractAddress, + tokenContractAddress: environment.tokenContractAddress, + }; + + await this._contractService.config(configData).toPromise(); + + await this._contractService.init({ address }).toPromise(); + } catch (error) { + console.log(error); + } + }), + ); + }, { dispatch: false }); + + public xftBalance$: Observable<Action> = createEffect(() => { + return this.actions$ + .pipe( + ofType(GetXFTBalanceRequest), + concatLatestFrom(() => this.context$), + mergeMap(([action, { accountAddress }]) => { + if (!accountAddress) { + return of(GetXFTBalanceSuccess({ xftBalance: undefined })); + } + + return from(this._contractService.xftBalance(accountAddress)) + .pipe( + map((xftBalance) => GetXFTBalanceSuccess({ xftBalance })), + catchError((error) => of(GetXFTBalanceFailure({ error }))), + ); + }), + ); + }); + + public getLatestPriceRequest$: Observable<Action> = createEffect(() => { + return this.actions$ + .pipe( + ofType(GetLatestPriceRequest), + mergeMap(({ aggregator }) => { + return from(this._contractService.getLatestPrice(aggregator)) + .pipe( + map((assetPrice) => { + return GetLatestPriceSuccess({ assetPrice }); + }), + catchError((error) => { + return of(GetLatestPriceFailure({ error })); + }), + ); + }), + ); + }); + + public getAllowanceRequest$: Observable<Action> = createEffect(() => { + return this.actions$ + .pipe( + ofType(GetAllowanceRequest), + concatLatestFrom(() => this.context$), + mergeMap(([action, { accountAddress }]) => { + return from(this._contractService.allowance(accountAddress, environment.balanceContractAddress)) + .pipe( + map((allowance) => { + return GetAllowanceSuccess({ allowance }); + }), + catchError((error) => { + return of(GetAllowanceFailure({ error })); + }), + ); + }), + ); + }); + + public getBalancesRequest$: Observable<Action> = createEffect(() => { + return this.actions$ + .pipe( + ofType(GetBalancesRequest), + concatLatestFrom(() => this.context$), + mergeMap(([action, { accountAddress: address }]) => { + return this._contractService.balances({ address }) + .pipe( + map((balances) => { + return GetBalancesSuccess({ balances }); + }), + catchError((error) => { + return of(GetBalancesFailure({ error })); + }), + ); + }), + ); + }); +} diff --git a/src/app/core/enums/eth-events.ts b/src/app/core/enums/eth-events.ts new file mode 100644 index 0000000000000000000000000000000000000000..092c374b2dcc3ef81579cc06f6a9bf949902d44f --- /dev/null +++ b/src/app/core/enums/eth-events.ts @@ -0,0 +1,7 @@ +export enum EthEvents { + AccountsChanged = 'accountsChanged', + ChainChanged = 'chainChanged', + Connect = 'connect', + Disconnect = 'disconnect', + Message = 'message', +} diff --git a/src/app/core/enums/eth-methods.ts b/src/app/core/enums/eth-methods.ts new file mode 100644 index 0000000000000000000000000000000000000000..cf936a408193737ef640df806b506d128bb0a0e8 --- /dev/null +++ b/src/app/core/enums/eth-methods.ts @@ -0,0 +1,4 @@ +export enum EthMethods { + SwitchEthereumChain = 'wallet_switchEthereumChain', + AddEthereumChain = 'wallet_addEthereumChain', +} diff --git a/src/app/core/enums/index.ts b/src/app/core/enums/index.ts new file mode 100644 index 0000000000000000000000000000000000000000..ce49207265ab89398d4b447b8ed37c8c79324f79 --- /dev/null +++ b/src/app/core/enums/index.ts @@ -0,0 +1,3 @@ +export * from './tokens'; +export * from './eth-events'; +export * from './eth-methods'; diff --git a/src/app/core/enums/tokens.ts b/src/app/core/enums/tokens.ts new file mode 100644 index 0000000000000000000000000000000000000000..dabe8e4fc31f0507e5830f7868c95cc161d3af04 --- /dev/null +++ b/src/app/core/enums/tokens.ts @@ -0,0 +1,39 @@ +export enum Tokens { + XFT = 'XFT', + zkBTC = 'zkBTC', + zkETH = 'zkETH', + zkXAU = 'zkXAU', + zkUSD = 'zkUSD', +} + +export enum TokensAggregator { + XFT = 0, + USD = 1, + BTC = 2, + ETH = 3, + XAU = 4, +} + +export enum TokensName { + XFT = 'XFT', + USD = 'USD', + BTC = 'BTC', + ETH = 'ETH', + XAU = 'XAU', +} + +export const TOKENS_AGGREGATOR_MAP = { + [TokensName.XFT]: TokensAggregator.XFT, + [TokensName.USD]: TokensAggregator.USD, + [TokensName.BTC]: TokensAggregator.BTC, + [TokensName.ETH]: TokensAggregator.ETH, + [TokensName.XAU]: TokensAggregator.XAU, +}; + +export const TOKENS_NAME_MAP = { + [Tokens.XFT]: TokensName.XFT, + [TokensName.USD]: TokensName.USD, + [TokensName.BTC]: TokensName.BTC, + [TokensName.ETH]: TokensName.ETH, + [TokensName.XAU]: TokensName.XAU, +}; diff --git a/src/app/core/helpers/bignumber.ts b/src/app/core/helpers/bignumber.ts new file mode 100644 index 0000000000000000000000000000000000000000..f508ff8930c6fc01e3ad22948c9c39636eb502a9 --- /dev/null +++ b/src/app/core/helpers/bignumber.ts @@ -0,0 +1,62 @@ +import { BigNumber } from 'bignumber.js'; +import { Unit } from 'web3-utils'; +import Web3 from 'web3'; + +export type BigNumberValue = BigNumber.Value; + +export const BigNumberZD = BigNumber.clone({ + DECIMAL_PLACES: 0, + ROUNDING_MODE: BigNumber.ROUND_DOWN, +}); + +export function valueToBigNumber(amount: BigNumberValue): BigNumber { + if (amount instanceof BigNumber) { + return amount; + } + + return new BigNumber(amount || 0); +} + +export function valueToZDBigNumber(amount: BigNumberValue): BigNumber { + return new BigNumberZD(amount); +} + +const bn10 = new BigNumber(10); + +const bn10PowLookup: { [key: number]: BigNumber } = {}; + +export function pow10(decimals: number): BigNumber { + if (!bn10PowLookup[decimals]) bn10PowLookup[decimals] = bn10.pow(decimals); + + return bn10PowLookup[decimals]; +} + +export function normalize(value: BigNumberValue, decimals: number): string { + return normalizeBN(value, decimals).toString(10); +} + +export function normalizeBN(value: BigNumberValue, decimals: number): BigNumber { + return valueToBigNumber(value).dividedBy(pow10(decimals)); +} + +export function valueToWei(value: BigNumberValue, decimals: number): string { + return valueToBigNumber(value).shiftedBy(decimals).toFixed(0); +} + +export function fromWei( + amount: BigNumber.Value, + unit: Unit = 'ether', +): BigNumberValue { + return valueToBigNumber(Web3.utils.fromWei((amount || 0).toString(), unit)); +} + +export function toWei( + amount: string | BigNumber.Value, + unit: Unit = 'ether', +): string { + if (amount instanceof BigNumber) { + amount = amount.toString(10); + } + + return Web3.utils.toWei((amount || 0).toString(), unit); +} diff --git a/src/app/core/helpers/helpers.ts b/src/app/core/helpers/helpers.ts new file mode 100644 index 0000000000000000000000000000000000000000..0be7d872013e063c1ea753efc4e4729314dd653d --- /dev/null +++ b/src/app/core/helpers/helpers.ts @@ -0,0 +1,39 @@ +import { getAddress } from '@ethersproject/address'; +// @ts-ignore +import jazzicon from '@metamask/jazzicon'; + +export function isTxHash(address: string): boolean { + return (/^0x([A-Fa-f0-9]{64})$/).test(address); +} + +export function shortTxHash(address: string): string { + return [address.slice(0, 5), address.slice(-4)].join('...'); +} + +export function isAddress(value: string): string | false { + try { + return getAddress(value); + } catch { + return false; + } +} + +export function shortAddress(address: string, chars = 4): string | null { + const parsed = isAddress(address); + + if (!parsed) { + return null; + } + + return `${parsed.substring(0, chars + 2)}...${parsed.substring(42 - chars)}`; +} + +export function generateJazzicon(address: string, diameter = 20): HTMLDivElement | null { + const parsed = isAddress(address); + + if (!parsed) { + return null; + } + + return jazzicon(diameter, parseInt(address.slice(2, 10), 16)); +} diff --git a/src/app/core/helpers/index.ts b/src/app/core/helpers/index.ts new file mode 100644 index 0000000000000000000000000000000000000000..3a25334948f211cdb3519fd987f7877651659395 --- /dev/null +++ b/src/app/core/helpers/index.ts @@ -0,0 +1,43 @@ +import { Tokens, TokensName } from '../enums'; +import { TokenType } from '../types'; + +export * from './helpers'; +export * from './bignumber'; + +export const TOKENS_MAP: { [key: string]: TokenType } = { + [TokensName.XFT]: { + color: '#FFFFFF', + icon: 'assets/images/XFT-light.svg', + name: 'XFT', + symbol: TokensName.XFT, + zkSymbol: Tokens.XFT, + }, + [TokensName.BTC]: { + color: '#5800B0', + icon: 'assets/images/zkBTC.svg', + name: 'zk Bitcoin', + symbol: TokensName.BTC, + zkSymbol: Tokens.zkBTC, + }, + [TokensName.ETH]: { + color: '#6B39FA', + icon: 'assets/images/zkETH.svg', + name: 'zk Ethereum', + symbol: TokensName.ETH, + zkSymbol: Tokens.zkETH, + }, + [TokensName.XAU]: { + color: '#A98CFF', + icon: 'assets/images/zkXAU.svg', + name: 'zk Spot Gold', + symbol: TokensName.XAU, + zkSymbol: Tokens.zkXAU, + }, + [TokensName.USD]: { + color: '#D1C1FE', + icon: 'assets/images/zkUSD.svg', + name: 'zk USD', + symbol: TokensName.USD, + zkSymbol: Tokens.zkUSD, + }, +}; diff --git a/src/app/core/index.ts b/src/app/core/index.ts new file mode 100644 index 0000000000000000000000000000000000000000..3ab86ea45031476d3811e157906642ad0528bf11 --- /dev/null +++ b/src/app/core/index.ts @@ -0,0 +1,39 @@ +import { Params } from '@angular/router'; + +import * as fromRouter from '@ngrx/router-store'; +import { Action, ActionReducer, ActionReducerMap, MetaReducer } from '@ngrx/store'; + +import { reducer, CoreState } from './reducer'; + +export interface RouterParams { +} + +export const initialRouterParamsState: RouterParams = {}; + +export type RouterQueryParams = Params; + +export interface RouterState { + url: string; + params: RouterParams; + queryParams: RouterQueryParams; +} + +export interface State { + router: fromRouter.RouterReducerState<any>; + context: CoreState; +} + +export const reducers: ActionReducerMap<State> = { + router: fromRouter.routerReducer, + context: reducer, +}; + +export function disconnectWalletMetaReducer(reducer: ActionReducer<any, any>): ActionReducer<any, any> { + return function (state: State, action: Action): any { + return reducer(action.type === '[@offshift] DISCONNECT_WALLET_REQUEST' ? undefined : state, action); + }; +} + +export const metaReducers: MetaReducer<State>[] = [ + disconnectWalletMetaReducer, +]; diff --git a/src/app/core/interfaces/balance-contract.ts b/src/app/core/interfaces/balance-contract.ts new file mode 100644 index 0000000000000000000000000000000000000000..e1be2b1033f298408862c4c9909a3fa919dc6808 --- /dev/null +++ b/src/app/core/interfaces/balance-contract.ts @@ -0,0 +1,63 @@ +import { Contract } from 'web3-eth-contract'; +import { CallReturn, SendReturn } from './callback'; +import { BigNumberValue } from '../helpers'; +import { TokensAggregator } from '../enums'; + +export interface RecipientCommitment { + commitment: { + x: string; + y: string; + }; + asset: number; +} + +export interface SchnorrSignatureSet { + message: string; + publicKey: { + x: string, + y: string, + }; + ecR: { + x: string, + y: string, + }; + s: string; +} + +export interface EcNewCommitment { + x: string; + y: string; +} + +export interface PkSum { + x: string; + y: string; +} + +export interface BalanceContractMethods { + getLatestPrice(aggregator: number): CallReturn<any>; + + deposit( + amountIn: BigNumberValue, + amountComm: BigNumberValue, + recipientCommitment: RecipientCommitment, + schnorrSignatureSet: SchnorrSignatureSet, + ): SendReturn<any>; + + withdraw( + amount: BigNumberValue, + commitmentId: BigNumberValue, + schnorrSignatureSet: SchnorrSignatureSet, + ): SendReturn<any>; + + groupCommitment( + commitmentIds: BigNumberValue[], + asset: TokensAggregator, + ecNewCommitment: EcNewCommitment, + pkSum: PkSum, + ): SendReturn<any>; +} + +export interface BalanceContract extends Contract { + methods: BalanceContractMethods; +} diff --git a/src/app/core/interfaces/callback.ts b/src/app/core/interfaces/callback.ts new file mode 100644 index 0000000000000000000000000000000000000000..6674ffc4b9a3b67104293a07f9c780b627c2b318 --- /dev/null +++ b/src/app/core/interfaces/callback.ts @@ -0,0 +1,15 @@ +export type MethodCallback = ((error: any, result: any) => void) | null; + +export type SendCallback = (err: any, result: any) => void; + +export interface CallReturn<T = any> { + call(obj?: { from: string }, cb?: MethodCallback): Promise<T>; +} + +export interface SendReturn<T = any> { + estimateGas(obj: { from: string }, cb?: MethodCallback): Promise<number>; + + send(obj: { from: string; gas?: number }, cb?: MethodCallback): Promise<T>; +} + +export type Optional<T> = T | undefined; diff --git a/src/app/core/interfaces/contract-service-methods.ts b/src/app/core/interfaces/contract-service-methods.ts new file mode 100644 index 0000000000000000000000000000000000000000..d581d9f8626be94201d438dfc5e1ec95782f698e --- /dev/null +++ b/src/app/core/interfaces/contract-service-methods.ts @@ -0,0 +1,173 @@ +import { Observable } from 'rxjs'; + +export interface TransactionHash { + tx: string; +} + +export interface InputParamsBalance { + address: string; +} + +export interface BalanceAsset { + amount: string; + symbol: string; + USD: string; + XFT: string; +} + +export interface BalanceCommitment { + amount: string; + id: string; + USD: string; + XFT: string; +} + +export interface OutputParamsBalance { + asset: BalanceAsset; + commitments: BalanceCommitment[]; + icon?: string; +} + +export interface ApproveParams { + amount: number; + senderPrivateKey: string; + spender: string; +} + +export interface DepositParams { + amount: number; + currency: string; + senderPrivateKey: string; +} + +export interface GroupParams { + amount: string; + commitmentsId: string; + senderPrivateKey: string; +} + +export interface RecipientTransferStartParams { + amount: string; + assetName: string; + recipientPrivateKey: string; +} + +export interface RecipientTransferStartSetOut { + amount: string; + publicKey: string; + commitment: string; + pairR: string; + R: string; + address: string; +} + +export interface TransferAggregationPubKeyOut { + aggrPubKeySet: string; + aggrR: string; + commitmentExcess: string; + pairRExcess: string; + pairRSender: string; +} + +export interface TransferAggrPubKeyOut { + aggrPubKeySet: string; + aggrR: string; + commitmentExcess: string; + pairRSender: string; + pairRExcess: string; +} + +export interface RecipientSignaturePart { + aggregatedPublicKey: string; + aggregatedR: string; + commitment: string; + L: string; + recipient: string; + valR: string; +} + +export interface ComplexTransferParams { + amount: string; + commitmentExcess: string; + commitmentId: string; + commonParametersSign: string; + recipient: string; + recipientCommitment: string; + recipientPubKey: string; + recipientSignPart: string; + senderPrivateKey: string; +} + +export interface WithdrawParams { + amount: string; + commitmentOldId: string; + senderPrivateKey: string; +} + +export interface GetTestTokensParams { + recipient: string; +} + +export interface InputParamsPrice { + aggregator: string; +} + +export interface InputParamsExchange { + aggrBase: string; + aggrQuote: string; + amount: string; +} + +export interface OutputParamsPrice { + price: string; + decimal: number; +} + +export interface InitData { + address: string; +} + +export interface ConfigData { + rawURL: string; + balanceContractAddress: string; + priceContractAddress: string; + tokenContractAddress: string; +} + +export interface InputParamsDerive { + aggrBase: string; + aggrQuote: string; +} + +export interface InputApproximateParams { + data: string; + amount: string; +} + +export interface ContractServiceMethods { + approve(payload: ApproveParams): Observable<TransactionHash>; + + complexPubkey(payload: TransferAggregationPubKeyOut): Observable<TransferAggrPubKeyOut>; + + complexTransfer(payload: ComplexTransferParams): Observable<TransactionHash>; + + deposit(payload: DepositParams): Observable<TransactionHash>; + + derivePrice(payload: InputParamsDerive): Observable<OutputParamsPrice>; + + getPrice(payload: InputParamsPrice): Observable<OutputParamsPrice>; + + gettokens(payload: GetTestTokensParams): Observable<TransactionHash>; + + group(payload: GroupParams): Observable<string>; + + init(payload: InitData): Observable<void>; + + recipientSignaturepart(payload: RecipientSignaturePart): Observable<string>; + + recipientStartset(payload: RecipientTransferStartParams): Observable<RecipientTransferStartSetOut>; + + selectCommitments(payload: InputApproximateParams): Observable<any>; + + withdraw(payload: WithdrawParams): Observable<TransactionHash>; +} diff --git a/src/app/core/interfaces/ethereum.ts b/src/app/core/interfaces/ethereum.ts new file mode 100644 index 0000000000000000000000000000000000000000..10e9aa10826e3c888600454e6a178bf4e53c3166 --- /dev/null +++ b/src/app/core/interfaces/ethereum.ts @@ -0,0 +1,58 @@ +import { EthEvents, EthMethods } from '../enums'; + +export interface EthChainParams { + chainId: string; // A 0x-prefixed hexadecimal string + chainName: string; + nativeCurrency: { + name: string; + symbol: string; // 2-6 characters long + decimals: number; // 18 + }; + rpcUrls: string[]; + blockExplorerUrls?: string[]; + iconUrls?: string[]; // Currently ignored. +} + +export interface ConnectInfo { + chainId: string; +} + +export interface ProviderMessage { + data: unknown; + type: string; +} + +export interface ProviderRpcError extends Error { + code: number; + data?: unknown; + message: string; +} + +export interface RequestArguments { + method: EthMethods | string; + params?: unknown[] | Record<string, unknown>; +} + +export interface Ethereum { + isMetaMask: boolean; + + selectedAddress: string; + + chainId: string; + + enable(): Promise<unknown>; + + isConnected(): boolean; + + on(eventName: EthEvents.AccountsChanged, handler: (accounts: string[]) => void): void; + + on(eventName: EthEvents.ChainChanged, handler: (chainId: string) => void): void; + + on(eventName: EthEvents.Connect, handler: (connectInfo: ConnectInfo) => void): void; + + on(eventName: EthEvents.Disconnect, handler: (error: ProviderRpcError) => void): void; + + on(eventName: EthEvents.Message, handler: (message: ProviderMessage) => void): void; + + request<T = any>(args: RequestArguments): Promise<T>; +} diff --git a/src/app/core/interfaces/price-contract.ts b/src/app/core/interfaces/price-contract.ts new file mode 100644 index 0000000000000000000000000000000000000000..a9c8b07d15602d84cba4f8d9060d235deea1f7e4 --- /dev/null +++ b/src/app/core/interfaces/price-contract.ts @@ -0,0 +1,10 @@ +import { Contract } from 'web3-eth-contract'; +import { CallReturn } from './callback'; + +export interface PriceContractMethods { + getLatestPrice(aggregator: number): CallReturn<any>; +} + +export interface PriceContract extends Contract { + methods: PriceContractMethods; +} diff --git a/src/app/core/interfaces/token-contract.ts b/src/app/core/interfaces/token-contract.ts new file mode 100644 index 0000000000000000000000000000000000000000..75b3f60a674d68a79ccf3c1f6fd924b4d429e3d9 --- /dev/null +++ b/src/app/core/interfaces/token-contract.ts @@ -0,0 +1,14 @@ +import { Contract } from 'web3-eth-contract'; +import { CallReturn, SendReturn } from './callback'; + +export interface TokenContractMethods { + allowance(owner: string, spender: string): CallReturn<any>; + + approve(accountAddress: string, amount: string): SendReturn<any>; + + balanceOf(accountAddress: string): CallReturn<string>; +} + +export interface TokenContract extends Contract { + methods: TokenContractMethods; +} diff --git a/src/app/core/pipes/index.ts b/src/app/core/pipes/index.ts new file mode 100644 index 0000000000000000000000000000000000000000..819f79c24247cdf2d3e90b857b5fbf45afa50f95 --- /dev/null +++ b/src/app/core/pipes/index.ts @@ -0,0 +1,2 @@ +export * from './pipes.module'; +export * from './short-address.pipe'; diff --git a/src/app/core/pipes/normalize-bn.pipe.ts b/src/app/core/pipes/normalize-bn.pipe.ts new file mode 100644 index 0000000000000000000000000000000000000000..40ea9bd211f527e04c368230db987af4a67fe598 --- /dev/null +++ b/src/app/core/pipes/normalize-bn.pipe.ts @@ -0,0 +1,12 @@ +import { Pipe, PipeTransform } from '@angular/core'; + +import { normalizeBN, BigNumberValue } from '../helpers'; + +@Pipe({ + name: 'normalizeBN' +}) +export class NormalizeBnPipe implements PipeTransform { + public transform(value: BigNumberValue = '0', decimals: number = 18): number { + return Number(normalizeBN(value, decimals).dp(5).toString(10)); + } +} diff --git a/src/app/core/pipes/pipes.module.ts b/src/app/core/pipes/pipes.module.ts new file mode 100644 index 0000000000000000000000000000000000000000..7c6d31a8a2e42527b7700add93fc1d1f5cb10dee --- /dev/null +++ b/src/app/core/pipes/pipes.module.ts @@ -0,0 +1,20 @@ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { NormalizeBnPipe } from './normalize-bn.pipe'; +import { ShortAddressPipe } from './short-address.pipe'; + +@NgModule({ + declarations: [ + ShortAddressPipe, + NormalizeBnPipe, + ], + exports: [ + ShortAddressPipe, + NormalizeBnPipe, + ], + imports: [ + CommonModule, + ] +}) +export class PipesModule { +} diff --git a/src/app/core/pipes/short-address.pipe.ts b/src/app/core/pipes/short-address.pipe.ts new file mode 100644 index 0000000000000000000000000000000000000000..2bb988142c0f0b1d1dae40acf712f39263da8ee5 --- /dev/null +++ b/src/app/core/pipes/short-address.pipe.ts @@ -0,0 +1,12 @@ +import { Pipe, PipeTransform } from '@angular/core'; + +import { shortAddress, isTxHash, shortTxHash } from '../helpers'; + +@Pipe({ + name: 'shortAddress' +}) +export class ShortAddressPipe implements PipeTransform { + public transform(address: string): string { + return isTxHash(address) ? shortTxHash(address) : shortAddress(address); + } +} diff --git a/src/app/core/reducer.ts b/src/app/core/reducer.ts new file mode 100644 index 0000000000000000000000000000000000000000..d9a8488903aff63e173f5ed1aa3fb6b7973aa0b1 --- /dev/null +++ b/src/app/core/reducer.ts @@ -0,0 +1,72 @@ +import { Action, createReducer, on } from '@ngrx/store'; + +import { + GetAllowanceSuccess, + GetBalancesSuccess, + GetLatestPriceSuccess, + GetXFTBalanceSuccess, + SetAccountAddress, + SetRouterParams, +} from './actions'; +import { RouterState } from './index'; +import { OutputParamsBalance } from './interfaces/contract-service-methods'; +import { TOKENS_MAP } from './helpers'; +import { TokensName } from './enums'; + +export const coreKey = 'context'; + +export interface CoreState extends RouterState { + accountAddress: string; + xftBalance: string; + allowance: string; + balances: OutputParamsBalance[]; + assetPrice: { + price: string; + decimals: number; + }; +} + +export const initialState: CoreState = { + accountAddress: undefined, + balances: undefined, + xftBalance: undefined, + allowance: undefined, + assetPrice: undefined, + params: undefined, + queryParams: undefined, + url: undefined, +}; + +const _coreReducer = createReducer( + initialState, + on(SetRouterParams, (state, { url, params, queryParams }): CoreState => { + return { ...state, url, params, queryParams }; + }), + on(SetAccountAddress, (state, { accountAddress }): CoreState => { + return { ...state, accountAddress }; + }), + on(GetXFTBalanceSuccess, (state, { xftBalance }): CoreState => { + TOKENS_MAP[TokensName.XFT].balance = xftBalance; + + return { ...state, xftBalance }; + }), + on(GetLatestPriceSuccess, (state, { assetPrice }): CoreState => { + return { ...state, assetPrice }; + }), + on(GetAllowanceSuccess, (state, { allowance }): CoreState => { + return { ...state, allowance }; + }), + on(GetBalancesSuccess, (state, { balances }): CoreState => { + balances?.forEach(({ asset }) => { + if (asset.symbol && TOKENS_MAP[asset.symbol]) { + TOKENS_MAP[asset.symbol].balance = asset.amount; + } + }); + + return { ...state, balances }; + }), +); + +export function reducer(state: CoreState, action: Action): CoreState { + return _coreReducer(state, action); +} diff --git a/src/app/core/router-params.serializer.ts b/src/app/core/router-params.serializer.ts new file mode 100644 index 0000000000000000000000000000000000000000..52cdfe7dce7a65b0a901f1ea05825676507bf2a2 --- /dev/null +++ b/src/app/core/router-params.serializer.ts @@ -0,0 +1,35 @@ +import { Params, RouterStateSnapshot } from '@angular/router'; + +import { RouterStateSerializer } from '@ngrx/router-store'; + +import { RouterParams, RouterState, initialRouterParamsState } from './index'; + +export class RouterParamsSerializer implements RouterStateSerializer<RouterState> { + public serialize({ url, root }: RouterStateSnapshot): RouterState { + let route = root; + let queryParams: Params = {}; + let params: RouterParams = initialRouterParamsState; + + while (route.firstChild) { + route = route.firstChild; + + params = { ...params, ...parseParams(route.params) }; + + queryParams = { ...queryParams, ...parseParams(route.queryParams) }; + } + + return { url, params, queryParams }; + } +} + +function parseParams(params: Params): Params { + const obj: Params = {}; + + for (const param in params) { + if (params.hasOwnProperty(param)) { + obj[param] = !params[param].startsWith('0x') && !isNaN(+params[param]) ? +params[param] : params[param]; + } + } + + return obj; +} diff --git a/src/app/core/selectors.ts b/src/app/core/selectors.ts new file mode 100644 index 0000000000000000000000000000000000000000..c440921254291e2356a621a360650dfd8dbd0123 --- /dev/null +++ b/src/app/core/selectors.ts @@ -0,0 +1,121 @@ +import { createFeatureSelector, createSelector } from '@ngrx/store'; + +import { coreKey, CoreState } from './reducer'; +import { normalizeBN, TOKENS_MAP, valueToBigNumber } from './helpers'; +import { Tokens, TokensName } from './enums'; + +export const selectContextState = createFeatureSelector<CoreState>(coreKey); + +export const selectContext = createSelector( + selectContextState, + (context) => context, +); + +export const selectAccountAddress = createSelector( + selectContext, + (state) => state.accountAddress, +); + +export const selectXFTBalance = createSelector( + selectContext, + (state) => state.xftBalance, +); + +export const selectAssetPrice = createSelector( + selectContext, + (state) => state.assetPrice, +); + +export const selectAllowance = createSelector( + selectContext, + (state) => state.allowance, +); + +export const selectBalances = createSelector( + selectContext, + (state) => { + return state?.balances?.map((balance) => { + return { + ...TOKENS_MAP[balance.asset.symbol], + ...balance, + }; + }); + }, +); + +export const selectAssets = createSelector( + selectBalances, + (balances) => { + return Object.values(TOKENS_MAP) + .filter(({ symbol }) => symbol !== TokensName.XFT) + .map((token) => { + const balance = balances?.find((b) => b.asset.symbol === token.symbol); + + return { + ...token, + asset: { + symbol: token.symbol, + amount: balance ? balance.asset.amount : '0', + USD: balance ? balance.asset.USD : '0', + XFT: balance ? balance.asset.XFT : '0', + }, + commitments: balance ? balance.commitments : [], + }; + }); + }, +); + +export const selectXFTBalancesAmount = createSelector( + selectBalances, + (balances) => { + const amount = balances?.map((balance) => balance.asset.XFT) + .reduce((prev, cur) => { + prev = prev.plus(cur); + + return prev; + }, valueToBigNumber(0)); + + return normalizeBN(amount, 18).dp(2).toString(10); + }, +); + +export const selectTokenBySymbol = (symbol: TokensName) => { + return createSelector( + selectBalances, + (balances) => balances?.find(({ asset }) => symbol === asset.symbol), + ); +}; + +export const selectChartData = createSelector( + selectBalances, + (balances) => { + const data = balances?.map((b) => { + return normalizeBN(b.asset.amount, 18) + .dp(5) + .toNumber(); + }); + + return { + labels: Object.values(Tokens).map((symbol) => ` ${ symbol }`), + datasets: [ + { + data, + label: '', + borderWidth: 0, + backgroundColor: [ + '#5800B0', + '#6B39FA', + '#A98CFF', + '#D1C1FE', + ], + hoverBackgroundColor: [ + '#5800B0', + '#6B39FA', + '#A98CFF', + '#D1C1FE', + ], + }, + ], + }; + }, +); diff --git a/src/app/core/services/base.service.ts b/src/app/core/services/base.service.ts new file mode 100644 index 0000000000000000000000000000000000000000..715cd83d7a22c247b9c1d661331fcc0544dab3eb --- /dev/null +++ b/src/app/core/services/base.service.ts @@ -0,0 +1,35 @@ +import { Store } from '@ngrx/store'; + +import { firstValueFrom } from 'rxjs'; +import { environment } from '../../../environments/environment'; +import { State } from '../index'; + +import { CallReturn, MethodCallback, SendReturn } from '../interfaces/callback'; +import { selectAccountAddress } from '../selectors'; + +export abstract class BaseService { + protected accountAddress!: string; + + protected constructor( + protected readonly store: Store, + ) { + } + + protected apiUrl(): string { + return environment.apiUrl; + } + + protected async call<T = any>(method: CallReturn<T>, cb: MethodCallback = null): Promise<T> { + const from = await firstValueFrom(this.store.select(selectAccountAddress)); + + return await method.call({ from }, cb); + } + + protected async send<T = any>(method: SendReturn<T>, cb: MethodCallback = null): Promise<T> { + const from = await firstValueFrom(this.store.select(selectAccountAddress)); + + const gas = await method.estimateGas({ from }); + + return await method.send({ from, gas }, cb); + } +} diff --git a/src/app/core/services/contract.service.ts b/src/app/core/services/contract.service.ts new file mode 100644 index 0000000000000000000000000000000000000000..d7d1889ed743e840d5eb993a47bb982a6b73af11 --- /dev/null +++ b/src/app/core/services/contract.service.ts @@ -0,0 +1,227 @@ +import { HttpClient } from '@angular/common/http'; +import { Injectable } from '@angular/core'; +import { isAddress } from '@ethersproject/address'; +import { Store } from '@ngrx/store'; +import { Observable } from 'rxjs'; +import { AbiItem } from 'web3-utils'; +import { environment } from '../../../environments/environment'; +import { BalanceContract, RecipientCommitment, SchnorrSignatureSet } from '../interfaces/balance-contract'; +import { MethodCallback } from '../interfaces/callback'; +import { + ConfigData, + InitData, InputParamsBalance, InputParamsExchange, + InputParamsPrice, OutputParamsBalance, +} from '../interfaces/contract-service-methods'; +import { PriceContract } from '../interfaces/price-contract'; +import { TokenContract } from '../interfaces/token-contract'; +import { BaseService } from './base.service'; +import { BALANCE_CONTRACT_ABI, PRICE_CONTRACT_ABI, TOKEN_CONTRACT_ABI } from './contracts-abi'; +import { WalletService } from './wallet.service'; +import { Contract } from 'web3-eth-contract'; +import { BigNumberValue, valueToBigNumber } from '../helpers'; +import { TokensName } from '../enums'; + +const CONTRACT_MAP: Map<string, Contract> = new Map<string, Contract>([]); + +@Injectable({ + providedIn: 'root' +}) +export class ContractService extends BaseService { + constructor( + store: Store, + private readonly _http: HttpClient, + private readonly _walletService: WalletService + ) { + super(store); + } + + public getPrice(payload: InputParamsPrice): Observable<any> { + return this._http.post<any>(this.apiUrl('getPrice'), payload); + } + + public exchange(payload: InputParamsExchange): Observable<any> { + return this._http.post<any>(this.apiUrl('exchange'), payload); + } + + public balances(payload: InputParamsBalance): Observable<OutputParamsBalance[]> { + return this._http.post<OutputParamsBalance[]>(this.apiUrl('balances'), payload); + } + + public init(payload: InitData): Observable<any> { + return this._http.post<any>(this.apiUrl('init'), payload); + } + + public config(payload: ConfigData): Observable<any> { + return this._http.post<any>(this.apiUrl('config'), payload); + } + + public async approve(amount: string, cb: MethodCallback = null): Promise<any> { + const { methods } = this._getXFTContract(); + + return this.send(methods.approve(environment.balanceContractAddress, amount), cb); + } + + public async allowance( + owner: string, + spender: string, + cb: MethodCallback = null, + ): Promise<any> { + const { methods } = this._getXFTContract(); + + return this.call(methods.allowance(owner, spender), cb); + } + + public async deposit( + address: string, + amount: BigNumberValue, + currency: TokensName, + cb: MethodCallback = null, + ): Promise<any> { + const { methods } = this._getBalanceContract(); + + const { + amountIn, + assetEnum: asset, + commitment, + message, + aggregatePubKey: publicKey, + aggregaterR: ecR, + aggregateS: s, + } = await this._http.post<any>(this.apiUrl('deposit'), { + address, + amount: valueToBigNumber(amount).toNumber(), + currency + }).toPromise(); + + const recipientCommitment: RecipientCommitment = { commitment, asset }; + const schnorrSignatureSet: SchnorrSignatureSet = { message, publicKey, ecR, s }; + + return this.send(methods.deposit(amountIn, amount, recipientCommitment, schnorrSignatureSet), cb); + } + + public async depositFill(payload: { address: string, hashTx: string }): Promise<any> { + return this._http.post<any>(this.apiUrl('deposit', 'fill'), payload).toPromise(); + } + + public async withdraw( + address: string, + amount: BigNumberValue, + commitmentId: BigNumberValue, + cb: MethodCallback = null, + ): Promise<any> { + const { + message, + aggregatePubKey: publicKey, + aggregaterR: ecR, + aggregateS: s, + } = await this._http.post<any>(this.apiUrl('withdraw'), { + address, + amount: valueToBigNumber(amount).toNumber(), + commitmentId: Number(commitmentId), + }).toPromise(); + + const schnorrSignatureSet: SchnorrSignatureSet = { message, publicKey, ecR, s }; + + const { methods } = this._getBalanceContract(); + + return this.send(methods.withdraw(amount, Number(commitmentId), schnorrSignatureSet), cb); + } + + public async withdrawFill(payload: { address: string, hashTx: string }): Promise<any> { + return this._http.post<any>(this.apiUrl('withdraw', 'fill'), payload).toPromise(); + } + + public async groupCommitment( + address: string, + commitmentsId: BigNumberValue[], + cb: MethodCallback = null, + ): Promise<any> { + const { + assetEnum, + commitment, + pkSum, + } = await this._http.post<any>(this.apiUrl('group'), { + address, + commitmentsId, + }).toPromise(); + + const { methods } = this._getBalanceContract(); + + return this.send(methods.groupCommitment(commitmentsId, assetEnum, commitment, pkSum), cb); + } + + public async groupCommitmentsSpent( + address: string, + hashTx: string, + commitmentsId: BigNumberValue[], + cb: MethodCallback = null, + ): Promise<any> { + return await this._http.post<any>(this.apiUrl('group', 'spent'), { + address, + hashTx, + commitmentsId, + }).toPromise(); + } + + public async groupCommitmentFill(payload: { address: string, hashTx: string }): Promise<any> { + return await this._http.post<any>(this.apiUrl('group', 'fill'), payload).toPromise(); + } + + public async xftBalance(address: string): Promise<string> { + const { methods } = this._getXFTContract(); + + return this.call(methods.balanceOf(address)); + } + + public async getLatestPrice(aggregator: number): Promise<{ price: string, decimals: number }> { + const { methods } = this._getPriceContract(); + + const latestPrice = await this.call(methods.getLatestPrice(aggregator)); + + const [price, decimals] = Object.values(latestPrice); + + return { price, decimals: Number(decimals) }; + } + + private _getXFTContract(): TokenContract { + return this._getContractInstance(TOKEN_CONTRACT_ABI, environment.tokenContractAddress); + } + + private _getPriceContract(): PriceContract { + return this._getContractInstance(PRICE_CONTRACT_ABI, environment.priceContractAddress); + } + + private _getBalanceContract(): BalanceContract { + return this._getContractInstance(BALANCE_CONTRACT_ABI, environment.balanceContractAddress); + } + + private _getContractInstance<T extends Contract>(abi: AbiItem[], address: string): T { + if (!isAddress(address)) { + throw new Error('Contract address is not valid'); + } + + if (CONTRACT_MAP.has(address)) { + return CONTRACT_MAP.get(address) as T; + } + + const contractInstance = new this._walletService.web3.eth.Contract(abi, address); + + CONTRACT_MAP.set(address, contractInstance); + + return contractInstance as T; + } + + protected override apiUrl(...path: string[]): string { + let url = `${ super.apiUrl() }`; + + if (path && Array.isArray(path)) { + url = path.reduce((cur, prev) => { + cur += `/${ prev }`; + + return cur; + }, url); + } + + return url; + } +} diff --git a/src/app/core/services/contracts-abi.ts b/src/app/core/services/contracts-abi.ts new file mode 100644 index 0000000000000000000000000000000000000000..7d03cd921d1e9775631269ce2404cb5a0b508238 --- /dev/null +++ b/src/app/core/services/contracts-abi.ts @@ -0,0 +1,2125 @@ +import { AbiItem } from 'web3-utils'; + +export const TOKEN_CONTRACT_ABI: AbiItem[] = [ + { + 'constant': true, + 'inputs': [], + 'name': 'CONTINUE_MINTING', + 'outputs': [ + { + 'name': '', + 'type': 'bool' + } + ], + 'payable': false, + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'constant': true, + 'inputs': [ + { + 'name': '_addr', + 'type': 'address' + }, + { + 'name': '_index', + 'type': 'uint256' + } + ], + 'name': 'getFreezing', + 'outputs': [ + { + 'name': '_release', + 'type': 'uint64' + }, + { + 'name': '_balance', + 'type': 'uint256' + } + ], + 'payable': false, + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'constant': true, + 'inputs': [], + 'name': 'mintingFinished', + 'outputs': [ + { + 'name': '', + 'type': 'bool' + } + ], + 'payable': false, + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'constant': false, + 'inputs': [ + { + 'name': '_spender', + 'type': 'address' + }, + { + 'name': '_value', + 'type': 'uint256' + } + ], + 'name': 'approve', + 'outputs': [ + { + 'name': '', + 'type': 'bool' + } + ], + 'payable': false, + 'stateMutability': 'nonpayable', + 'type': 'function' + }, + { + 'constant': false, + 'inputs': [ + { + 'name': '_to', + 'type': 'address' + }, + { + 'name': '_amount', + 'type': 'uint256' + }, + { + 'name': '_until', + 'type': 'uint64' + } + ], + 'name': 'mintAndFreeze', + 'outputs': [ + { + 'name': '', + 'type': 'bool' + } + ], + 'payable': false, + 'stateMutability': 'nonpayable', + 'type': 'function' + }, + { + 'constant': true, + 'inputs': [], + 'name': 'initialized', + 'outputs': [ + { + 'name': '', + 'type': 'bool' + } + ], + 'payable': false, + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'constant': true, + 'inputs': [ + { + 'name': '_owner', + 'type': 'address' + } + ], + 'name': 'actualBalanceOf', + 'outputs': [ + { + 'name': 'balance', + 'type': 'uint256' + } + ], + 'payable': false, + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'constant': true, + 'inputs': [], + 'name': 'totalSupply', + 'outputs': [ + { + 'name': '', + 'type': 'uint256' + } + ], + 'payable': false, + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'constant': true, + 'inputs': [], + 'name': 'TOKEN_NAME', + 'outputs': [ + { + 'name': '', + 'type': 'string' + } + ], + 'payable': false, + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'constant': true, + 'inputs': [], + 'name': 'TOKEN_SYMBOL', + 'outputs': [ + { + 'name': '', + 'type': 'string' + } + ], + 'payable': false, + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'constant': false, + 'inputs': [ + { + 'name': '_to', + 'type': 'address' + }, + { + 'name': '_amount', + 'type': 'uint256' + }, + { + 'name': '_until', + 'type': 'uint64' + } + ], + 'name': 'freezeTo', + 'outputs': [], + 'payable': false, + 'stateMutability': 'nonpayable', + 'type': 'function' + }, + { + 'constant': false, + 'inputs': [], + 'name': 'unpause', + 'outputs': [], + 'payable': false, + 'stateMutability': 'nonpayable', + 'type': 'function' + }, + { + 'constant': false, + 'inputs': [ + { + 'name': '_to', + 'type': 'address' + }, + { + 'name': '_amount', + 'type': 'uint256' + } + ], + 'name': 'mint', + 'outputs': [ + { + 'name': '', + 'type': 'bool' + } + ], + 'payable': false, + 'stateMutability': 'nonpayable', + 'type': 'function' + }, + { + 'constant': false, + 'inputs': [ + { + 'name': '_value', + 'type': 'uint256' + } + ], + 'name': 'burn', + 'outputs': [], + 'payable': false, + 'stateMutability': 'nonpayable', + 'type': 'function' + }, + { + 'constant': true, + 'inputs': [], + 'name': 'TOKEN_DECIMAL_MULTIPLIER', + 'outputs': [ + { + 'name': '', + 'type': 'uint256' + } + ], + 'payable': false, + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'constant': true, + 'inputs': [], + 'name': 'TOKEN_DECIMALS', + 'outputs': [ + { + 'name': '', + 'type': 'uint256' + } + ], + 'payable': false, + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'constant': false, + 'inputs': [], + 'name': 'releaseAll', + 'outputs': [ + { + 'name': 'tokens', + 'type': 'uint256' + } + ], + 'payable': false, + 'stateMutability': 'nonpayable', + 'type': 'function' + }, + { + 'constant': true, + 'inputs': [], + 'name': 'paused', + 'outputs': [ + { + 'name': '', + 'type': 'bool' + } + ], + 'payable': false, + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'constant': false, + 'inputs': [ + { + 'name': '_spender', + 'type': 'address' + }, + { + 'name': '_subtractedValue', + 'type': 'uint256' + } + ], + 'name': 'decreaseApproval', + 'outputs': [ + { + 'name': '', + 'type': 'bool' + } + ], + 'payable': false, + 'stateMutability': 'nonpayable', + 'type': 'function' + }, + { + 'constant': false, + 'inputs': [], + 'name': 'releaseOnce', + 'outputs': [], + 'payable': false, + 'stateMutability': 'nonpayable', + 'type': 'function' + }, + { + 'constant': true, + 'inputs': [ + { + 'name': '_owner', + 'type': 'address' + } + ], + 'name': 'balanceOf', + 'outputs': [ + { + 'name': 'balance', + 'type': 'uint256' + } + ], + 'payable': false, + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'constant': false, + 'inputs': [], + 'name': 'renounceOwnership', + 'outputs': [], + 'payable': false, + 'stateMutability': 'nonpayable', + 'type': 'function' + }, + { + 'constant': true, + 'inputs': [], + 'name': 'TARGET_USER', + 'outputs': [ + { + 'name': '', + 'type': 'address' + } + ], + 'payable': false, + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'constant': false, + 'inputs': [], + 'name': 'finishMinting', + 'outputs': [ + { + 'name': '', + 'type': 'bool' + } + ], + 'payable': false, + 'stateMutability': 'nonpayable', + 'type': 'function' + }, + { + 'constant': false, + 'inputs': [], + 'name': 'pause', + 'outputs': [], + 'payable': false, + 'stateMutability': 'nonpayable', + 'type': 'function' + }, + { + 'constant': true, + 'inputs': [], + 'name': 'owner', + 'outputs': [ + { + 'name': '', + 'type': 'address' + } + ], + 'payable': false, + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'constant': true, + 'inputs': [], + 'name': 'PAUSED', + 'outputs': [ + { + 'name': '', + 'type': 'bool' + } + ], + 'payable': false, + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'constant': true, + 'inputs': [ + { + 'name': '_addr', + 'type': 'address' + } + ], + 'name': 'freezingCount', + 'outputs': [ + { + 'name': 'count', + 'type': 'uint256' + } + ], + 'payable': false, + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'constant': true, + 'inputs': [], + 'name': 'TOKEN_DECIMALS_UINT8', + 'outputs': [ + { + 'name': '', + 'type': 'uint8' + } + ], + 'payable': false, + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'constant': false, + 'inputs': [ + { + 'name': '_spender', + 'type': 'address' + }, + { + 'name': '_addedValue', + 'type': 'uint256' + } + ], + 'name': 'increaseApproval', + 'outputs': [ + { + 'name': '', + 'type': 'bool' + } + ], + 'payable': false, + 'stateMutability': 'nonpayable', + 'type': 'function' + }, + { + 'constant': true, + 'inputs': [ + { + 'name': '_owner', + 'type': 'address' + } + ], + 'name': 'freezingBalanceOf', + 'outputs': [ + { + 'name': 'balance', + 'type': 'uint256' + } + ], + 'payable': false, + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'constant': true, + 'inputs': [ + { + 'name': '_owner', + 'type': 'address' + }, + { + 'name': '_spender', + 'type': 'address' + } + ], + 'name': 'allowance', + 'outputs': [ + { + 'name': '', + 'type': 'uint256' + } + ], + 'payable': false, + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'constant': false, + 'inputs': [ + { + 'name': '_newOwner', + 'type': 'address' + } + ], + 'name': 'transferOwnership', + 'outputs': [], + 'payable': false, + 'stateMutability': 'nonpayable', + 'type': 'function' + }, + { + 'inputs': [], + 'payable': false, + 'stateMutability': 'nonpayable', + 'type': 'constructor' + }, + { + 'anonymous': false, + 'inputs': [], + 'name': 'Initialized', + 'type': 'event' + }, + { + 'anonymous': false, + 'inputs': [], + 'name': 'Pause', + 'type': 'event' + }, + { + 'anonymous': false, + 'inputs': [], + 'name': 'Unpause', + 'type': 'event' + }, + { + 'anonymous': false, + 'inputs': [ + { + 'indexed': true, + 'name': 'burner', + 'type': 'address' + }, + { + 'indexed': false, + 'name': 'value', + 'type': 'uint256' + } + ], + 'name': 'Burn', + 'type': 'event' + }, + { + 'anonymous': false, + 'inputs': [ + { + 'indexed': true, + 'name': 'to', + 'type': 'address' + }, + { + 'indexed': false, + 'name': 'amount', + 'type': 'uint256' + } + ], + 'name': 'Mint', + 'type': 'event' + }, + { + 'anonymous': false, + 'inputs': [], + 'name': 'MintFinished', + 'type': 'event' + }, + { + 'anonymous': false, + 'inputs': [ + { + 'indexed': true, + 'name': 'previousOwner', + 'type': 'address' + } + ], + 'name': 'OwnershipRenounced', + 'type': 'event' + }, + { + 'anonymous': false, + 'inputs': [ + { + 'indexed': true, + 'name': 'previousOwner', + 'type': 'address' + }, + { + 'indexed': true, + 'name': 'newOwner', + 'type': 'address' + } + ], + 'name': 'OwnershipTransferred', + 'type': 'event' + }, + { + 'anonymous': false, + 'inputs': [ + { + 'indexed': true, + 'name': 'to', + 'type': 'address' + }, + { + 'indexed': false, + 'name': 'release', + 'type': 'uint64' + }, + { + 'indexed': false, + 'name': 'amount', + 'type': 'uint256' + } + ], + 'name': 'Freezed', + 'type': 'event' + }, + { + 'anonymous': false, + 'inputs': [ + { + 'indexed': true, + 'name': 'owner', + 'type': 'address' + }, + { + 'indexed': false, + 'name': 'amount', + 'type': 'uint256' + } + ], + 'name': 'Released', + 'type': 'event' + }, + { + 'anonymous': false, + 'inputs': [ + { + 'indexed': true, + 'name': 'owner', + 'type': 'address' + }, + { + 'indexed': true, + 'name': 'spender', + 'type': 'address' + }, + { + 'indexed': false, + 'name': 'value', + 'type': 'uint256' + } + ], + 'name': 'Approval', + 'type': 'event' + }, + { + 'anonymous': false, + 'inputs': [ + { + 'indexed': true, + 'name': 'from', + 'type': 'address' + }, + { + 'indexed': true, + 'name': 'to', + 'type': 'address' + }, + { + 'indexed': false, + 'name': 'value', + 'type': 'uint256' + } + ], + 'name': 'Transfer', + 'type': 'event' + }, + { + 'constant': true, + 'inputs': [], + 'name': 'name', + 'outputs': [ + { + 'name': '_name', + 'type': 'string' + } + ], + 'payable': false, + 'stateMutability': 'pure', + 'type': 'function' + }, + { + 'constant': true, + 'inputs': [], + 'name': 'symbol', + 'outputs': [ + { + 'name': '_symbol', + 'type': 'string' + } + ], + 'payable': false, + 'stateMutability': 'pure', + 'type': 'function' + }, + { + 'constant': true, + 'inputs': [], + 'name': 'decimals', + 'outputs': [ + { + 'name': '_decimals', + 'type': 'uint8' + } + ], + 'payable': false, + 'stateMutability': 'pure', + 'type': 'function' + }, + { + 'constant': false, + 'inputs': [ + { + 'name': '_from', + 'type': 'address' + }, + { + 'name': '_to', + 'type': 'address' + }, + { + 'name': '_value', + 'type': 'uint256' + } + ], + 'name': 'transferFrom', + 'outputs': [ + { + 'name': '_success', + 'type': 'bool' + } + ], + 'payable': false, + 'stateMutability': 'nonpayable', + 'type': 'function' + }, + { + 'constant': false, + 'inputs': [ + { + 'name': '_to', + 'type': 'address' + }, + { + 'name': '_value', + 'type': 'uint256' + } + ], + 'name': 'transfer', + 'outputs': [ + { + 'name': '_success', + 'type': 'bool' + } + ], + 'payable': false, + 'stateMutability': 'nonpayable', + 'type': 'function' + } +]; + +export const PRICE_CONTRACT_ABI: AbiItem[] = [ + { + 'inputs': [], + 'stateMutability': 'nonpayable', + 'type': 'constructor' + }, + { + 'inputs': [ + { + 'internalType': 'uint8', + 'name': 'exchAggr', + 'type': 'uint8' + }, + { + 'internalType': 'uint8', + 'name': 'quoteAggr', + 'type': 'uint8' + }, + { + 'internalType': 'uint256', + 'name': 'exchAmount', + 'type': 'uint256' + } + ], + 'name': 'exchangeAssets', + 'outputs': [ + { + 'internalType': 'uint256', + 'name': '', + 'type': 'uint256' + }, + { + 'internalType': 'uint8', + 'name': '', + 'type': 'uint8' + } + ], + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'inputs': [ + { + 'internalType': 'uint8', + 'name': 'baseAggr', + 'type': 'uint8' + }, + { + 'internalType': 'uint8', + 'name': 'quoteAggr', + 'type': 'uint8' + } + ], + 'name': 'getDerivedPrice', + 'outputs': [ + { + 'internalType': 'uint256', + 'name': '', + 'type': 'uint256' + }, + { + 'internalType': 'uint8', + 'name': '', + 'type': 'uint8' + } + ], + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'inputs': [ + { + 'internalType': 'uint8', + 'name': 'aggregator', + 'type': 'uint8' + } + ], + 'name': 'getLatestPrice', + 'outputs': [ + { + 'internalType': 'int256', + 'name': '', + 'type': 'int256' + }, + { + 'internalType': 'uint8', + 'name': '', + 'type': 'uint8' + } + ], + 'stateMutability': 'view', + 'type': 'function' + } +]; + +export const BALANCE_CONTRACT_ABI: AbiItem[] = [ + { + 'inputs': [ + { + 'internalType': 'address', + 'name': '_xftTokenAddress', + 'type': 'address' + }, + { + 'internalType': 'address', + 'name': '_priceConsumer', + 'type': 'address' + } + ], + 'stateMutability': 'nonpayable', + 'type': 'constructor' + }, + { + 'anonymous': false, + 'inputs': [ + { + 'indexed': true, + 'internalType': 'address', + 'name': 'sender', + 'type': 'address' + }, + { + 'indexed': true, + 'internalType': 'address', + 'name': 'recipient', + 'type': 'address' + }, + { + 'indexed': false, + 'internalType': 'uint256', + 'name': 'senderCommitmentId', + 'type': 'uint256' + }, + { + 'indexed': false, + 'internalType': 'uint256', + 'name': 'recipientCommitmentId', + 'type': 'uint256' + }, + { + 'components': [ + { + 'internalType': 'uint256', + 'name': 'x', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': 'y', + 'type': 'uint256' + } + ], + 'indexed': false, + 'internalType': 'structRangeProofMath.PointEC', + 'name': 'senderCommitment', + 'type': 'tuple' + }, + { + 'components': [ + { + 'internalType': 'uint256', + 'name': 'x', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': 'y', + 'type': 'uint256' + } + ], + 'indexed': false, + 'internalType': 'structRangeProofMath.PointEC', + 'name': 'recipientCommitment', + 'type': 'tuple' + } + ], + 'name': 'CommitmentTransferred', + 'type': 'event' + }, + { + 'anonymous': false, + 'inputs': [ + { + 'indexed': true, + 'internalType': 'address', + 'name': 'to', + 'type': 'address' + }, + { + 'indexed': false, + 'internalType': 'uint256', + 'name': 'amount', + 'type': 'uint256' + }, + { + 'indexed': true, + 'internalType': 'uint256', + 'name': 'commitmentId', + 'type': 'uint256' + }, + { + 'components': [ + { + 'internalType': 'uint256', + 'name': 'x', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': 'y', + 'type': 'uint256' + } + ], + 'indexed': false, + 'internalType': 'structRangeProofMath.PointEC', + 'name': 'commitment', + 'type': 'tuple' + } + ], + 'name': 'Deposited', + 'type': 'event' + }, + { + 'anonymous': false, + 'inputs': [ + { + 'indexed': true, + 'internalType': 'address', + 'name': 'to', + 'type': 'address' + }, + { + 'indexed': true, + 'internalType': 'uint256', + 'name': 'commitmentId', + 'type': 'uint256' + }, + { + 'components': [ + { + 'internalType': 'uint256', + 'name': 'x', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': 'y', + 'type': 'uint256' + } + ], + 'indexed': false, + 'internalType': 'structRangeProofMath.PointEC', + 'name': 'commitment', + 'type': 'tuple' + } + ], + 'name': 'Excessed', + 'type': 'event' + }, + { + 'anonymous': false, + 'inputs': [ + { + 'indexed': true, + 'internalType': 'address', + 'name': 'to', + 'type': 'address' + }, + { + 'indexed': true, + 'internalType': 'uint256', + 'name': 'id', + 'type': 'uint256' + }, + { + 'components': [ + { + 'internalType': 'uint256', + 'name': 'x', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': 'y', + 'type': 'uint256' + } + ], + 'indexed': false, + 'internalType': 'structRangeProofMath.PointEC', + 'name': 'commitment', + 'type': 'tuple' + } + ], + 'name': 'Grouped', + 'type': 'event' + }, + { + 'anonymous': false, + 'inputs': [ + { + 'indexed': true, + 'internalType': 'address', + 'name': 'to', + 'type': 'address' + }, + { + 'indexed': false, + 'internalType': 'uint256', + 'name': 'amount', + 'type': 'uint256' + }, + { + 'indexed': true, + 'internalType': 'uint256', + 'name': 'commitmentIdOld', + 'type': 'uint256' + }, + { + 'components': [ + { + 'internalType': 'uint256', + 'name': 'x', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': 'y', + 'type': 'uint256' + } + ], + 'indexed': false, + 'internalType': 'structRangeProofMath.PointEC', + 'name': 'commitmentOld', + 'type': 'tuple' + } + ], + 'name': 'Withdrawn', + 'type': 'event' + }, + { + 'inputs': [ + { + 'internalType': 'string', + 'name': 'message', + 'type': 'string' + }, + { + 'components': [ + { + 'internalType': 'uint256', + 'name': 'x', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': 'y', + 'type': 'uint256' + } + ], + 'internalType': 'structRangeProofMath.PointEC', + 'name': 'publicKey', + 'type': 'tuple' + }, + { + 'components': [ + { + 'internalType': 'uint256', + 'name': 'x', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': 'y', + 'type': 'uint256' + } + ], + 'internalType': 'structRangeProofMath.PointEC', + 'name': 'ecR', + 'type': 'tuple' + }, + { + 'internalType': 'uint256', + 'name': 's', + 'type': 'uint256' + } + ], + 'name': 'SchnorrSignatureVerify', + 'outputs': [ + { + 'internalType': 'bool', + 'name': '', + 'type': 'bool' + } + ], + 'stateMutability': 'pure', + 'type': 'function' + }, + { + 'inputs': [ + { + 'internalType': 'address', + 'name': '', + 'type': 'address' + }, + { + 'internalType': 'uint256', + 'name': '', + 'type': 'uint256' + } + ], + 'name': '_commitmentById', + 'outputs': [ + { + 'components': [ + { + 'internalType': 'uint256', + 'name': 'x', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': 'y', + 'type': 'uint256' + } + ], + 'internalType': 'structRangeProofMath.PointEC', + 'name': 'commitment', + 'type': 'tuple' + }, + { + 'internalType': 'enumCommitmentCircuit.Assets', + 'name': 'asset', + 'type': 'uint8' + } + ], + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'inputs': [ + { + 'internalType': 'address', + 'name': '', + 'type': 'address' + }, + { + 'internalType': 'uint256', + 'name': '', + 'type': 'uint256' + } + ], + 'name': '_idsByAddress', + 'outputs': [ + { + 'internalType': 'uint256', + 'name': '', + 'type': 'uint256' + } + ], + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'inputs': [ + { + 'internalType': 'address', + 'name': '', + 'type': 'address' + }, + { + 'internalType': 'uint256', + 'name': '', + 'type': 'uint256' + } + ], + 'name': '_spents', + 'outputs': [ + { + 'internalType': 'bool', + 'name': '', + 'type': 'bool' + } + ], + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'inputs': [], + 'name': 'aa', + 'outputs': [ + { + 'internalType': 'uint256', + 'name': '', + 'type': 'uint256' + } + ], + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'inputs': [], + 'name': 'bb', + 'outputs': [ + { + 'internalType': 'uint256', + 'name': '', + 'type': 'uint256' + } + ], + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'inputs': [ + { + 'internalType': 'address', + 'name': 'recipient', + 'type': 'address' + }, + { + 'internalType': 'uint256', + 'name': 'senderCommitmentId', + 'type': 'uint256' + }, + { + 'components': [ + { + 'components': [ + { + 'internalType': 'uint256', + 'name': 'x', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': 'y', + 'type': 'uint256' + } + ], + 'internalType': 'structRangeProofMath.PointEC', + 'name': 'commitment', + 'type': 'tuple' + }, + { + 'internalType': 'enumCommitmentCircuit.Assets', + 'name': 'asset', + 'type': 'uint8' + } + ], + 'internalType': 'structCommitmentCircuit.CommitmentDetails', + 'name': 'recipientCommitment', + 'type': 'tuple' + }, + { + 'components': [ + { + 'internalType': 'uint256', + 'name': 'x', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': 'y', + 'type': 'uint256' + } + ], + 'internalType': 'structRangeProofMath.PointEC', + 'name': 'excessCommitment', + 'type': 'tuple' + }, + { + 'components': [ + { + 'internalType': 'uint256', + 'name': 'x', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': 'y', + 'type': 'uint256' + } + ], + 'internalType': 'structRangeProofMath.PointEC', + 'name': 'senderPubKey', + 'type': 'tuple' + }, + { + 'components': [ + { + 'internalType': 'uint256', + 'name': 'x', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': 'y', + 'type': 'uint256' + } + ], + 'internalType': 'structRangeProofMath.PointEC', + 'name': 'recipientPubKey', + 'type': 'tuple' + }, + { + 'components': [ + { + 'internalType': 'uint256', + 'name': 'x', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': 'y', + 'type': 'uint256' + } + ], + 'internalType': 'structRangeProofMath.PointEC', + 'name': 'excessPubKey', + 'type': 'tuple' + }, + { + 'components': [ + { + 'internalType': 'string', + 'name': 'message', + 'type': 'string' + }, + { + 'components': [ + { + 'internalType': 'uint256', + 'name': 'x', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': 'y', + 'type': 'uint256' + } + ], + 'internalType': 'structRangeProofMath.PointEC', + 'name': 'publicKey', + 'type': 'tuple' + }, + { + 'components': [ + { + 'internalType': 'uint256', + 'name': 'x', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': 'y', + 'type': 'uint256' + } + ], + 'internalType': 'structRangeProofMath.PointEC', + 'name': 'ecR', + 'type': 'tuple' + }, + { + 'internalType': 'uint256', + 'name': 's', + 'type': 'uint256' + } + ], + 'internalType': 'structSchnorrSignature.SlotSchnorrSignature', + 'name': 'schnorrSignatureSet', + 'type': 'tuple' + } + ], + 'name': 'complexTransferCommitment', + 'outputs': [], + 'stateMutability': 'nonpayable', + 'type': 'function' + }, + { + 'inputs': [ + { + 'internalType': 'uint256', + 'name': 'amountIn', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': 'amountComm', + 'type': 'uint256' + }, + { + 'components': [ + { + 'components': [ + { + 'internalType': 'uint256', + 'name': 'x', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': 'y', + 'type': 'uint256' + } + ], + 'internalType': 'structRangeProofMath.PointEC', + 'name': 'commitment', + 'type': 'tuple' + }, + { + 'internalType': 'enumCommitmentCircuit.Assets', + 'name': 'asset', + 'type': 'uint8' + } + ], + 'internalType': 'structCommitmentCircuit.CommitmentDetails', + 'name': 'recipientCommitment', + 'type': 'tuple' + }, + { + 'components': [ + { + 'internalType': 'string', + 'name': 'message', + 'type': 'string' + }, + { + 'components': [ + { + 'internalType': 'uint256', + 'name': 'x', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': 'y', + 'type': 'uint256' + } + ], + 'internalType': 'structRangeProofMath.PointEC', + 'name': 'publicKey', + 'type': 'tuple' + }, + { + 'components': [ + { + 'internalType': 'uint256', + 'name': 'x', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': 'y', + 'type': 'uint256' + } + ], + 'internalType': 'structRangeProofMath.PointEC', + 'name': 'ecR', + 'type': 'tuple' + }, + { + 'internalType': 'uint256', + 'name': 's', + 'type': 'uint256' + } + ], + 'internalType': 'structSchnorrSignature.SlotSchnorrSignature', + 'name': 'schnorrSignatureSet', + 'type': 'tuple' + } + ], + 'name': 'deposit', + 'outputs': [], + 'stateMutability': 'nonpayable', + 'type': 'function' + }, + { + 'inputs': [ + { + 'internalType': 'uint256', + 'name': '_x1', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_y1', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_x2', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_y2', + 'type': 'uint256' + } + ], + 'name': 'eAdd', + 'outputs': [ + { + 'internalType': 'uint256', + 'name': '_x3', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_y3', + 'type': 'uint256' + } + ], + 'stateMutability': 'pure', + 'type': 'function' + }, + { + 'inputs': [ + { + 'internalType': 'uint8', + 'name': '_prefix', + 'type': 'uint8' + }, + { + 'internalType': 'uint256', + 'name': '_x', + 'type': 'uint256' + } + ], + 'name': 'eDeriveY', + 'outputs': [ + { + 'internalType': 'uint256', + 'name': '_y', + 'type': 'uint256' + } + ], + 'stateMutability': 'pure', + 'type': 'function' + }, + { + 'inputs': [ + { + 'internalType': 'uint256', + 'name': '_x1', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_y1', + 'type': 'uint256' + } + ], + 'name': 'eInv', + 'outputs': [ + { + 'internalType': 'uint256', + 'name': '_x2', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_y2', + 'type': 'uint256' + } + ], + 'stateMutability': 'pure', + 'type': 'function' + }, + { + 'inputs': [ + { + 'internalType': 'uint256', + 'name': '_x', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_y', + 'type': 'uint256' + } + ], + 'name': 'eIsOnCurve', + 'outputs': [ + { + 'internalType': 'bool', + 'name': '_is', + 'type': 'bool' + } + ], + 'stateMutability': 'pure', + 'type': 'function' + }, + { + 'inputs': [ + { + 'internalType': 'uint256', + 'name': '_z', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_x1', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_y1', + 'type': 'uint256' + } + ], + 'name': 'eMul', + 'outputs': [ + { + 'internalType': 'uint256', + 'name': '_x2', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_y2', + 'type': 'uint256' + } + ], + 'stateMutability': 'pure', + 'type': 'function' + }, + { + 'inputs': [ + { + 'internalType': 'uint256', + 'name': '_x', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_r', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_gx', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_gy', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_hx', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_hy', + 'type': 'uint256' + } + ], + 'name': 'ePedersenCommitment', + 'outputs': [ + { + 'internalType': 'uint256', + 'name': '_x3', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_y3', + 'type': 'uint256' + } + ], + 'stateMutability': 'pure', + 'type': 'function' + }, + { + 'inputs': [ + { + 'internalType': 'uint256', + 'name': '_r', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_pkx', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_pky', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_hx', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_hy', + 'type': 'uint256' + } + ], + 'name': 'ePedersenCommitmentPK', + 'outputs': [ + { + 'internalType': 'uint256', + 'name': '_x3', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_y3', + 'type': 'uint256' + } + ], + 'stateMutability': 'pure', + 'type': 'function' + }, + { + 'inputs': [ + { + 'internalType': 'uint256', + 'name': '_x1', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_y1', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_x2', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_y2', + 'type': 'uint256' + } + ], + 'name': 'eSub', + 'outputs': [ + { + 'internalType': 'uint256', + 'name': '_x3', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_y3', + 'type': 'uint256' + } + ], + 'stateMutability': 'pure', + 'type': 'function' + }, + { + 'inputs': [ + { + 'internalType': 'uint256', + 'name': '_base', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_exp', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_pp', + 'type': 'uint256' + } + ], + 'name': 'expMod', + 'outputs': [ + { + 'internalType': 'uint256', + 'name': '_r', + 'type': 'uint256' + } + ], + 'stateMutability': 'pure', + 'type': 'function' + }, + { + 'inputs': [ + { + 'internalType': 'uint256[]', + 'name': '_commIds', + 'type': 'uint256[]' + }, + { + 'internalType': 'enumCommitmentCircuit.Assets', + 'name': '_asset', + 'type': 'uint8' + }, + { + 'components': [ + { + 'internalType': 'uint256', + 'name': 'x', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': 'y', + 'type': 'uint256' + } + ], + 'internalType': 'structRangeProofMath.PointEC', + 'name': '_ecNewCommitment', + 'type': 'tuple' + }, + { + 'components': [ + { + 'internalType': 'uint256', + 'name': 'x', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': 'y', + 'type': 'uint256' + } + ], + 'internalType': 'structRangeProofMath.PointEC', + 'name': '_pkSum', + 'type': 'tuple' + } + ], + 'name': 'groupCommitment', + 'outputs': [], + 'stateMutability': 'nonpayable', + 'type': 'function' + }, + { + 'inputs': [], + 'name': 'gx', + 'outputs': [ + { + 'internalType': 'uint256', + 'name': '', + 'type': 'uint256' + } + ], + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'inputs': [], + 'name': 'gy', + 'outputs': [ + { + 'internalType': 'uint256', + 'name': '', + 'type': 'uint256' + } + ], + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'inputs': [ + { + 'internalType': 'uint256', + 'name': '_x', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': '_pp', + 'type': 'uint256' + } + ], + 'name': 'invMod', + 'outputs': [ + { + 'internalType': 'uint256', + 'name': '_g', + 'type': 'uint256' + } + ], + 'stateMutability': 'pure', + 'type': 'function' + }, + { + 'inputs': [], + 'name': 'nn', + 'outputs': [ + { + 'internalType': 'uint256', + 'name': '', + 'type': 'uint256' + } + ], + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'inputs': [], + 'name': 'pp', + 'outputs': [ + { + 'internalType': 'uint256', + 'name': '', + 'type': 'uint256' + } + ], + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'inputs': [], + 'name': 'priceConsumer', + 'outputs': [ + { + 'internalType': 'contractIPriceConsumer', + 'name': '', + 'type': 'address' + } + ], + 'stateMutability': 'view', + 'type': 'function' + }, + { + 'inputs': [ + { + 'internalType': 'uint256', + 'name': 'amount', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': 'recipientCommitmentOldId', + 'type': 'uint256' + }, + { + 'components': [ + { + 'internalType': 'string', + 'name': 'message', + 'type': 'string' + }, + { + 'components': [ + { + 'internalType': 'uint256', + 'name': 'x', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': 'y', + 'type': 'uint256' + } + ], + 'internalType': 'structRangeProofMath.PointEC', + 'name': 'publicKey', + 'type': 'tuple' + }, + { + 'components': [ + { + 'internalType': 'uint256', + 'name': 'x', + 'type': 'uint256' + }, + { + 'internalType': 'uint256', + 'name': 'y', + 'type': 'uint256' + } + ], + 'internalType': 'structRangeProofMath.PointEC', + 'name': 'ecR', + 'type': 'tuple' + }, + { + 'internalType': 'uint256', + 'name': 's', + 'type': 'uint256' + } + ], + 'internalType': 'structSchnorrSignature.SlotSchnorrSignature', + 'name': 'schnorrSignatureSet', + 'type': 'tuple' + } + ], + 'name': 'withdraw', + 'outputs': [], + 'stateMutability': 'nonpayable', + 'type': 'function' + }, + { + 'inputs': [], + 'name': 'xftTokenAddress', + 'outputs': [ + { + 'internalType': 'contractIERC20MintableBurnable', + 'name': '', + 'type': 'address' + } + ], + 'stateMutability': 'view', + 'type': 'function' + } +]; diff --git a/src/app/core/services/wallet.service.ts b/src/app/core/services/wallet.service.ts new file mode 100644 index 0000000000000000000000000000000000000000..2e2a0fcb44759f91fdc01c25aa1d210d97b6a596 --- /dev/null +++ b/src/app/core/services/wallet.service.ts @@ -0,0 +1,137 @@ +import { Injectable } from '@angular/core'; +import { Store } from '@ngrx/store'; +import WalletConnect from '@walletconnect/web3-provider'; +import { BehaviorSubject, Subject } from 'rxjs'; +import Web3 from 'web3'; +import Web3Modal from 'web3modal'; +import { SetAccountAddress } from '../actions'; +import { EthEvents, EthMethods } from '../enums'; +import { + ConnectInfo, + EthChainParams, + Ethereum, + ProviderMessage, + ProviderRpcError, +} from '../interfaces/ethereum'; +import { BaseService } from './base.service'; + +@Injectable({ + providedIn: 'root' +}) +export class WalletService extends BaseService { + public get web3(): Web3 { + return this._web3; + } + + public get web3Modal(): Web3Modal { + return this._web3Modal; + } + + private _web3: Web3; + private _web3Modal: Web3Modal; + + private _accountsChanged$: BehaviorSubject<string[]> = new BehaviorSubject<string[]>([]); + private _chainChanged$: BehaviorSubject<string | null> = new BehaviorSubject<string>(null); + private _networkChanged$: BehaviorSubject<number | null> = new BehaviorSubject<number | null>(null); + private _balanceChanged$: BehaviorSubject<string | null> = new BehaviorSubject<string>(null); + private _connectChanged$: Subject<ConnectInfo> = new Subject<ConnectInfo>(); + private _disconnectChanged$: Subject<ProviderRpcError> = new Subject<ProviderRpcError>(); + private _messageChanged$: Subject<ProviderMessage> = new Subject<ProviderMessage>(); + + constructor( + store: Store, + ) { + super(store); + } + + public async initialize(): Promise<void> { + const providerOptions = { + walletconnect: { + package: WalletConnect, // required + options: { + infuraId: 'INFURA_ID' // required + }, + }, + }; + + this._web3Modal = new Web3Modal({ + network: 'mainnet', // optional + cacheProvider: true, // optional + providerOptions, // required + theme: { + background: '#FFFFFF', + main: '#1B0D3D', + secondary: '#1B0D3D', + border: 'rgba(88, 0, 176, 0.05)', + hover: 'rgba(88, 0, 176, 0.15)', + }, + }); + + if (this.web3Modal.cachedProvider) { + return this.connect(); + } + } + + public async connect(): Promise<void> { + try { + const provider = await this._web3Modal.connect(); + + await this._subscribeProvider(provider); + + this._web3 = new Web3(provider); + + const [accountAddress] = await this._web3.eth.getAccounts(); + + this.store.dispatch(SetAccountAddress({ accountAddress })); + } catch (error) { + console.log(error); + } + } + + public clearCachedProvider(): void { + this._web3Modal.clearCachedProvider(); + } + + public async switchEthereumChain(chainId: string): Promise<void> { + await this._request(EthMethods.SwitchEthereumChain, [{ chainId }]); + } + + public async addEthereumChain(params: Partial<EthChainParams>): Promise<void> { + await this._request(EthMethods.AddEthereumChain, [params]); + } + + private _request<T = any>( + method: EthMethods, + params?: unknown[] | Record<string, unknown>, + ): Promise<T> { + const eth = (window as any).ethereum as Ethereum; + + return eth.request({ method, params }); + } + + private async _subscribeProvider(provider: any) { + if (!provider.on) { + return; + } + + provider.on(EthEvents.ChainChanged, (chainId: string) => { + console.log(EthEvents.ChainChanged, ':', chainId); + // It's recommended to reload the page on chain changes, unless you have good reason not to. + window.location.reload(); + }); + + provider.on(EthEvents.AccountsChanged, ([accountAddress]: string[]) => { + this.store.dispatch(SetAccountAddress({ accountAddress })); + }); + + provider.on(EthEvents.Connect, (connectInfo: ConnectInfo) => { + console.log(EthEvents.Connect, ':', connectInfo); + this._connectChanged$.next(connectInfo); + }); + + provider.on(EthEvents.Disconnect, (error: ProviderRpcError) => { + console.log(EthEvents.Disconnect, ':', error); + this._disconnectChanged$.next(error); + }); + } +} diff --git a/src/app/core/types/index.ts b/src/app/core/types/index.ts new file mode 100644 index 0000000000000000000000000000000000000000..6f901bd296e0973bbcab92095e1ee533c86cf06c --- /dev/null +++ b/src/app/core/types/index.ts @@ -0,0 +1,10 @@ +import { Tokens, TokensName } from '../enums'; + +export type TokenType = { + color: string; + icon: string; + name: string; + balance?: string; + symbol: TokensName; + zkSymbol: Tokens; +} diff --git a/src/app/views/error/error-routing.module.ts b/src/app/views/error/error-routing.module.ts new file mode 100644 index 0000000000000000000000000000000000000000..7118beee7a0e329449465509d581ff0a88f5817d --- /dev/null +++ b/src/app/views/error/error-routing.module.ts @@ -0,0 +1,10 @@ +import { NgModule } from '@angular/core'; +import { RouterModule, Routes } from '@angular/router'; + +const routes: Routes = []; + +@NgModule({ + imports: [RouterModule.forChild(routes)], + exports: [RouterModule] +}) +export class ErrorRoutingModule { } diff --git a/src/app/views/error/error.component.html b/src/app/views/error/error.component.html new file mode 100644 index 0000000000000000000000000000000000000000..27d6bed7ac09813630d8bfd971b5fc7ef7a5823e --- /dev/null +++ b/src/app/views/error/error.component.html @@ -0,0 +1 @@ +<p>error works!</p> diff --git a/src/app/views/error/error.component.scss b/src/app/views/error/error.component.scss new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/src/app/views/error/error.component.spec.ts b/src/app/views/error/error.component.spec.ts new file mode 100644 index 0000000000000000000000000000000000000000..8004743c9d94bdc85a7da5632d52fae0ec82bbd4 --- /dev/null +++ b/src/app/views/error/error.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { ErrorComponent } from './error.component'; + +describe('ErrorComponent', () => { + let component: ErrorComponent; + let fixture: ComponentFixture<ErrorComponent>; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [ ErrorComponent ] + }) + .compileComponents(); + }); + + beforeEach(() => { + fixture = TestBed.createComponent(ErrorComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/views/error/error.component.ts b/src/app/views/error/error.component.ts new file mode 100644 index 0000000000000000000000000000000000000000..f20968aa44f48208b9fff37542e26e5f5558cdbe --- /dev/null +++ b/src/app/views/error/error.component.ts @@ -0,0 +1,10 @@ +import { Component, ChangeDetectionStrategy } from '@angular/core'; + +@Component({ + selector: 'os-error', + templateUrl: './error.component.html', + styleUrls: ['./error.component.scss'], + changeDetection: ChangeDetectionStrategy.OnPush +}) +export class ErrorComponent { +} diff --git a/src/app/views/error/error.module.ts b/src/app/views/error/error.module.ts new file mode 100644 index 0000000000000000000000000000000000000000..35e933c2039552138a11d4d7226982d17d8806ba --- /dev/null +++ b/src/app/views/error/error.module.ts @@ -0,0 +1,16 @@ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; + +import { ErrorRoutingModule } from './error-routing.module'; +import { ErrorComponent } from './error.component'; + +@NgModule({ + declarations: [ + ErrorComponent + ], + imports: [ + CommonModule, + ErrorRoutingModule + ] +}) +export class ErrorModule { } diff --git a/src/app/views/swap/components/assets/assets.component.html b/src/app/views/swap/components/assets/assets.component.html new file mode 100644 index 0000000000000000000000000000000000000000..0f4b1e11ffcb78eb7bb5509d6c7014d436a83e99 --- /dev/null +++ b/src/app/views/swap/components/assets/assets.component.html @@ -0,0 +1,21 @@ +<div class="assets"> + <div class="assets__search p-input-icon-left"> + <i class="pi pi-search"></i> + <input type="text" + pInputText + placeholder="Symbol, name or address"/> + </div> + + <div *ngFor="let asset of assets" + (click)="onSelectAsset(asset)" + class="assets__item"> + <div class="assets__icon"> + <img [src]="asset.icon" [alt]="asset.name"> + </div> + + <div class="assets__content"> + <div class="assets__name">{{ asset.name }}</div> + <div class="assets__symbol">{{ asset.zkSymbol }}</div> + </div> + </div> +</div> diff --git a/src/app/views/swap/components/assets/assets.component.scss b/src/app/views/swap/components/assets/assets.component.scss new file mode 100644 index 0000000000000000000000000000000000000000..8b179e50171eeaee100812850e046903516a2a4a --- /dev/null +++ b/src/app/views/swap/components/assets/assets.component.scss @@ -0,0 +1,74 @@ +@import "~src/styles/variables"; + +:host { + display: block; +} + +.assets { + display: flex; + flex-direction: column; + + & &__search { + width: 100%; + margin-bottom: 12px; + + > .p-inputtext { + width: 100%; + } + } + + & &__item { + display: flex; + background: rgba(88, 0, 176, 0.05); + padding: 12px; + gap: 16px; + border-radius: 4px; + + &:not(:last-of-type) { + margin-bottom: 12px; + } + + &:hover { + cursor: pointer; + background: rgba(88, 0, 176, 0.15); + } + + &:active { + background: rgba(88, 0, 176, 0.25); + } + } + + & &__icon { + width: 44px; + height: 44px; + + > img { + width: 100%; + height: 100%; + object-fit: cover; + } + } + + & &__content { + display: flex; + flex-direction: column; + } + + & &__name, + & &__symbol { + color: #1B0D3D; + } + + & &__name { + font-weight: 400; + font-size: 14px; + line-height: 22px; + opacity: 0.7; + } + + & &__symbol { + font-weight: 600; + font-size: 16px; + line-height: 26px; + } +} diff --git a/src/app/views/swap/components/assets/assets.component.spec.ts b/src/app/views/swap/components/assets/assets.component.spec.ts new file mode 100644 index 0000000000000000000000000000000000000000..0701ba276b48d0df32af346bc847a4633318b941 --- /dev/null +++ b/src/app/views/swap/components/assets/assets.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { AssetsComponent } from './assets.component'; + +describe('AssetsComponent', () => { + let component: AssetsComponent; + let fixture: ComponentFixture<AssetsComponent>; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [ AssetsComponent ] + }) + .compileComponents(); + }); + + beforeEach(() => { + fixture = TestBed.createComponent(AssetsComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/views/swap/components/assets/assets.component.ts b/src/app/views/swap/components/assets/assets.component.ts new file mode 100644 index 0000000000000000000000000000000000000000..b3b5450eb219b216d460d34a1c8043afaef166a4 --- /dev/null +++ b/src/app/views/swap/components/assets/assets.component.ts @@ -0,0 +1,32 @@ +import { Component, OnInit, ChangeDetectionStrategy } from '@angular/core'; +import { DynamicDialogConfig, DynamicDialogRef } from 'primeng/dynamicdialog'; +import { Tokens } from '../../../../core/enums'; +import { TOKENS_MAP } from '../../../../core/helpers'; +import { TokenType } from '../../../../core/types'; + +@Component({ + selector: 'os-assets', + templateUrl: './assets.component.html', + styleUrls: ['./assets.component.scss'], + changeDetection: ChangeDetectionStrategy.OnPush, +}) +export class AssetsComponent implements OnInit { + public assets!: TokenType[]; + + constructor( + private readonly _dynamicDialogRef: DynamicDialogRef, + private readonly _dynamicDialogConfig: DynamicDialogConfig, + ) { + } + + public ngOnInit(): void { + this.assets = Object.keys(TOKENS_MAP) + .filter((key) => key !== Tokens.XFT) + .map((key) => TOKENS_MAP[key]); + } + + public onSelectAsset(selectedAsset: TokenType): void { + this._dynamicDialogRef.close(selectedAsset); + } + +} diff --git a/src/app/views/swap/components/commitments/commitments.component.html b/src/app/views/swap/components/commitments/commitments.component.html new file mode 100644 index 0000000000000000000000000000000000000000..f03b121e17f981e446bc9fa652c04004938a8835 --- /dev/null +++ b/src/app/views/swap/components/commitments/commitments.component.html @@ -0,0 +1,84 @@ +<div class="commitments"> + <div class="commitments__header"> + <div class="commitments__text">My Commitments</div> + <div class="commitments__zero-balances"> + <span class="material-icons">check_circle</span> +<!-- <span class="material-icons">check_circle_outline</span>--> + <span>Show zero balances</span> + </div> + </div> + + <ngx-simplebar [options]="{ autoHide: false }" + class="commitments__container"> + <p-table [value]="token?.commitments" + [(selection)]="selectedCommitments" + dataKey="id" + class="commitments__content"> + <ng-template pTemplate="header"> + <tr> + <th> + <p-tableHeaderCheckbox></p-tableHeaderCheckbox> + </th> + <th> + <div> + <span>Commitment #</span> + <div class="commitments__zero-balances"> + <span>Token amount</span> + <span class="pi pi-sort-down"></span> + <!--<span class="pi pi-sort-up"></span>--> + </div> + </div> + </th> + </tr> + </ng-template> + <ng-template pTemplate="body" let-commitment> + <tr> + <td> + <p-tableCheckbox [value]="commitment"></p-tableCheckbox> + </td> + <td> + <div> + <div class="commitments__text">{{ commitment.id }}</div> + + <div class="commitments__balance"> + <ng-container [ngTemplateOutlet]="tokenRef" + [ngTemplateOutletContext]="{ item: commitment }"> + </ng-container> + + <span class="commitments__balance-usd">${{ commitment.USD | normalizeBN }}</span> + </div> + </div> + </td> + </tr> + </ng-template> + </p-table> + </ngx-simplebar> + + <div class="commitments__footer"> + <div class="commitments__text">Selected commitments balance:</div> + <div class="commitments__balance"> + <ng-container [ngTemplateOutlet]="tokenRef" + [ngTemplateOutletContext]="{item: { amount: sumToken }}"> + </ng-container> + + <span class="commitments__balance-usd">${{ sumUSD | normalizeBN }}</span> + </div> + </div> + + <button (click)="onDoneClick()" + [disabled]="!selectedCommitments?.length" + pButton + type="button" + label="Done" + class="commitments__button"> + </button> +</div> + +<ng-template #tokenRef let-item="item"> + <div class="token"> + <div class="token__icon"> + <img [src]="token?.icon" alt=""> + </div> + <span class="token__amount">{{ item.amount | normalizeBN }}</span> + </div> +</ng-template> diff --git a/src/app/views/swap/components/commitments/commitments.component.scss b/src/app/views/swap/components/commitments/commitments.component.scss new file mode 100644 index 0000000000000000000000000000000000000000..aeda37430ac92a54d3cf3909b867029ee4511009 --- /dev/null +++ b/src/app/views/swap/components/commitments/commitments.component.scss @@ -0,0 +1,148 @@ +@import "~src/styles/variables"; + +:host { + display: block; +} + +.commitments { + display: flex; + flex-direction: column; + + & &__container { + max-height: 400px; + margin: 0 -24px; + } + + + & &__header { + display: flex; + align-items: center; + justify-content: space-between; + margin-bottom: 8px; + } + + & &__zero-balances { + display: inline-flex; + align-items: center; + gap: 8px; + color: $offshift-primary-color; + cursor: pointer; + + > span.material-icons { + font-size: 16px; + } + + > span:not(.material-icons) { + font-weight: 600; + font-size: 12px; + line-height: 19px; + } + } + + & &__content { + tr > th > div > span { + opacity: 0.7; + color: #1B0D3D; + } + + tr > th > div > .commitments__zero-balances { + color: $offshift-primary-color; + cursor: pointer; + } + + tr > th > div > span, + tr > th > div > div { + font-weight: 600; + font-size: 12px; + line-height: 19px; + } + + tr > th, + tr > td { + background-color: #FFFFFF; + border: 0; + } + + tr > th:first-of-type, + tr > td:first-of-type { + width: 20px; + padding-right: 0; + padding-left: 24px; + } + + tr > th:last-of-type, + tr > td:last-of-type { + padding-right: 24px; + padding-top: 6px; + padding-bottom: 6px; + } + + tr > th:last-of-type > div, + tr > td:last-of-type > div { + display: flex; + align-items: center; + justify-content: space-between; + } + + tr > td:last-of-type > div { + background: rgba(27, 13, 61, 0.05); + border-radius: 4px; + padding: 16px; + } + } + + & &__footer { + display: flex; + align-items: center; + justify-content: space-between; + padding: 16px 0; + } + + & &__text { + font-weight: 600; + font-size: 16px; + line-height: 26px; + color: #1B0D3D; + } + + & &__balance { + display: flex; + flex-direction: column; + align-items: flex-end; + } + + & &__balance-usd { + font-weight: 600; + font-size: 12px; + line-height: 19px; + color: #1B0D3D; + opacity: 0.7; + } + + & &__button { + width: 100%; + } +} + +.token { + display: inline-flex; + align-items: center; + gap: 4px; + + & &__icon { + width: 16px; + height: 16px; + + > img { + width: 100%; + height: 100%; + } + } + + & &__amount { + font-weight: 600; + font-size: 16px; + line-height: 26px; + color: #1B0D3D; + } +} diff --git a/src/app/views/swap/components/commitments/commitments.component.spec.ts b/src/app/views/swap/components/commitments/commitments.component.spec.ts new file mode 100644 index 0000000000000000000000000000000000000000..fc7c49b0836959ab90da16751d49632fe83151ed --- /dev/null +++ b/src/app/views/swap/components/commitments/commitments.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { CommitmentsComponent } from './commitments.component'; + +describe('CommitmentsComponent', () => { + let component: CommitmentsComponent; + let fixture: ComponentFixture<CommitmentsComponent>; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [ CommitmentsComponent ] + }) + .compileComponents(); + }); + + beforeEach(() => { + fixture = TestBed.createComponent(CommitmentsComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/views/swap/components/commitments/commitments.component.ts b/src/app/views/swap/components/commitments/commitments.component.ts new file mode 100644 index 0000000000000000000000000000000000000000..d925680ed4a5b1ffddaee41235853841a4be007d --- /dev/null +++ b/src/app/views/swap/components/commitments/commitments.component.ts @@ -0,0 +1,82 @@ +import { Component, ChangeDetectionStrategy } from '@angular/core'; +import { DynamicDialogConfig, DynamicDialogRef } from 'primeng/dynamicdialog'; +import { BalanceCommitment, OutputParamsBalance } from '../../../../core/interfaces/contract-service-methods'; +import { ContractService } from '../../../../core/services/contract.service'; +import { selectAccountAddress } from '../../../../core/selectors'; +import { Store } from '@ngrx/store'; +import { BaseComponent } from '../../../../base.component'; +import { firstValueFrom } from 'rxjs'; +import { valueToBigNumber } from '../../../../core/helpers'; + +@Component({ + selector: 'os-commitments', + templateUrl: './commitments.component.html', + styleUrls: ['./commitments.component.scss'], + changeDetection: ChangeDetectionStrategy.OnPush, +}) +export class CommitmentsComponent extends BaseComponent { + public token: OutputParamsBalance; + public selectedCommitments: BalanceCommitment[]; + + constructor( + store: Store, + private readonly _dynamicDialogRef: DynamicDialogRef, + private readonly _dynamicDialogConfig: DynamicDialogConfig, + private readonly _contractService: ContractService, + ) { + super(store); + + this.token = this._dynamicDialogConfig.data.token; + this.selectedCommitments = [this._dynamicDialogConfig.data.selectedCommitment]; + } + + public get sumToken(): string { + return this._calculateSelectedSum('amount'); + } + + public get sumUSD(): string { + return this._calculateSelectedSum('USD'); + } + + public async onDoneClick(): Promise<void> { + if (!this.selectedCommitments?.length) { + return; + } + + if (this.selectedCommitments.length > 1) { + const accountAddress = await firstValueFrom(this.store.select(selectAccountAddress)); + + const commitmentIds = this.selectedCommitments.map((c) => Number(c.id)); + + const callback = async (error: any, hash: string) => { + console.log(error); + console.log(hash); + }; + + const { transactionHash } = await this._contractService + .groupCommitment(accountAddress, commitmentIds, callback); + + const commitment = await this._contractService + .groupCommitmentsSpent(accountAddress, transactionHash, commitmentIds); + + this._dynamicDialogRef.close(commitment); + } else { + this._dynamicDialogRef.close(this.selectedCommitments[0]); + } + } + + private _calculateSelectedSum(prop: 'amount' | 'USD'): string { + if (!this.selectedCommitments?.length) { + return '0'; + } + + return this.selectedCommitments + .map((c) => (c as any)[prop]) + .reduce((p, c) => { + p = p.plus(c); + + return p; + }, valueToBigNumber(0)) + .toString(); + } +} diff --git a/src/app/views/swap/components/settings/settings.component.html b/src/app/views/swap/components/settings/settings.component.html new file mode 100644 index 0000000000000000000000000000000000000000..c842f1f329f90ff00c43cdae3d111796fa282574 --- /dev/null +++ b/src/app/views/swap/components/settings/settings.component.html @@ -0,0 +1,36 @@ +<div class="settings"> + <!--<div class="settings__label"> + <span>Slippage tolerance</span> + <span class="pi pi-info-circle"></span> + </div> + + <p-selectButton [options]="slippageTolerance" + [(ngModel)]="selectedSlippageTolerance" + [style]="{ width: '100%', display: 'flex' }" + optionLabel="label" + optionValue="value" + class="settings__slippage"> + </p-selectButton> + + <p-inputNumber [(ngModel)]="customSlippageTolerance" + [step]="0.1" + [minFractionDigits]="1" + [maxFractionDigits]="5" + suffix="%" + [style]="{ width: '100%' }" + class="settings__slippage-input"> + </p-inputNumber>--> + + <div class="settings__label"> + <span>Transaction speed (GWEI)</span> + <span class="pi pi-info-circle"></span> + </div> + + <p-selectButton [options]="transactionSpeed" + [(ngModel)]="selectedTransactionSpeed" + [style]="{ width: '100%', display: 'flex' }" + optionLabel="label" + optionValue="value" + class="settings__transaction"> + </p-selectButton> +</div> diff --git a/src/app/views/swap/components/settings/settings.component.scss b/src/app/views/swap/components/settings/settings.component.scss new file mode 100644 index 0000000000000000000000000000000000000000..3bde2cb14389e184b8574d6555689a18458f307f --- /dev/null +++ b/src/app/views/swap/components/settings/settings.component.scss @@ -0,0 +1,38 @@ +@import "~src/styles/variables"; + +:host { + display: block; +} + +.settings { + display: flex; + flex-direction: column; + + & &__label { + display: inline-flex; + align-items: center; + gap: 8px; + font-weight: 600; + font-size: 14px; + line-height: 22px; + color: #1B0D3D; + margin-bottom: 8px; + + .pi-info-circle { + font-size: 12px; + cursor: pointer; + } + } + + & &__slippage { + margin-bottom: 8px; + } + + & &__slippage-input { + width: 100%; + margin-bottom: 16px; + } + + & &__transaction { + } +} diff --git a/src/app/views/swap/components/settings/settings.component.spec.ts b/src/app/views/swap/components/settings/settings.component.spec.ts new file mode 100644 index 0000000000000000000000000000000000000000..a6fa24fc818c8c9617dcc1c2da7ef2d4cfb67b85 --- /dev/null +++ b/src/app/views/swap/components/settings/settings.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { SettingsComponent } from './settings.component'; + +describe('SettingsComponent', () => { + let component: SettingsComponent; + let fixture: ComponentFixture<SettingsComponent>; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [ SettingsComponent ] + }) + .compileComponents(); + }); + + beforeEach(() => { + fixture = TestBed.createComponent(SettingsComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/views/swap/components/settings/settings.component.ts b/src/app/views/swap/components/settings/settings.component.ts new file mode 100644 index 0000000000000000000000000000000000000000..5f86745d3c86f005ce9185b6839022c20cf7e471 --- /dev/null +++ b/src/app/views/swap/components/settings/settings.component.ts @@ -0,0 +1,50 @@ +import { Component, ChangeDetectionStrategy } from '@angular/core'; +import { DynamicDialogConfig, DynamicDialogRef } from 'primeng/dynamicdialog'; + +@Component({ + selector: 'os-settings', + templateUrl: './settings.component.html', + styleUrls: ['./settings.component.scss'], + changeDetection: ChangeDetectionStrategy.OnPush, +}) +export class SettingsComponent { + public slippageTolerance: any[] = [ + { + label: '0.5%', + value: 0, + }, + { + label: '1.0%', + value: 1, + }, + { + label: '2.0%', + value: 2, + }, + ]; + + public transactionSpeed: any[] = [ + { + label: 'Standard (5)', + value: 0, + }, + { + label: 'Fast (6)', + value: 1, + }, + { + label: 'Instant (7)', + value: 2, + }, + ]; + + public customSlippageTolerance: number = 0; + public selectedSlippageTolerance: number = 0; + public selectedTransactionSpeed: number = 0; + + constructor( + private readonly _dynamicDialogRef: DynamicDialogRef, + private readonly _dynamicDialogConfig: DynamicDialogConfig, + ) { + } +} diff --git a/src/app/views/swap/components/token-panel/token-panel.component.html b/src/app/views/swap/components/token-panel/token-panel.component.html new file mode 100644 index 0000000000000000000000000000000000000000..53873005cefa240f462dbd3b4071d35df8c8928a --- /dev/null +++ b/src/app/views/swap/components/token-panel/token-panel.component.html @@ -0,0 +1,42 @@ +<div class="token-panel"> + <div class="token-panel__header"> + <span class="token-panel__label">{{ label }}</span> + + <span class="token-panel__label"> + {{ hint }} {{ token?.balance | normalizeBN }} + </span> + </div> + + <div *ngIf="showCommitments" + (click)="onShowCommitmentsClick()" + class="token-panel__manual"> + Switch to manual selection + <!-- Switch to automatic selection --> + </div> + + <div class="token-panel__content"> + <input #inputElement + [placeholder]="placeholder" + [disabled]="disabled" + [ngModel]="value" + [decimal]="true" + [max]="token?.balance | normalizeBN" + (ngModelChange)="onChange($event)" + digitOnly + type="text" + class="token-panel__input"> + + <span *ngIf="max > 0" + (click)="onMaxClick()" + class="token-panel__max">MAX</span> + + <img [src]="token?.icon" + [alt]="token?.name" + class="token-panel__image"> + + <span class="token-panel__name">{{ token?.zkSymbol }}</span> + + <span *ngIf="showAssets" + (click)="onShowAssetsClick()" class="pi pi-angle-down"></span> + </div> +</div> diff --git a/src/app/views/swap/components/token-panel/token-panel.component.scss b/src/app/views/swap/components/token-panel/token-panel.component.scss new file mode 100644 index 0000000000000000000000000000000000000000..6496428745ab8d096afab925b5bd085d7c1c1461 --- /dev/null +++ b/src/app/views/swap/components/token-panel/token-panel.component.scss @@ -0,0 +1,99 @@ +@import "~src/styles/variables"; + +:host { + display: block; +} + +.token-panel { + padding: 16px 20px; + background: rgba(255, 255, 255, 0.05); + border-radius: 3px; + display: flex; + flex-direction: column; + + & &__header { + display: flex; + align-items: center; + justify-content: space-between; + } + + & &__label { + font-weight: 600; + font-size: 12px; + line-height: 19px; + margin-bottom: 12px; + } + + & &__content { + height: 36px; + display: flex; + align-items: center; + gap: 12px; + + > .pi.pi-angle-down { + color: #AA8CFF; + font-size: 18px; + + &:hover { + cursor: pointer; + } + } + } + + & &__manual { + font-weight: 600; + font-size: 12px; + line-height: 19px; + color: #AA8CFF; + margin-bottom: 12px; + margin-left: auto; + margin-top: -8px; + + &:hover { + cursor: pointer; + } + } + + & &__input { + font-family: $offshift-font-family; + font-weight: 600; + font-size: 16px; + color: #FFFFFF; + width: 100%; + height: 100%; + border: 0; + background-color: transparent; + + &::placeholder { + font-family: inherit; + font-weight: normal; + font-size: 14px; + color: #FFFFFF; + opacity: 0.5; + } + } + + & &__max, + & &__name { + font-weight: 600; + font-size: 16px; + } + + & &__max { + color: #AA8CFF; + + &:hover { + cursor: pointer; + } + } + + & &__name { + color: #FFFFFF; + } + + & &__image { + width: 36px; + height: 36px; + display: block; + } +} diff --git a/src/app/views/swap/components/token-panel/token-panel.component.spec.ts b/src/app/views/swap/components/token-panel/token-panel.component.spec.ts new file mode 100644 index 0000000000000000000000000000000000000000..c2e42ffca6f7e21391efa37a96c02436a0d20b91 --- /dev/null +++ b/src/app/views/swap/components/token-panel/token-panel.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { TokenPanelComponent } from './token-panel.component'; + +describe('SettingsComponent', () => { + let component: TokenPanelComponent; + let fixture: ComponentFixture<TokenPanelComponent>; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [ TokenPanelComponent ] + }) + .compileComponents(); + }); + + beforeEach(() => { + fixture = TestBed.createComponent(TokenPanelComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/views/swap/components/token-panel/token-panel.component.ts b/src/app/views/swap/components/token-panel/token-panel.component.ts new file mode 100644 index 0000000000000000000000000000000000000000..7434a153fb4d4a66dc553edc9162d32a70824d1a --- /dev/null +++ b/src/app/views/swap/components/token-panel/token-panel.component.ts @@ -0,0 +1,122 @@ +import { + Component, + ChangeDetectionStrategy, + Input, + EventEmitter, + Output, + forwardRef, + ChangeDetectorRef, + ViewChild, + ElementRef, +} from '@angular/core'; +import { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms'; +import { BigNumber } from 'bignumber.js'; +import { TokensName } from '../../../../core/enums'; +import { TokenType } from '../../../../core/types'; + +export const INPUT_VALUE_ACCESSOR = { + provide: NG_VALUE_ACCESSOR, + useExisting: forwardRef(() => TokenPanelComponent), + multi: true, +}; + +@Component({ + selector: 'os-token-panel', + templateUrl: './token-panel.component.html', + styleUrls: ['./token-panel.component.scss'], + changeDetection: ChangeDetectionStrategy.OnPush, + providers: [INPUT_VALUE_ACCESSOR], +}) +export class TokenPanelComponent implements ControlValueAccessor { + @ViewChild('inputElement', { static: true }) + public inputElement!: ElementRef<HTMLInputElement>; + + @Input() + public label!: string; + + @Input() + public placeholder!: string; + + @Input() + public hint!: string; + + @Input() + public max!: number; + + @Input() + public showCommitments: boolean = false; + + @Input() + public showAssets: boolean = false; + + @Input() + public token!: TokenType; + + @Output('showCommitmentsChange') + public commitmentsEventEmitter: EventEmitter<void> = new EventEmitter<void>(); + + @Output('showAssetsChange') + public assetsEventEmitter: EventEmitter<void> = new EventEmitter<void>(); + + public value!: string; + public disabled: boolean = false; + + public get isNotXFT(): boolean { + return this.token?.symbol !== TokensName.XFT; + } + + constructor( + private readonly _cdr: ChangeDetectorRef, + ) { + } + + public writeValue(value: string): void { + this.value = !isNaN(Number(value)) ? value : ''; + + this._cdr.markForCheck(); + } + + public registerOnChange(fn: () => void): void { + this._onChange = fn; + } + + public registerOnTouched(fn: () => void): void { + this._onTouched = fn; + } + + public setDisabledState(isDisabled: boolean): void { + this.disabled = isDisabled; + } + + public onChange(value: string | number): void { + this.value = String(this.max && new BigNumber(value).gt(this.max) ? this.max : value); + + if (this.inputElement?.nativeElement) { + const inputElement = this.inputElement.nativeElement as HTMLInputElement; + + inputElement.value = this.value ? this.value : ''; + } + + this._onChange(this.value); + + this._cdr.markForCheck(); + } + + public onMaxClick(): void { + this.onChange(this.max); + } + + public onShowCommitmentsClick(): void { + this.commitmentsEventEmitter.emit(); + } + + public onShowAssetsClick(): void { + this.assetsEventEmitter.emit(); + } + + private _onChange: (value: string) => void = () => { + }; + + private _onTouched: () => void = () => { + }; +} diff --git a/src/app/views/swap/swap-routing.module.ts b/src/app/views/swap/swap-routing.module.ts new file mode 100644 index 0000000000000000000000000000000000000000..643654e2789b2255a31a4c80277c518f70ef27dc --- /dev/null +++ b/src/app/views/swap/swap-routing.module.ts @@ -0,0 +1,14 @@ +import { NgModule } from '@angular/core'; +import { RouterModule, Routes } from '@angular/router'; +import { SwapComponent } from './swap.component'; + +const ROUTES: Routes = [ + { path: '', component: SwapComponent }, +]; + +@NgModule({ + imports: [RouterModule.forChild(ROUTES)], + exports: [RouterModule] +}) +export class SwapRoutingModule { +} diff --git a/src/app/views/swap/swap.component.html b/src/app/views/swap/swap.component.html new file mode 100644 index 0000000000000000000000000000000000000000..d332531f2779fd8917b059580c605a612da984e4 --- /dev/null +++ b/src/app/views/swap/swap.component.html @@ -0,0 +1,78 @@ +<div class="shift"> + <div class="shift__header"> + <h1 class="shift__header-text">Shift</h1> + <span (click)="onShowSettingsClick()" + class="shift__header-cog pi pi-cog"></span> + </div> + + <div [formGroup]="formGroup" + class="shift__content"> + <ng-template #tokenPanel + let-token="token" + let-name="name"> + <os-token-panel [token]="token" + [showCommitments]="name === 'burn' && token?.symbol !== 'XFT'" + [showAssets]="token?.symbol !== 'XFT'" + [hint]="token?.symbol !== 'XFT' ? 'Total Balance:' : 'Balance:'" + [formControlName]="name" + [label]="name === 'burn' ? 'Burn' : 'Mint'" + (showCommitmentsChange)="onShowCommitmentsClick()" + (showAssetsChange)="onShowAssetsClick()" + placeholder="Amount"> + </os-token-panel> + </ng-template> + + <ng-container [ngTemplateOutlet]="tokenPanel" + [ngTemplateOutletContext]="{ token: tokenInput, name: 'burn' }"> + </ng-container> + + <button (click)="onSwitchTokensClick(tokenInput.symbol, tokenOutput.symbol)" + class="shift__switch p-button-rounded p-button-icon-only" + pButton + type="button" + icon="pi pi-sort-alt"> + </button> + + <ng-container [ngTemplateOutlet]="tokenPanel" + [ngTemplateOutletContext]="{ token: tokenOutput, name: 'mint' }"> + </ng-container> + </div> + + <div class="shift__footer"> + <ng-container *ngIf="(accountAddress$ | ngrxPush) else connectWallet"> + <ng-container [ngSwitch]="buttonState"> + <button *ngSwitchCase="'APPROVE'" + [disabled]="formGroup.disabled || formGroup.get('burn').value <= 0" + (click)="onApproveClick()" + pButton + type="button" + label="Approve" + class="shift__button"> + </button> + + <button *ngSwitchCase="'APPROVING'" + [disabled]="true" + [loading]="true" + pButton + type="button" + label="Approving..." + class="shift__button"> + </button> + + <button *ngSwitchCase="'SHIFT'" + [disabled]="formGroup.disabled" + [loading]="formGroup.disabled" + (click)="onShiftClick()" + pButton + type="button" + label="Shift" + class="shift__button"> + </button> + </ng-container> + </ng-container> + + <ng-template #connectWallet> + <os-connect-wallet class="shift__button"></os-connect-wallet> + </ng-template> + </div> +</div> diff --git a/src/app/views/swap/swap.component.scss b/src/app/views/swap/swap.component.scss new file mode 100644 index 0000000000000000000000000000000000000000..5c5def45fed27df6464585228513cf520124c672 --- /dev/null +++ b/src/app/views/swap/swap.component.scss @@ -0,0 +1,58 @@ +@use "sass:math"; + +@import "~src/styles/variables"; + +:host { + display: flex; + flex-direction: column; +} + +.shift { + display: flex; + flex-direction: column; + margin: 84px auto 0; + padding: 32px 24px; + width: 411px; + bottom: 173px; + background: #1B0D3D; + box-shadow: 0 12px 32px rgba(0, 0, 0, 0.32); + border-radius: 8px; + gap: math.div($offshift-gap * 3, 2);; + + & &__header { + display: flex; + align-items: center; + justify-content: space-between; + } + + & &__header-text { + font-weight: 600; + font-size: 20px; + line-height: 32px; + margin: 0; + } + + & &__header-cog { + font-size: 18px; + cursor: pointer; + } + + & &__content { + height: 100%; + display: flex; + flex-direction: column; + gap: $offshift-gap; + } + + & &__switch { + margin: 0 auto; + } + + & &__footer { + } + + & &__button { + display: block; + width: 100%; + } +} diff --git a/src/app/views/swap/swap.component.spec.ts b/src/app/views/swap/swap.component.spec.ts new file mode 100644 index 0000000000000000000000000000000000000000..556ac780a67e1d0feb34fb09463f31d248568f8b --- /dev/null +++ b/src/app/views/swap/swap.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { SwapComponent } from './swap.component'; + +describe('SwapComponent', () => { + let component: SwapComponent; + let fixture: ComponentFixture<SwapComponent>; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [SwapComponent] + }) + .compileComponents(); + }); + + beforeEach(() => { + fixture = TestBed.createComponent(SwapComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/views/swap/swap.component.ts b/src/app/views/swap/swap.component.ts new file mode 100644 index 0000000000000000000000000000000000000000..44d172251dd2bb5daf25cfcf0efe7970a85366d3 --- /dev/null +++ b/src/app/views/swap/swap.component.ts @@ -0,0 +1,362 @@ +import { ChangeDetectionStrategy, ChangeDetectorRef, Component, OnInit } from '@angular/core'; +import { FormBuilder, FormGroup, Validators } from '@angular/forms'; +import { Store } from '@ngrx/store'; +import { DialogService } from 'primeng/dynamicdialog'; +import { + combineLatest, + debounceTime, + distinctUntilChanged, + filter, + first, + firstValueFrom, map, + mergeMap, + Observable +} from 'rxjs'; +import { BaseComponent } from '../../base.component'; +import { GetAllowanceRequest, GetBalancesRequest, GetBalancesSuccess, GetXFTBalanceRequest } from '../../core/actions'; +import { TOKENS_AGGREGATOR_MAP, TOKENS_NAME_MAP, TokensName } from '../../core/enums'; +import { normalize, TOKENS_MAP, toWei, valueToBigNumber, valueToWei } from '../../core/helpers'; +import { + selectAccountAddress, + selectAllowance, + selectBalances, + selectTokenBySymbol, + selectXFTBalance, +} from '../../core/selectors'; +import { ContractService } from '../../core/services/contract.service'; +import { TokenType } from '../../core/types'; +import { AssetsComponent } from './components/assets/assets.component'; +import { CommitmentsComponent } from './components/commitments/commitments.component'; +import { SettingsComponent } from './components/settings/settings.component'; +import { BalanceCommitment } from '../../core/interfaces/contract-service-methods'; +import { concatLatestFrom } from '@ngrx/effects'; +import { ActivatedRoute } from '@angular/router'; + +@Component({ + selector: 'os-swap', + templateUrl: './swap.component.html', + styleUrls: ['./swap.component.scss'], + changeDetection: ChangeDetectionStrategy.OnPush, +}) +export class SwapComponent extends BaseComponent implements OnInit { + public formGroup: FormGroup; + public isBurnXFT: boolean = false; + public buttonState: 'APPROVE' | 'APPROVING' | 'SHIFT' = 'APPROVE'; + public tokenInput: TokenType; + public tokenOutput: TokenType; + public accountAddress$: Observable<string>; + public tokenBalance$: Observable<string>; + + private _allowance: string; + private _selectedCommitment: BalanceCommitment; + private _burnAsset: { price: string; decimals: number }; + private _mintAsset: { price: string; decimals: number }; + + constructor( + store: Store, + private readonly _route: ActivatedRoute, + private readonly _cdr: ChangeDetectorRef, + private readonly _formBuilder: FormBuilder, + private readonly _dialogService: DialogService, + private readonly _contractService: ContractService, + ) { + super(store); + + this.accountAddress$ = this.store.select(selectAccountAddress); + } + + public async ngOnInit(): Promise<void> { + this.formGroup = this._formBuilder.group({ + burn: [null, [Validators.required]], + mint: [null, [Validators.required]], + }); + + this.onSwitchTokensClick(TokensName.BTC, TokensName.XFT); + + combineLatest([ + this.store.select(selectBalances), + this.store.select(selectXFTBalance), + ]) + .subscribe(() => { + this.tokenInput = { ...TOKENS_MAP[this.tokenInput.symbol] }; + this.tokenOutput = { ...TOKENS_MAP[this.tokenOutput.symbol] }; + + this._cdr.markForCheck(); + }); + + this.store.select(selectAccountAddress) + .pipe( + filter((accountAddress) => Boolean(accountAddress)), + ) + .subscribe(async () => { + await this._getLatestPrice(); + }); + + this.store.select(selectAllowance) + .subscribe((allowance) => { + this._allowance = allowance; + + const burn = this.formGroup.get('burn').value; + + this._toggleButtonState(burn); + }); + + this.formGroup.get('burn').valueChanges + .pipe( + debounceTime(500), + distinctUntilChanged(), + filter(() => this.formGroup.enabled), + ) + .subscribe(async (burn) => { + this._toggleButtonState(burn); + + const aggrBase = TOKENS_NAME_MAP[this.tokenInput.symbol]; + const aggrQuote = TOKENS_NAME_MAP[this.tokenOutput.symbol]; + + const mint = await this._getExchange(burn, aggrBase, aggrQuote); + + this.formGroup.get('mint').setValue(mint, { emitEvent: false }); + }); + + this.formGroup.get('mint').valueChanges + .pipe( + debounceTime(500), + distinctUntilChanged(), + filter(() => this.formGroup.enabled), + ) + .subscribe(async (mint) => { + const aggrBase = TOKENS_NAME_MAP[this.tokenOutput.symbol]; + const aggrQuote = TOKENS_NAME_MAP[this.tokenInput.symbol]; + + const burn = await this._getExchange(mint, aggrBase, aggrQuote); + + this.formGroup.get('burn').setValue(burn, { emitEvent: false }); + }); + + + this._route.queryParams + .pipe( + filter(({ symbol, commitmentId }) => Boolean(symbol && commitmentId)), + concatLatestFrom(() => this.accountAddress$), + mergeMap(([{ symbol, commitmentId }, address]) => { + this.onSwitchTokensClick(TokensName.XFT, symbol); + + return this._contractService.balances({ address }) + .pipe( + map((balances) => { + + this.store.dispatch(GetBalancesSuccess({ balances })); + + const balance = balances.find((b) => b.asset.symbol === symbol); + + return balance?.commitments.find(({ id }) => id == commitmentId); + }), + ); + }) + ) + .subscribe((commitment) => this._setCommitment(commitment)); + } + + public async onApproveClick(): Promise<void> { + try { + this.formGroup.disable(); + this.buttonState = 'APPROVING'; + let amount = '0'; + + if (this._selectedCommitment) { + amount = this._selectedCommitment.amount; + } else { + const { burn } = this.formGroup.getRawValue(); + + amount = valueToWei(burn, 18); + } + + await this._contractService.approve(amount, (error: any, hash: string) => { + console.log(error); + console.log(hash); + }); + + this.buttonState = 'SHIFT'; + this.formGroup.enable(); + + this.store.dispatch(GetAllowanceRequest()); + } catch (error) { + this.formGroup.enable(); + this.buttonState = 'APPROVE'; + + console.log(error); + } + + this._cdr.markForCheck(); + } + + public async onShiftClick(): Promise<void> { + try { + this.formGroup.disable(); + + const address = await firstValueFrom(this.accountAddress$); + + const { burn, mint } = this.formGroup.getRawValue(); + + const callback = (error: any, hash: string) => { + console.log(error); + console.log(hash); + }; + + if (this.tokenOutput.symbol === TokensName.XFT) { + const { id, amount } = this._selectedCommitment; // TODO remove hard code + + const { transactionHash: hashTx } = await this._contractService + .withdraw(address, amount, id, callback); + + await this._contractService.withdrawFill({ address, hashTx }); + } else { + const amount = valueToWei(mint, 18); + const symbol = TOKENS_NAME_MAP[this.tokenOutput.symbol]; + + const { transactionHash: hashTx } = await this._contractService + .deposit(address, amount, symbol, callback); + + await this._contractService.depositFill({ address, hashTx }); + } + + this.store.dispatch(GetBalancesRequest()); + + this.store.dispatch(GetXFTBalanceRequest()); + + this.store.dispatch(GetAllowanceRequest()); + + this.buttonState = 'APPROVE'; + this._selectedCommitment = undefined; + this.formGroup.reset({ burn: null, mint: null }); + } catch (error) { + console.log(error); + } + + this.formGroup.enable(); + this.formGroup.updateValueAndValidity(); + + this._cdr.markForCheck(); + } + + public onSwitchTokensClick( + tokenInput: TokensName, + tokenOutput: TokensName, + ): void { + this.isBurnXFT = !this.isBurnXFT; + + this.tokenInput = { ...TOKENS_MAP[tokenOutput] }; + this.tokenOutput = { ...TOKENS_MAP[tokenInput] }; + + const { burn, mint } = this.formGroup.getRawValue(); + + if (this.isBurnXFT) { + this.formGroup.get('burn').setValue(burn); + } + + this._cdr.markForCheck(); + } + + public onShowSettingsClick(): void { + this._dialogService.open(SettingsComponent, { + header: 'Settings', + width: '500px', + }); + } + + public onShowAssetsClick(): void { + const dialog = this._dialogService.open(AssetsComponent, { + header: 'Asset Search', + width: '500px', + }); + + dialog.onClose.subscribe(async (selectedAsset?: TokenType) => { + if (!selectedAsset) { + return; + } + + const { burn } = this.formGroup.getRawValue(); + + if (this.isBurnXFT) { + this.tokenOutput = { ...TOKENS_MAP[selectedAsset.symbol] }; + } else { + this.tokenInput = { ...TOKENS_MAP[selectedAsset.symbol] }; + } + + const aggrBase = TOKENS_NAME_MAP[this.tokenInput.symbol]; + const aggrQuote = TOKENS_NAME_MAP[this.tokenOutput.symbol]; + + const mint = await this._getExchange(burn, aggrBase, aggrQuote); + + this.formGroup.get('mint').setValue(mint, { emitEvent: false }); + + this._cdr.markForCheck(); + }); + } + + public onShowCommitmentsClick(): void { + this.store.select(selectTokenBySymbol(this.tokenInput.symbol)) + .pipe( + first(), + mergeMap((token) => { + return this._dialogService.open(CommitmentsComponent, { + header: 'Select Commitments', + width: '500px', + data: { + token, + selectedCommitment: this._selectedCommitment, + }, + }).onClose; + }), + filter((commitment) => !!commitment), + ) + .subscribe((commitment) => { + this._setCommitment(commitment); + }); + } + + private _setCommitment(commitment: BalanceCommitment): void { + this._selectedCommitment = commitment; + + const burn = normalize(this._selectedCommitment.amount, 18); + + this.formGroup.get('burn').setValue(burn); + } + + private async _getExchange( + amount: string, + aggrBase: TokensName, + aggrQuote: TokensName, + ): Promise<number> { + if (!amount) { + return null; + } + + const { Price, Decimal } = await this._contractService.exchange({ + aggrBase, + aggrQuote, + amount: valueToWei(amount, 18), + }).toPromise(); + + const result = Number(normalize(Price, Decimal)); + + return result > 0 ? result : null; + } + + private _toggleButtonState(amount: string): void { + const isLTE = amount && valueToBigNumber(toWei(amount)).lte(this._allowance); + + this.buttonState = isLTE ? 'SHIFT' : 'APPROVE'; + + this._cdr.markForCheck(); + } + + private async _getLatestPrice(): Promise<void> { + const burnAggregator = TOKENS_AGGREGATOR_MAP[this.tokenInput.symbol]; + const mintAggregator = TOKENS_AGGREGATOR_MAP[this.tokenOutput.symbol]; + + this._burnAsset = await this._contractService.getLatestPrice(burnAggregator); + + this._mintAsset = await this._contractService.getLatestPrice(mintAggregator); + } +} diff --git a/src/app/views/swap/swap.module.ts b/src/app/views/swap/swap.module.ts new file mode 100644 index 0000000000000000000000000000000000000000..4fb1914fc0c5c39363433465e76c59509b150d2e --- /dev/null +++ b/src/app/views/swap/swap.module.ts @@ -0,0 +1,48 @@ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { FormsModule, ReactiveFormsModule } from '@angular/forms'; +import { ReactiveComponentModule } from '@ngrx/component'; +import { DigitOnlyModule } from '@uiowa/digit-only'; +import { ButtonModule } from 'primeng/button'; +import { InputNumberModule } from 'primeng/inputnumber'; +import { InputTextModule } from 'primeng/inputtext'; +import { SelectButtonModule } from 'primeng/selectbutton'; +import { TableModule } from 'primeng/table'; +import { SimplebarAngularModule } from 'simplebar-angular'; +import { ConnectWalletModule } from '../../components/connect-wallet/connect-wallet.module'; +import { PipesModule } from '../../core/pipes'; +import { TokenPanelComponent } from './components/token-panel/token-panel.component'; + +import { SwapRoutingModule } from './swap-routing.module'; +import { SwapComponent } from './swap.component'; +import { SettingsComponent } from './components/settings/settings.component'; +import { AssetsComponent } from './components/assets/assets.component'; +import { CommitmentsComponent } from './components/commitments/commitments.component'; + +@NgModule({ + declarations: [ + AssetsComponent, + CommitmentsComponent, + SettingsComponent, + SwapComponent, + TokenPanelComponent, + ], + imports: [ + ButtonModule, + CommonModule, + FormsModule, + InputNumberModule, + InputTextModule, + SelectButtonModule, + SimplebarAngularModule, + SwapRoutingModule, + TableModule, + ConnectWalletModule, + ReactiveComponentModule, + PipesModule, + ReactiveFormsModule, + DigitOnlyModule, + ], +}) +export class SwapModule { +} diff --git a/src/app/views/transfer/transfer-routing.module.ts b/src/app/views/transfer/transfer-routing.module.ts new file mode 100644 index 0000000000000000000000000000000000000000..c0e9c27808f68a0548aac77225d9ba77ff04bef3 --- /dev/null +++ b/src/app/views/transfer/transfer-routing.module.ts @@ -0,0 +1,14 @@ +import { NgModule } from '@angular/core'; +import { RouterModule, Routes } from '@angular/router'; +import { TransferComponent } from './transfer.component'; + +const ROUTES: Routes = [ + { path: '', component: TransferComponent }, +]; + +@NgModule({ + imports: [RouterModule.forChild(ROUTES)], + exports: [RouterModule], +}) +export class TransferRoutingModule { +} diff --git a/src/app/views/transfer/transfer.component.html b/src/app/views/transfer/transfer.component.html new file mode 100644 index 0000000000000000000000000000000000000000..df59f1f6590d162d8c077c54dc19d1b0ac5be8df --- /dev/null +++ b/src/app/views/transfer/transfer.component.html @@ -0,0 +1,28 @@ +<img class="transfer-mock" src="assets/images/transactions.png" alt=""> +<div class="transfer-blur"></div> +<div class="transfer-development"> + <span class="transfer-development__text">Transfer is now under development</span> + + <button pButton + type="button" + label="OK" + class="transfer-development__button"> + </button> +</div> +<!--<div class="transfer"> + <div class="transfer__header"> + <h1 class="transfer__header-text">Transfer</h1> + <span class="transfer__header-cog pi pi-cog"></span> + </div> + + <div class="transfer__content"> + </div> + + <div class="transfer__footer"> + <button pButton + type="button" + label="Generate File" + class="transfer__button"> + </button> + </div> +</div>--> diff --git a/src/app/views/transfer/transfer.component.scss b/src/app/views/transfer/transfer.component.scss new file mode 100644 index 0000000000000000000000000000000000000000..8ac951744f9debbc418b9bd1063d84239c2dc77a --- /dev/null +++ b/src/app/views/transfer/transfer.component.scss @@ -0,0 +1,98 @@ +@use "sass:math"; + +@import "~src/styles/variables"; + +:host { + display: flex; + flex-direction: column; +} + +.tab-view { + +} + +.transfer-mock { + width: 411px; + align-self: center; +} + +.transfer-blur { + position: fixed; + top: 72px; + left: 0; + right: 0; + bottom: 0; + background: rgba(27, 13, 61, 0.7); + backdrop-filter: blur(20px); +} + +.transfer-development { + display: flex; + flex-direction: column; + align-self: center; + position: absolute; + top: 45%; + gap: 16px; + + & &__text { + font-weight: 600; + font-size: 24px; + line-height: 38px; + text-align: center; + color: #F5F5FF; + } + + & &__button { + align-self: center; + } +} + +.transfer { + display: flex; + flex-direction: column; + margin: 84px auto 0; + padding: 32px 24px; + width: 411px; + bottom: 173px; + background: #1B0D3D; + box-shadow: 0 12px 32px rgba(0, 0, 0, 0.32); + border-radius: 8px; + gap: math.div($offshift-gap * 3, 2);; + + & &__header { + display: flex; + align-items: center; + justify-content: space-between; + } + + & &__header-text { + font-weight: 600; + font-size: 20px; + line-height: 32px; + margin: 0; + } + + & &__header-cog { + font-size: 18px; + cursor: pointer; + } + + & &__content { + height: 100%; + display: flex; + flex-direction: column; + gap: $offshift-gap; + } + + & &__switch { + margin: 0 auto; + } + + & &__footer { + } + + & &__button { + display: block; + width: 100%; + } +} diff --git a/src/app/views/transfer/transfer.component.spec.ts b/src/app/views/transfer/transfer.component.spec.ts new file mode 100644 index 0000000000000000000000000000000000000000..d713ce2f334b3fc3fc704f9650564a816a62dd59 --- /dev/null +++ b/src/app/views/transfer/transfer.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { TransferComponent } from './transfer.component'; + +describe('TransferComponent', () => { + let component: TransferComponent; + let fixture: ComponentFixture<TransferComponent>; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [TransferComponent] + }) + .compileComponents(); + }); + + beforeEach(() => { + fixture = TestBed.createComponent(TransferComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/views/transfer/transfer.component.ts b/src/app/views/transfer/transfer.component.ts new file mode 100644 index 0000000000000000000000000000000000000000..03977c75feb4f735a81cb1de020d74715e0b4ff2 --- /dev/null +++ b/src/app/views/transfer/transfer.component.ts @@ -0,0 +1,10 @@ +import { ChangeDetectionStrategy, Component } from '@angular/core'; + +@Component({ + selector: 'os-transfer', + templateUrl: './transfer.component.html', + styleUrls: ['./transfer.component.scss'], + changeDetection: ChangeDetectionStrategy.OnPush, +}) +export class TransferComponent { +} diff --git a/src/app/views/transfer/transfer.module.ts b/src/app/views/transfer/transfer.module.ts new file mode 100644 index 0000000000000000000000000000000000000000..a19fcda2bce7892a372008553aefb65372c40811 --- /dev/null +++ b/src/app/views/transfer/transfer.module.ts @@ -0,0 +1,19 @@ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; + +import { TransferRoutingModule } from './transfer-routing.module'; +import { TransferComponent } from './transfer.component'; +import { ButtonModule } from 'primeng/button'; + +@NgModule({ + declarations: [ + TransferComponent, + ], + imports: [ + CommonModule, + TransferRoutingModule, + ButtonModule, + ] +}) +export class TransferModule { +} diff --git a/src/app/views/wallet/wallet-routing.module.ts b/src/app/views/wallet/wallet-routing.module.ts new file mode 100644 index 0000000000000000000000000000000000000000..c65ac42bfb2300b44ac15411b03bdc71cbf57096 --- /dev/null +++ b/src/app/views/wallet/wallet-routing.module.ts @@ -0,0 +1,14 @@ +import { NgModule } from '@angular/core'; +import { RouterModule, Routes } from '@angular/router'; +import { WalletComponent } from './wallet.component'; + +const ROUTES: Routes = [ + { path: '', component: WalletComponent }, +]; + +@NgModule({ + imports: [RouterModule.forChild(ROUTES)], + exports: [RouterModule], +}) +export class WalletRoutingModule { +} diff --git a/src/app/views/wallet/wallet.component.html b/src/app/views/wallet/wallet.component.html new file mode 100644 index 0000000000000000000000000000000000000000..92c2b9375137926385e31a1ba2cf5a0ae8a0b562 --- /dev/null +++ b/src/app/views/wallet/wallet.component.html @@ -0,0 +1,145 @@ +<div class="wallet"> + <div class="wallet__left"> + <div class="wallet__composition composition"> + <div class="composition__header">Wallet</div> + <div class="composition__content"> + <div class="composition__chart"> + <span class="composition__chart-total">{{ xftAmount$ | ngrxPush }} XFT</span> + <p-chart type="doughnut" + [data]="chartData$ | ngrxPush" + [options]="chartOptions" + [style]="{'width': '100%'}"> + </p-chart> + </div> + <div class="composition__data"> + <p-table [value]="balances$ | ngrxPush" + class="composition__table" + dataKey="id"> + <ng-template pTemplate="header"> + <tr> + <th></th> + <th>Token</th> + <th>Amount</th> + <th>Value</th> + <th>Comm. Amount</th> + </tr> + </ng-template> + <ng-template pTemplate="body" let-token> + <tr> + <td><span [style.background-color]="token.color"></span></td> + <td> + <div class="token-icon"><img [src]="token.icon" alt=""></div> + </td> + <td>{{ token.asset.amount | normalizeBN }}</td> + <td>${{ token.asset.USD | normalizeBN }}</td> + <td> + <div> + <span>{{ token.commitments.length }}</span> + <span (click)="onViewCommitmentsClick(token)" class="view">View</span> + </div> + </td> + </tr> + </ng-template> + </p-table> + </div> + </div> + </div> + </div> + + <div class="wallet__right"> + <div class="commitments"> + <div class="commitments__header"> + <ng-container *ngIf="currentBalance?.icon"> + <img [src]="currentBalance.icon" alt=""> + </ng-container> + <span>Commitments</span> + </div> + + <div class="commitments__wrapper"> + <ng-template #emptyView> + <div class="commitments__empty"> + Select asset to explore commitments + </div> + </ng-template> + + <ng-container *ngIf="currentBalance?.commitments?.length else emptyView"> + <ngx-simplebar [options]="{ autoHide: false }" + class="commitments__simplebar"> + <p-table [value]="currentBalance?.commitments" + [(selection)]="selectedCommitments" + class="commitments__table" + dataKey="id"> + <ng-template pTemplate="header"> + <tr> + <th> + <p-tableHeaderCheckbox></p-tableHeaderCheckbox> + </th> + <th> + <div> + <span>Commitment #</span> + <div class="commitments__zero-balances"> + <span>Token amount</span> + <span class="pi pi-sort-down"></span> + <!--<span class="pi pi-sort-up"></span>--> + </div> + </div> + </th> + </tr> + </ng-template> + <ng-template pTemplate="body" let-commitment> + <tr> + <td> + <p-tableCheckbox [value]="commitment"></p-tableCheckbox> + </td> + <td> + <div> + <div class="commitments__text">{{ commitment.id }}</div> + + <div class="commitments__balance"> + <ng-container [ngTemplateOutlet]="tokenRef" + [ngTemplateOutletContext]="{item: commitment}"> + </ng-container> + + <span class="commitments__balance-usd">${{ commitment.USD | normalizeBN }}</span> + </div> + </div> + </td> + </tr> + </ng-template> + </p-table> + </ngx-simplebar> + + <div class="commitments__footer"> + <div class="commitments__text">Selected Commitments Balance:</div> + <div class="commitments__balance"> + <ng-container [ngTemplateOutlet]="tokenRef" + [ngTemplateOutletContext]="{item: { amount: sumToken }}"> + </ng-container> + + <span class="commitments__balance-usd">${{ sumUSD | normalizeBN }}</span> + </div> + </div> + + <button (click)="onGoToShiftClick()" + [disabled]="!selectedCommitments?.length || isLoading" + [loading]="isLoading" + pButton + type="button" + label="Go to Shift" + class="commitments__button"> + </button> + </ng-container> + </div> + </div> + + <ng-template #tokenRef let-item="item"> + <div class="token"> + <div class="token__icon"> + <img [src]="currentBalance.icon" alt=""> + </div> + <span class="token__amount">{{ item.amount | normalizeBN }}</span> + </div> + </ng-template> + + </div> +</div> diff --git a/src/app/views/wallet/wallet.component.scss b/src/app/views/wallet/wallet.component.scss new file mode 100644 index 0000000000000000000000000000000000000000..f5c7ad5d5b4aa388226bf5a994faa255ad926177 --- /dev/null +++ b/src/app/views/wallet/wallet.component.scss @@ -0,0 +1,351 @@ +@use "sass:math"; + +@import "~src/styles/variables"; + +:host { + display: block; +} + +.wallet { + display: flex; + gap: math.div($offshift-gap * 3, 2);; + + & &__left { + width: 100%; + } + + & &__right { + width: 100%; + max-width: 520px; + } + + & &__composition { + } +} + +.composition { + background: #1B0D3D; + box-shadow: 0 12px 32px rgba(0, 0, 0, 0.32); + border-radius: 8px; + overflow: hidden; + + & &__header { + padding: 12px 24px; + background: rgba(255, 255, 255, 0.1); + font-weight: 600; + font-size: 20px; + line-height: 32px; + color: #F5F5FF; + } + + & &__content { + padding: 24px; + display: flex; + gap: math.div($offshift-gap * 3, 2);; + } + + & &__chart { + width: 100%; + max-width: 160px; + border-radius: 50%; + background: rgba(255, 255, 255, 0.05); + align-self: center; + padding: 12px; + position: relative; + } + + & &__chart-total { + font-weight: 600; + font-size: 14px; + line-height: 22px; + color: #F5F5FF; + position: absolute; + top: calc(50% - 11px); + left: 0; + right: 0; + text-align: center; + } + + & &__data { + width: 100%; + padding: 20px; + background: rgba(255, 255, 255, 0.05); + border-radius: 4px; + font-weight: 700; + } + + & &__table { + tr, + tr > td, + tr > th { + border: 0; + background: transparent; + } + + tr > th { + padding-top: 0; + padding-bottom: 8px; + } + + tr > td { + padding-top: 8px; + padding-bottom: 8px; + } + + tr:last-of-type > td { + padding-bottom: 0; + } + + tr > td { + font-weight: 600; + font-size: 14px; + line-height: 22px; + color: #F5F5FF; + + .token-icon { + width: 40px; + height: 40px; + + > img { + width: 100%; + height: 100%; + } + } + + > div:not(.token-icon) { + display: flex; + align-items: center; + gap: 12px; + } + + .view { + font-weight: 600; + font-size: 14px; + line-height: 22px; + color: #AA8CFF; + cursor: pointer; + } + } + + tr > th { + font-weight: 400; + font-size: 12px; + line-height: 19px; + opacity: 0.6; + color: #FFFFFF; + } + + tr > th:first-of-type, + tr > td:first-of-type { + padding-left: 0; + } + + tr > th:last-of-type, + tr > td:last-of-type { + padding-right: 0; + white-space: nowrap; + } + + tr > th:last-of-type, + tr > td:last-of-type, + tr > td:last-of-type > div { + //white-space: nowrap; + //text-align: right; + //justify-content: flex-end; + } + + tr > th:not(:first-of-type):not(:last-of-type) { + width: 33%; + } + + tr > td:last-of-type { + width: auto; + } + + tr > td:first-of-type { + width: 40px; + min-width: 40px; + + > span { + display: inline-block; + border-radius: 50%; + width: 8px; + height: 8px; + } + } + } +} + +.commitments { + background: #fff; + overflow: hidden; + border-radius: 8px; + display: flex; + flex-direction: column; + + & &__empty { + min-height: 160px; + font-weight: 600; + font-size: 20px; + line-height: 32px; + color: #1B0D3D; + display: flex; + align-items: center; + align-self: center; + text-align: center; + } + + & &__wrapper { + display: flex; + flex-direction: column; + padding: 0 24px 24px; + } + + & &__simplebar { + max-height: calc(100vh - 340px); + margin: 0 -24px; + } + + & &__header { + display: flex; + align-items: center; + gap: 8px; + margin-bottom: 8px; + padding: 12px 24px; + background: rgba(88, 0, 176, 0.1); + font-weight: 600; + font-size: 20px; + line-height: 32px; + color: #1B0D3D; + + > img { + width: 24px; + height: 24px; + } + } + + & &__zero-balances { + display: inline-flex; + align-items: center; + gap: 8px; + color: $offshift-primary-color; + cursor: pointer; + + > span.pi-check-circle { + font-size: 12px; + } + + > span:not(.pi-check-circle) { + font-weight: 600; + font-size: 12px; + line-height: 19px; + } + } + + & &__table { + tr > th > div > span { + opacity: 0.7; + color: #1B0D3D; + } + + tr > th > div > .commitments__zero-balances { + color: $offshift-primary-color; + cursor: pointer; + } + + tr > th > div > span, + tr > th > div > div { + font-weight: 600; + font-size: 12px; + line-height: 19px; + } + + tr > th, + tr > td { + background-color: #FFFFFF; + border: 0; + } + + tr > th:first-of-type, + tr > td:first-of-type { + width: 20px; + padding-right: 0; + padding-left: 24px; + } + + tr > th:last-of-type, + tr > td:last-of-type { + padding-right: 24px; + padding-top: 6px; + padding-bottom: 6px; + } + + tr > th:last-of-type > div, + tr > td:last-of-type > div { + display: flex; + align-items: center; + justify-content: space-between; + } + + tr > td:last-of-type > div { + background: rgba(27, 13, 61, 0.05); + border-radius: 4px; + padding: 16px; + } + } + + & &__footer { + display: flex; + align-items: center; + justify-content: space-between; + padding: 16px 0; + } + + & &__text { + font-weight: 600; + font-size: 16px; + line-height: 26px; + color: #1B0D3D; + } + + & &__balance { + display: flex; + flex-direction: column; + align-items: flex-end; + } + + & &__balance-usd { + font-weight: 600; + font-size: 12px; + line-height: 19px; + color: #1B0D3D; + opacity: 0.7; + } + + & &__button { + width: 100%; + } +} + +.token { + display: inline-flex; + align-items: center; + gap: 4px; + + & &__icon { + width: 16px; + height: 16px; + + > img { + width: 100%; + height: 100%; + } + } + + & &__amount { + font-weight: 600; + font-size: 16px; + line-height: 26px; + color: #1B0D3D; + } +} diff --git a/src/app/views/wallet/wallet.component.spec.ts b/src/app/views/wallet/wallet.component.spec.ts new file mode 100644 index 0000000000000000000000000000000000000000..6d6f3341b83f42513e5efd34f6d8b086a9638485 --- /dev/null +++ b/src/app/views/wallet/wallet.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { WalletComponent } from './wallet.component'; + +describe('WalletComponent', () => { + let component: WalletComponent; + let fixture: ComponentFixture<WalletComponent>; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [WalletComponent] + }) + .compileComponents(); + }); + + beforeEach(() => { + fixture = TestBed.createComponent(WalletComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/views/wallet/wallet.component.ts b/src/app/views/wallet/wallet.component.ts new file mode 100644 index 0000000000000000000000000000000000000000..da084afdd748ae380650c21b5399753dddda0f0e --- /dev/null +++ b/src/app/views/wallet/wallet.component.ts @@ -0,0 +1,131 @@ +import { ChangeDetectionStrategy, ChangeDetectorRef, Component } from '@angular/core'; +import { BaseComponent } from '../../base.component'; +import { Store } from '@ngrx/store'; +import { GetBalancesRequest } from '../../core/actions'; +import { + selectAccountAddress, + selectAssets, + selectChartData, + selectXFTBalancesAmount +} from '../../core/selectors'; +import { firstValueFrom, Observable } from 'rxjs'; +import { BalanceCommitment, OutputParamsBalance } from '../../core/interfaces/contract-service-methods'; +import { TokenType } from '../../core/types'; +import { valueToBigNumber } from '../../core/helpers'; +import { ContractService } from '../../core/services/contract.service'; +import { Router } from '@angular/router'; + +type BalanceType = TokenType & OutputParamsBalance + +@Component({ + selector: 'os-wallet', + templateUrl: './wallet.component.html', + styleUrls: ['./wallet.component.scss'], + changeDetection: ChangeDetectionStrategy.OnPush, +}) +export class WalletComponent extends BaseComponent { + public isLoading: boolean = false; + public selectedCommitments: BalanceCommitment[]; + public chartData$: Observable<any>; + public xftAmount$: Observable<string>; + public chartOptions: any = { + cutout: 50, + responsive: true, + plugins: { + legend: { + display: false, + }, + tooltip: { + enabled: true, + }, + } + }; + public balances$: Observable<BalanceType[]>; + public currentBalance: BalanceType; + + constructor( + store: Store, + private readonly _router: Router, + private readonly _cdr: ChangeDetectorRef, + private readonly _contractService: ContractService, + ) { + super(store); + + this.balances$ = this.store.select(selectAssets); + + this.chartData$ = this.store.select(selectChartData); + + this.xftAmount$ = this.store.select(selectXFTBalancesAmount); + + this.store.dispatch(GetBalancesRequest()); + } + + public get sumToken(): string { + return this._calculateSelectedSum('amount'); + } + + public get sumUSD(): string { + return this._calculateSelectedSum('USD'); + } + + public onViewCommitmentsClick(token: BalanceType): void { + if (this.currentBalance && !this.currentBalance.commitments.length) { + return; + } + + this.currentBalance = token; + + this._cdr.markForCheck(); + } + + public async onGoToShiftClick(): Promise<void> { + if (!this.selectedCommitments?.length) { + return; + } + + this.isLoading = true; + + const { symbol } = this.currentBalance; + + if (this.selectedCommitments.length > 1) { + const address = await firstValueFrom(this.store.select(selectAccountAddress)); + + const commitmentIds = this.selectedCommitments.map((c) => Number(c.id)); + + const callback = async (error: any, hash: string) => { + console.log(error); + console.log(hash); + }; + + const { transactionHash: hashTx } = await this._contractService + .groupCommitment(address, commitmentIds, callback); + + const { id: commitmentId } = await this._contractService + .groupCommitmentsSpent(address, hashTx, commitmentIds); + + await this._contractService + .groupCommitmentFill({ address, hashTx }); + + this._router.navigate(['swap'], { queryParams: { symbol, commitmentId } }); + } else { + const { id: commitmentId } = this.selectedCommitments[0]; + + this._router.navigate(['swap'], { queryParams: { symbol, commitmentId } }); + } + } + + private _calculateSelectedSum(prop: 'amount' | 'USD'): string { + if (!this.selectedCommitments?.length) { + return '0'; + } + + return this.selectedCommitments + .map((c) => (c as any)[prop]) + .reduce((p, c) => { + p = p.plus(c); + + return p; + }, valueToBigNumber(0)) + .toString(); + } +} diff --git a/src/app/views/wallet/wallet.module.ts b/src/app/views/wallet/wallet.module.ts new file mode 100644 index 0000000000000000000000000000000000000000..0c9b7373248cea8032ae1e0c9d784731a77a5f04 --- /dev/null +++ b/src/app/views/wallet/wallet.module.ts @@ -0,0 +1,29 @@ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { ButtonModule } from 'primeng/button'; +import { ChartModule } from 'primeng/chart'; +import { TableModule } from 'primeng/table'; +import { SimplebarAngularModule } from 'simplebar-angular'; + +import { WalletRoutingModule } from './wallet-routing.module'; +import { WalletComponent } from './wallet.component'; +import { ReactiveComponentModule } from '@ngrx/component'; +import { PipesModule } from '../../core/pipes'; + +@NgModule({ + declarations: [ + WalletComponent + ], + imports: [ + CommonModule, + WalletRoutingModule, + SimplebarAngularModule, + TableModule, + ButtonModule, + ChartModule, + ReactiveComponentModule, + PipesModule, + ] +}) +export class WalletModule { +} diff --git a/src/assets/.gitkeep b/src/assets/.gitkeep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/src/assets/i18n/en.json b/src/assets/i18n/en.json new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/src/assets/images/3.png b/src/assets/images/3.png new file mode 100644 index 0000000000000000000000000000000000000000..0cc354b3df8c2e77816567da28689812579fac2e Binary files /dev/null and b/src/assets/images/3.png differ diff --git a/src/assets/images/XFT-dark.svg b/src/assets/images/XFT-dark.svg new file mode 100644 index 0000000000000000000000000000000000000000..a4816f375268e2c2bfaefa5917dee5c999732541 --- /dev/null +++ b/src/assets/images/XFT-dark.svg @@ -0,0 +1,20 @@ +<svg width="36" height="36" viewBox="0 0 36 36" fill="none" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> +<g clip-path="url(#clip0_15_124)"> +<path d="M0 18C0 8.05888 8.05888 0 18 0C27.9411 0 36 8.05888 36 18C36 27.9411 27.9411 36 18 36C8.05888 36 0 27.9411 0 18Z" fill="#5800B0"/> +<rect x="-4" y="-4" width="44" height="44" fill="url(#pattern0)"/> +<rect x="8" y="8" width="20" height="20" fill="url(#pattern1)"/> +</g> +<defs> +<pattern id="pattern0" patternContentUnits="objectBoundingBox" width="1" height="1"> +<use xlink:href="#image0_15_124" transform="scale(0.015873 0.015625)"/> +</pattern> +<pattern id="pattern1" patternContentUnits="objectBoundingBox" width="1" height="1"> +<use xlink:href="#image1_15_124" transform="translate(0 -0.00305998) scale(0.00122399)"/> +</pattern> +<clipPath id="clip0_15_124"> +<path d="M0 18C0 8.05888 8.05888 0 18 0C27.9411 0 36 8.05888 36 18C36 27.9411 27.9411 36 18 36C8.05888 36 0 27.9411 0 18Z" fill="white"/> +</clipPath> +<image id="image0_15_124" width="63" height="64" xlink:href="data:image/png;base64,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"/> +<image id="image1_15_124" width="817" height="822" xlink:href="data:image/png;base64,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"/> +</defs> +</svg> diff --git a/src/assets/images/XFT-light.svg b/src/assets/images/XFT-light.svg new file mode 100644 index 0000000000000000000000000000000000000000..05afdd3233845c161a87582c6380c44b2bd93e8b --- /dev/null +++ b/src/assets/images/XFT-light.svg @@ -0,0 +1,10 @@ +<svg width="36" height="36" viewBox="0 0 36 36" fill="none" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> +<path d="M0 18C0 8.05888 8.05888 0 18 0C27.9411 0 36 8.05888 36 18C36 27.9411 27.9411 36 18 36C8.05888 36 0 27.9411 0 18Z" fill="white"/> +<rect x="8" y="8" width="20" height="20" fill="url(#pattern0)"/> +<defs> +<pattern id="pattern0" patternContentUnits="objectBoundingBox" width="1" height="1"> +<use xlink:href="#image0_15_117" transform="translate(0 -0.00305998) scale(0.00122399)"/> +</pattern> +<image id="image0_15_117" width="817" height="822" xlink:href="data:image/png;base64,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"/> +</defs> +</svg> diff --git a/src/assets/images/favicon.png b/src/assets/images/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..4a73b837797aa2cd2d24028c896c99cb09c0931c Binary files /dev/null and b/src/assets/images/favicon.png differ diff --git a/src/assets/images/img_0.png b/src/assets/images/img_0.png new file mode 100644 index 0000000000000000000000000000000000000000..e7d64018f1985899ad4682e5ea0c749048ed110c Binary files /dev/null and b/src/assets/images/img_0.png differ diff --git a/src/assets/images/loader.png b/src/assets/images/loader.png new file mode 100644 index 0000000000000000000000000000000000000000..479237cdbf83e1d7d3a36d10ba6fe3aeb014e97b Binary files /dev/null and b/src/assets/images/loader.png differ diff --git a/src/assets/images/logo.svg b/src/assets/images/logo.svg new file mode 100644 index 0000000000000000000000000000000000000000..13ab150179d98840fd3fcdea031fa9903cc70105 --- /dev/null +++ b/src/assets/images/logo.svg @@ -0,0 +1,17 @@ +<svg width="646" height="124" viewBox="0 0 646 124" fill="none" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> +<rect width="123.164" height="123.164" fill="url(#pattern0)"/> +<path d="M160.797 76.6353C160.797 54.3974 180.298 35.9228 203.22 35.9228C226.143 35.9228 245.301 54.3974 245.301 76.6353C245.301 98.8733 226.143 117.348 203.22 117.348C180.298 117.348 160.797 98.5311 160.797 76.6353ZM224.774 76.6353C224.774 64.6611 214.853 54.3974 203.563 54.3974C191.93 54.3974 182.009 64.319 182.009 76.6353C182.009 88.6096 191.93 98.8733 203.563 98.8733C214.853 98.8733 224.774 88.6096 224.774 76.6353Z" fill="black"/> +<path d="M278.829 37.9756H295.593V55.7659H278.829V115.637H257.96V55.7659H247.354V37.9756H257.96V31.1331C257.96 17.1061 267.539 7.52667 281.224 7.52667C287.382 7.52667 294.567 10.2636 299.015 14.3691L293.883 27.7119C292.514 26.3434 289.435 25.3171 286.356 25.3171C282.251 25.3171 278.829 29.0804 278.829 33.8701V37.9756Z" fill="black"/> +<path d="M330.49 37.9756H347.254V55.7659H330.49V115.637H309.62V55.7659H299.015V37.9756H309.62V31.1331C309.62 17.1061 319.2 7.52667 332.885 7.52667C339.043 7.52667 346.227 10.2636 350.675 14.3691L345.543 27.7119C344.175 26.3434 341.096 25.3171 338.017 25.3171C333.911 25.3171 330.49 29.0804 330.49 33.8701V37.9756Z" fill="black"/> +<path d="M348.28 105.716L357.86 90.6624C364.702 95.4521 373.597 99.2154 383.861 99.2154C389.677 99.2154 393.783 96.8205 393.783 93.3993C393.783 88.6096 387.966 87.2411 380.098 84.8462C364.018 81.0829 351.701 76.6353 351.701 61.2399C351.701 46.5286 363.676 35.9228 382.15 35.9228C393.098 35.9228 404.388 39.6862 412.941 45.5022L404.046 61.2399C396.862 56.7923 388.993 54.3974 382.15 54.3974C376.676 54.3974 372.913 56.4501 372.913 59.1871C372.913 63.2926 375.992 64.661 386.598 67.398C399.941 70.8192 414.994 75.2669 414.994 92.373C414.994 107.768 402.678 117.348 383.519 117.348C370.518 117.348 357.518 112.9 348.28 105.716Z" fill="black"/> +<path d="M497.788 66.0295V115.295H476.576V70.4771C476.576 60.8977 470.418 54.3974 461.865 54.3974C452.627 54.3974 445.785 60.8977 445.785 69.4508V115.295H423.889V10.2637H445.785V47.2128C450.575 40.3704 459.128 35.9228 469.049 35.9228C485.813 35.9228 497.788 48.5813 497.788 66.0295Z" fill="black"/> +<path d="M508.393 15.0534C508.393 8.8952 513.525 3.42122 520.368 3.42122C526.868 3.42122 532 8.8952 532 15.0534C532 21.5537 526.868 27.0277 520.368 27.0277C513.867 27.0277 508.393 21.8958 508.393 15.0534ZM509.42 37.9756H531.315V115.637H509.42V37.9756Z" fill="black"/> +<path d="M572.712 37.9756H589.476V55.7659H572.712V115.637H551.843V55.7659H541.237V37.9756H551.843V31.1331C551.843 17.1061 561.422 7.52667 575.107 7.52667C581.265 7.52667 588.45 10.2636 592.897 14.3691L587.765 27.7119C586.397 26.3434 583.318 25.3171 580.239 25.3171C576.133 25.3171 572.712 29.0804 572.712 33.8701V37.9756Z" fill="black"/> +<path d="M645.926 110.505C641.479 114.611 634.294 117.348 628.136 117.348C614.451 117.348 604.872 107.426 604.872 93.7414V55.7659H594.266V37.9756H604.872V16.764H625.741V37.9756H642.505V55.7659H625.741V89.9781C625.741 95.1099 629.162 98.5311 633.268 98.5311C636.347 98.5311 639.426 97.5047 640.794 96.1362L645.926 110.505Z" fill="black"/> +<defs> +<pattern id="pattern0" patternContentUnits="objectBoundingBox" width="1" height="1"> +<use xlink:href="#image0" transform="translate(0 -0.00305998) scale(0.00122399)"/> +</pattern> +<image id="image0" width="817" height="822" xlink:href="data:image/png;base64,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"/> +</defs> +</svg> diff --git a/src/assets/images/transactions.png b/src/assets/images/transactions.png new file mode 100644 index 0000000000000000000000000000000000000000..9c37f3e625110d8b99f9af79d5858f7c73d46fdf Binary files /dev/null and b/src/assets/images/transactions.png differ diff --git a/src/assets/images/transfer.png b/src/assets/images/transfer.png new file mode 100644 index 0000000000000000000000000000000000000000..58ba8db1c882052fa4049b52d01afea57edd2ba4 Binary files /dev/null and b/src/assets/images/transfer.png differ diff --git a/src/assets/images/zkBTC.svg b/src/assets/images/zkBTC.svg new file mode 100644 index 0000000000000000000000000000000000000000..0f458a8bf0086999622d1792dbd2f3452c2f3528 --- /dev/null +++ b/src/assets/images/zkBTC.svg @@ -0,0 +1,15 @@ +<svg width="36" height="36" viewBox="0 0 36 36" fill="none" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> +<g clip-path="url(#clip0_59_1130)"> +<rect x="-4" y="-4" width="44" height="44" fill="url(#pattern0)"/> +<path d="M24.9635 16.2311C25.2577 14.3426 23.7375 13.3267 21.7638 12.6454L22.4135 10.0877L20.8198 9.70521L20.1823 12.1912L18.9564 11.9044L19.5938 9.39444L18.0001 9L17.3382 11.5578L16.3206 11.3307L14.1139 10.7928L13.6848 12.4662C13.6848 12.4662 14.9107 12.7291 14.9107 12.741C15.132 12.768 15.3338 12.878 15.4734 13.0475C15.613 13.2171 15.6795 13.433 15.6586 13.6494L14.9107 16.5658H15.0824H14.9107L13.7584 20.6654C13.7105 20.8091 13.6065 20.9287 13.4688 20.9981C13.3311 21.0675 13.1708 21.081 13.0228 21.0359L11.7969 20.749L11 22.5419L13.0841 23.0438L14.2242 23.3307L13.5622 25.9243L15.1559 26.3068L15.818 23.749L17.0439 24.0717L16.3819 26.6175L17.9879 27L18.6499 24.4184C21.3715 24.9204 23.4188 24.7172 24.2892 22.3148C24.4648 21.9754 24.5659 21.6042 24.5863 21.2247C24.6066 20.8451 24.5456 20.4656 24.4072 20.1103C24.2688 19.755 24.0561 19.4317 23.7825 19.161C23.5089 18.8902 23.1804 18.678 22.8181 18.5378C23.3695 18.4279 23.8681 18.1432 24.2362 17.7282C24.6043 17.3131 24.8213 16.7909 24.8532 16.243L24.9635 16.2311ZM21.1753 21.239C20.685 23.1753 17.3382 22.1355 16.2716 21.8725L17.1542 18.4423C18.2331 18.7052 21.7147 19.2191 21.1875 21.239H21.1753ZM21.6902 16.2192C21.2366 17.9761 18.4537 17.0917 17.5465 16.8646L18.3434 13.7569C19.2506 13.9721 22.1561 14.3785 21.6902 16.2192Z" fill="#8F52E0"/> +</g> +<defs> +<pattern id="pattern0" patternContentUnits="objectBoundingBox" width="1" height="1"> +<use xlink:href="#image0_59_1130" transform="scale(0.015873)"/> +</pattern> +<clipPath id="clip0_59_1130"> +<path d="M0 18C0 8.05888 8.05888 0 18 0C27.9411 0 36 8.05888 36 18C36 27.9411 27.9411 36 18 36C8.05888 36 0 27.9411 0 18Z" fill="white"/> +</clipPath> +<image id="image0_59_1130" width="63" height="63" xlink:href="data:image/png;base64,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"/> +</defs> +</svg> diff --git a/src/assets/images/zkETH.svg b/src/assets/images/zkETH.svg new file mode 100644 index 0000000000000000000000000000000000000000..f4000d7229aaa6aeaf142f2806a68bb3c8efc5de --- /dev/null +++ b/src/assets/images/zkETH.svg @@ -0,0 +1,21 @@ +<svg width="36" height="36" viewBox="0 0 36 36" fill="none" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> +<g clip-path="url(#clip0_55_1432)"> +<path d="M0 18C0 8.05888 8.05888 0 18 0C27.9411 0 36 8.05888 36 18C36 27.9411 27.9411 36 18 36C8.05888 36 0 27.9411 0 18Z" fill="white"/> +<rect x="-4" y="-4" width="44" height="44" fill="url(#pattern0)"/> +<path d="M17.9932 23.4843V29.0001L24.9998 19.4993L17.9932 23.4843Z" fill="#4C1596"/> +<path d="M17.9932 15.1475V22.2193L24.9998 18.2216L17.9932 15.1475Z" fill="#300D5E"/> +<path d="M17.9932 7V15.1471L24.9998 18.2213L17.9932 7Z" fill="#4C1596"/> +<path d="M17.9936 23.4843V29.0001L11 19.4993L17.9936 23.4843Z" fill="#8F52E0"/> +<path d="M17.9936 15.1475V22.2193L11 18.2216L17.9936 15.1475Z" fill="#66399E"/> +<path d="M17.9936 7V15.1471L11 18.2213L17.9936 7Z" fill="#8F52E0"/> +</g> +<defs> +<pattern id="pattern0" patternContentUnits="objectBoundingBox" width="1" height="1"> +<use xlink:href="#image0_55_1432" transform="scale(0.015873 0.015625)"/> +</pattern> +<clipPath id="clip0_55_1432"> +<path d="M0 18C0 8.05888 8.05888 0 18 0C27.9411 0 36 8.05888 36 18C36 27.9411 27.9411 36 18 36C8.05888 36 0 27.9411 0 18Z" fill="white"/> +</clipPath> +<image id="image0_55_1432" width="63" height="64" xlink:href="data:image/png;base64,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"/> +</defs> +</svg> diff --git a/src/assets/images/zkUSD.svg b/src/assets/images/zkUSD.svg new file mode 100644 index 0000000000000000000000000000000000000000..a799399472e32a21e0a9b6c0bf11f741929511da --- /dev/null +++ b/src/assets/images/zkUSD.svg @@ -0,0 +1,15 @@ +<svg width="36" height="36" viewBox="0 0 36 36" fill="none" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> +<g clip-path="url(#clip0_59_1122)"> +<rect x="-4" y="-4" width="44" height="44" fill="url(#pattern0)"/> +<path d="M17.0491 27.5H18.718V25.3889C18.719 25.307 18.7477 25.2278 18.7994 25.1643C18.8511 25.1008 18.9227 25.0567 19.0026 25.0392C21.4735 24.6118 23 23.0317 23 20.9206C23 18.8095 21.9004 17.6957 19.2096 16.7373C17.088 15.9343 16.0919 15.442 16.0919 14.3282C16.0919 13.9397 16.26 12.6316 18.511 12.6316C19.625 12.6327 20.7265 12.8665 21.7451 13.318L22.2626 11.2717C21.2785 10.874 20.2316 10.6548 19.1708 10.6241C19.0815 10.6241 18.996 10.5887 18.9329 10.5255C18.8699 10.4623 18.8344 10.3766 18.8344 10.2873V8.5H17.1656V10.4557C17.164 10.536 17.1348 10.6133 17.083 10.6747C17.0312 10.736 16.9598 10.7776 16.881 10.7925C14.5136 11.2587 13.0906 12.7352 13.0906 14.7427C13.0906 16.7502 14.3843 17.864 17.1915 18.8354C18.8733 19.3923 19.9858 20.0269 19.9858 21.2573C19.9858 22.4877 18.9638 23.1094 17.3208 23.1094C16.0144 23.0904 14.7285 22.7807 13.5563 22.2028L13 24.3398C14.1715 24.862 15.4315 25.1565 16.7129 25.2075C16.8032 25.2109 16.8887 25.2492 16.9515 25.3144C17.0142 25.3796 17.0492 25.4667 17.0491 25.5573V27.5Z" fill="#8F52E0"/> +</g> +<defs> +<pattern id="pattern0" patternContentUnits="objectBoundingBox" width="1" height="1"> +<use xlink:href="#image0_59_1122" transform="scale(0.015873 0.015625)"/> +</pattern> +<clipPath id="clip0_59_1122"> +<path d="M0 18C0 8.05888 8.05888 0 18 0C27.9411 0 36 8.05888 36 18C36 27.9411 27.9411 36 18 36C8.05888 36 0 27.9411 0 18Z" fill="white"/> +</clipPath> +<image id="image0_59_1122" width="63" height="64" xlink:href="data:image/png;base64,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"/> +</defs> +</svg> diff --git a/src/assets/images/zkXAU.svg b/src/assets/images/zkXAU.svg new file mode 100644 index 0000000000000000000000000000000000000000..01effd1988d6811005b3b1ed41d506ae05f5f7a0 --- /dev/null +++ b/src/assets/images/zkXAU.svg @@ -0,0 +1,16 @@ +<svg width="36" height="36" viewBox="0 0 36 36" fill="none" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> +<g clip-path="url(#clip0_59_1111)"> +<path d="M0 18C0 8.05888 8.05888 0 18 0C27.9411 0 36 8.05888 36 18C36 27.9411 27.9411 36 18 36C8.05888 36 0 27.9411 0 18Z" fill="white"/> +<rect x="-4" y="-4" width="44" height="44" fill="url(#pattern0)"/> +<path d="M11.7808 17.8691L14.4246 21.7818H12.2877L10.6987 19.4545L9.10956 21.7818H7L9.65754 17.9127L7 14H9.1507L10.726 16.3127L12.3151 14H14.4246L11.7808 17.8691ZM20 20.6473H17.0822L16.6575 21.7818H14.6164L17.5206 14H19.5616L22.4795 21.7818H20.4247L20 20.6473ZM19.4247 19.1927L18.548 16.7927L17.6575 19.1927H19.4247ZM23.1918 18.4218V14.0581H25.0138V18.3345C25 18.5 25.0028 18.8188 25.069 19.0506C25.1353 19.2824 25.2474 19.4966 25.3978 19.6787C25.5482 19.8608 25.7335 20.0067 25.9413 20.1067C26.1491 20.2067 26.3746 20.2583 26.6028 20.2583C26.8309 20.2583 27.0564 20.2067 27.2642 20.1067C27.472 20.0067 27.6573 19.8608 27.8077 19.6787C27.9582 19.4966 28.0703 19.2824 28.1365 19.0506C28.2027 18.8188 28.1918 18.5774 28.1918 18.3345V14H30V18.3636C30 19.3281 29.6392 20.253 28.9969 20.9349C28.3547 21.6169 27.4836 22 26.5753 22C25.6671 22 24.796 21.6169 24.1537 20.9349C23.5115 20.253 23.1918 19.3862 23.1918 18.4218Z" fill="#8F52E0"/> +</g> +<defs> +<pattern id="pattern0" patternContentUnits="objectBoundingBox" width="1" height="1"> +<use xlink:href="#image0_59_1111" transform="scale(0.015873 0.015625)"/> +</pattern> +<clipPath id="clip0_59_1111"> +<path d="M0 18C0 8.05888 8.05888 0 18 0C27.9411 0 36 8.05888 36 18C36 27.9411 27.9411 36 18 36C8.05888 36 0 27.9411 0 18Z" fill="white"/> +</clipPath> +<image id="image0_59_1111" width="63" height="64" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAD8AAABACAYAAACtK6/LAAAACXBIWXMAABcRAAAXEQHKJvM/AAAMC0lEQVRoQ91bzYE0Ow0seZocCIsDeXAmBciDREjrjYuDVPpx9+wsHPH3dtqWZVlVkn96dp/965//pplhLYOZAQYvBixbgBEEoUKGinkdAAiCZD4BgnQ5JHdFEBv70GEYchvIMZu75kXpDAmr73PhY83+8ud/8PW68HotrNcCbGOthbUWbBlgG1vuJ1gnQM6S7ujmO+py1IFubuy9Q2fjnXo79UmGfo15848xBzBJrmeR1EsHyiZR63rZn/CyhWXLn+uCLYMt+NNegl5RFNuGdGLZAvlKgJsbG8BSpJRRAAyGje1P7nBHkgXDhmFhQXPXP4vnBoHMjIVeCA+UqQ6LcS5R61q2Yhp/LvP011NpX5y1OglauMPuvpwx0HbUDEYDYNh4B0i5LccMyChOsJqDAdoIH82NM+kdotuwpMAhI2kwXC941C2iv9zNcMUJyKgbPermjpjJIQOtXNjcWHgBKMc22cC6C54BDng3+KJocQVYQqQwQBsq6jYIc+sd6HPkgWuLXRYQPAxw5pVSdBmR6zXmDsoNxHbCQl3RAwGj+ZgRMtZ4AmCEIOf0ugExv0HTOkluQ6sraTDVEJCFjrh6Om0SJqcIbAK2WWubbqjqTBAlD+cO3QKtfiTI+pHewuLGmw7FArg7sqF0t+jzEClQDk/RBR8ICd2rQOzwx9Ix0tNURp7Bh1l2PeEXGWUvywEYjGWmdUztEU0XBDIbFpbsY8NHC2CQZh8ICemVEY80IpmRNiLWZAMcoP2/9nSlQY5AKWULqICoz2BcYNvILDZPd2elfQER8FhgWbTK3bEHQqJOQJHfiOwGYz1qvcVokDt8L8A96sAkKIGHH88keNoqrY2KulLdggxrwGUj9iRaZWc4bABiYBIEIDblIt7Bx+Sk79S5cYeD2tCU9jie1a8xB8hmq/oj2uiHEJDOY/n+04HT5Y3tEC7lZ5GQe0ENtWbGAFwbO9JbkV/JlhGwbW3+GW2C4NYyiASjt7Xe8wdomRH+DUJKJrnFxNqHTJ53QEDODbMm/f68Nt9Ip/fGa70cNAzYjIuOnEA+B5CQ+2PXdXX7c5PYm8dYAT3qG7GDByiBVruzRgBoRzKZrSFHyG3Kr82N8AjcLfGcgXi50VwNwBZYVAkAO4GLiLAfPuc4Ad8+Tmvcl5F2e+1BNdYNxGKRX0Dmdd/0Ih+je8qvN94JfK0FMGwQfrszKvDIzaw7QlUjOwZ45rjUazJ/+k/eAdDSW0cdej0GgAC11emi9pzeM+oyDk97bn+To7b8tz91x4dZAW+gHbCa3re5AzgcaPO3b5wdQ11+wl2W/drty2nXc+AJ2I4op6NBg+ZuAK4331hw4FzMdLZ4sdmN8A62UB1NzjTPRGnRd7llhjFAI/ok9509rcOjH+d/tB3whjKD41NEAHxYEpe+MFi2/PVyO3A3YEi3BthK0UQj0+H4JsuhI9IhPNrtR2nLlrYxvyGOR9ZQ44q41NEWPTVBuZjl2tzItzRoH4y1QV8lZj3iYj2aAczin9JbznbQ2shABmecgI92rWNFLHQc6QTaSSttl/XLDRNdpD0NSp3XenlnOL+wGnhFVuCQurmVyPnUDwKazSQibMwsCpcpGGhzuZ329hxK3UDLFsnYN7qS+4aXbFikvdSCQbN0SnuCN4rFWZfDPnEHrccAniYVnbLv0p4B6kOVJKoin+N61oaBPOf9qDMYI72bYQdvMPONx195UcbjHNZUnvYdcLiT6Ww51gkSA+V2jUWNDdsDhAqBtkOi6CF0RR7D0l6kPQK4UeehpjMQC8Ae0dGrZjk0MyAnoNapJn56ej+7vI0x2TxLR8QKwewqoEzF0rs2dXRU5Kz90wboxWItagfuxhmkMJ0l5byPFcJ6T9dHJ6icU2aNMsIoWQUN8LR21coChSuXIwTeLI+LXjoR6FSwGW5ZYFwNrJNAIAkD/WvLmr8RkrZYfWc5gbe20cJckJmf8wCsnvgay0u8R+dXmK5kbTPMgZQhw9josJE3rv6kyBFMN9A36X6MdYvqv5UgyHqTLUsbEXcaXX5t7DjqXMUvjS3RuXK3L/BhNIC7vqJeS8LJCZ4TQG2azCijCJKaag/RnnCcTPlGKUnvQN4z4yI3djvKqkQE2L5OYpMj+BM4bIdP86+hW8qnu9T0IhBJ6m8ifQc9oZe0FXZzrBMN+uq6RXKbdvaKdH6lBEBprn+EMmBhAxVxCHiPOtIT2bqVA7iy55BkvT5VKrIaZq2mKgFcjHVam5kly1qffd33OWoaj3zqtQlAAS3ZuCvos+/yaCWBn0AfiLtp+GAOXabWilt2qvXaTJhqzZ6pRRA02eGDrI8vvdp4q08aJe1edQ/O8qR1eG3AJYMR48gAtFrqZqvXZ7tSMsca0N/AAOaXI32WkqmELcNYSgXKMNK59X2qpSTW4+VAnwgQBchTaxAQjUFIU+iuqd/LCfZOwC2hrU6Gk947Kb20lrWARInI94jfuermT44/ZkREvOt6Cqyc7cwYgvUF7OgTo7pVFmj36YR1tGy2pXOVEy3RHyLdxLd6L/cEPEkh8i5gHEuiA9K4GWE5ldszFDyMkWXgpKXrXV7tUYhxIwXtQ+pzpOlJXJf5S8785UInQIXAiP6kIEjQlxNxRP+3oNVzzaR/jhwOcp7A3uQhyMgmATWPCOhj0kbardub9LrOyOgvoM/ahXSokkjma1P6TIwBY6NL2amTn32hdWJKvwNEaFpKOdq0GbxZnkGrtD9m8eFsCgTDK0ZLRN2fsOovS5xn/jj/J0Fqd1ltVDxGzOf/AhwALl9zPabWPhE1r5/Hm/eiaYaVM/SjMNfCyKQWfUEyLIxfMaXh+XyebkqSvJZSvuF9IEDtmqLMnKDZKo+EqB27fZ9ujAfw00YGJHcoAqrwrI3umUFXgr0R0Gt11mqTOd27g0Td2EZUiSK0jNReYMivmvJMP4jugJKoUnhaBlOW4NWwWmMtDPYwtHtzxucjIek1U2NGvNgqGz+ldPhnn/rn561meb1V16B0DJAT+TTkGvxIQFREo2LLdrNxlbB8+5q5Ne4IfyjnBhnFZm9ebyU+te3BzCAgIpYWGuAiIEiK4FooEIw+0TPHl5tSCZLo9XkA9hI+f7jW6vPqAi9WVfDWw6NeDgfAqo6Iz9Lad88nC6c4KllvKqxJu+QoJblufQ+eZLpCucDoKRlMR1HNL47HdTVfTkSdjc2xALK5UlG+lRjwU5Q/1a6fz2TAnTdVP+oISkqcj6aB0NiALQAW+KLHCMavpJO8qCThvQ9Hpj3Ci9bIBs3JOup+VTQJn/R9kh79sbEZGoD4S1uzAGbxVVr8ojBk9UuLZiT93aEXmZdefMmAFhFP+zP637JBiUCgFkV0BWC5OK8OAofDPhO0/tSEpr/eDsXb7a4bsdFSIHpRtLveOOdHGU5L49Czw5kAfVOBVWpOfzNSxnjNMP2ldl/jlnNxSsPG4XsW4twE+/ja8D5F+yDh7Bxi+QjAp7Gw66zr/d1/e9odMcD0l4CWsiJh5FbWnA5rvj0BZWvPWtvtj6ieRVEeaO+M1OZjdaVNs4xGS3+xzvrfDlxq6GeMevr6TmKsy+7RlvQsD0fdUyliaFm7a/F4s85sasTGw6Mp4B55SSraM8ozC9J4GR0Q2T6brJEywZsi873coQP5h/1sriXmgMM+NkgxQW27N/V3V2kdNbLX1cbtrP+2898j/3RZuBHyZLTFN75qnm9/4bCF5mHTe0tbx9qNqFv9O8inGgy4biQ+lT4nPiQHe7K6c75EeL+9AeMdpgPv7+r6W//6VE9/xWa9isfjKxmRob9a8xVRtR6KhVPsBNSOP1xnnRIGoFY7wbj45NgcN7c6phxtw5u+3W9+s//5kvOxzHR76nfn2zR8MJ9Odc2wTY95YztnnOd5t3je+88WH+/+85z/VNgfn1maEYt4GUYbmNV5HhL9LYhBQGXJvOSkicyQe5/Lnn3+VdpXpH4u9QuMnmr3Wl5lh0xZVTL/09ig9KG/ht4j138r/Kn8Djx+Ax2Y/zeTSuz6GeGSd9XbHQHwv/hG7R6fSr/k/BTps/wS/O+M3dIbaFErQST10PPjcZad7HybP/f+r5q9XH/7+1+/6fzflv8A2Ja+OtMiIRMAAAAASUVORK5CYII="/> +</defs> +</svg> diff --git a/src/environments/environment.prod.ts b/src/environments/environment.prod.ts new file mode 100644 index 0000000000000000000000000000000000000000..5b11ceccd949ac79e4bc6a2a8a9f6fac854bbbe5 --- /dev/null +++ b/src/environments/environment.prod.ts @@ -0,0 +1,8 @@ +export const environment = { + production: true, + apiUrl: 'https://offshift.demo.applicature.com:4434', + tokenContractAddress: '0x97c35747AbE05EFD38A1Fc081a42600fdfB1e2F1', + balanceContractAddress: '0xe5cA520A565A8C974B372260Ba71224d815Cb3bC', + priceContractAddress: '0xA542a8Ed9E40eb6C39Dcc0b7d3293BA174C8DbE1', + infuraUrl: 'https://rinkeby.infura.io/v3/b2d86456364e424a95a435952cc766fb', +}; diff --git a/src/environments/environment.ts b/src/environments/environment.ts new file mode 100644 index 0000000000000000000000000000000000000000..61267a1c6376f793fa2ee5e1ba513b353447e566 --- /dev/null +++ b/src/environments/environment.ts @@ -0,0 +1,21 @@ +// This file can be replaced during build by using the `fileReplacements` array. +// `ng build` replaces `environment.ts` with `environment.prod.ts`. +// The list of file replacements can be found in `angular.json`. + +export const environment = { + production: false, + apiUrl: 'http://localhost:10010', + tokenContractAddress: '0x97c35747AbE05EFD38A1Fc081a42600fdfB1e2F1', + balanceContractAddress: '0xe5cA520A565A8C974B372260Ba71224d815Cb3bC', + priceContractAddress: '0xA542a8Ed9E40eb6C39Dcc0b7d3293BA174C8DbE1', + infuraUrl: 'https://rinkeby.infura.io/v3/b2d86456364e424a95a435952cc766fb', +}; + +/* + * For easier debugging in development mode, you can import the following file + * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. + * + * 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/plugins/zone-error'; // Included with Angular CLI. diff --git a/src/index.html b/src/index.html new file mode 100644 index 0000000000000000000000000000000000000000..a8d47a532973fea0729476cdb892c221785722be --- /dev/null +++ b/src/index.html @@ -0,0 +1,23 @@ +<!doctype html> +<html lang="en"> +<head> + <base href="/"> + <meta charset="UTF-8"> + <meta name="viewport" + content="width=device-width,initial-scale=1,shrink-to-fit=no"> + <meta http-equiv="X-UA-Compatible" content="ie=edge"> + + <link rel="icon" type="image/png" href="assets/images/favicon.png"> + + <title>offshift</title> +</head> +<body> + <div class="loader"> + <div class="loader__wrapper"> + <img class="loader__image" src="assets/images/loader.png" alt=""> + </div> + </div> + + <os-root></os-root> +</body> +</html> diff --git a/src/main.ts b/src/main.ts new file mode 100644 index 0000000000000000000000000000000000000000..db96f1162c5daf84d5ce78762f5784d2bba0c530 --- /dev/null +++ b/src/main.ts @@ -0,0 +1,12 @@ +import { enableProdMode } from '@angular/core'; +import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; + +import { AppModule } from './app/app.module'; +import { environment } from './environments/environment'; + +if (environment.production) { + enableProdMode(); +} + +platformBrowserDynamic().bootstrapModule(AppModule) + .catch((err) => console.error(err)); diff --git a/src/polyfills.ts b/src/polyfills.ts new file mode 100644 index 0000000000000000000000000000000000000000..85b5573c4fd498de6cfa0c1565f71fa4d8f8aa1a --- /dev/null +++ b/src/polyfills.ts @@ -0,0 +1,69 @@ +/** + * This file includes polyfills needed by Angular and is loaded before the app. + * You can add your own extra polyfills to this file. + * + * This file is divided into 2 sections: + * 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers. + * 2. Application imports. Files imported after ZoneJS that should be loaded before your main + * file. + * + * The current setup is for so-called "evergreen" browsers; the last versions of browsers that + * automatically update themselves. This includes recent versions of Safari, Chrome (including + * Opera), Edge on the desktop, and iOS and Chrome on mobile. + * + * Learn more in https://angular.io/guide/browser-support + */ + +/*************************************************************************************************** + * BROWSER POLYFILLS + */ + +/** + * By default, zone.js will patch all possible macroTask and DomEvents + * user can disable parts of macroTask/DomEvents patch by setting following flags + * because those flags need to be set before `zone.js` being loaded, and webpack + * will put import in the top of bundle, so user need to create a separate file + * in this directory (for example: zone-flags.ts), and put the following flags + * into that file, and then add the following code before importing zone.js. + * import './zone-flags'; + * + * The flags allowed in zone-flags.ts are listed here. + * + * The following flags will work for all browsers. + * + * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame + * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick + * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames + * + * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js + * with the following flag, it will bypass `zone.js` patch for IE/Edge + * + * (window as any).__Zone_enable_cross_context_check = true; + * + */ + +/*************************************************************************************************** + * Zone JS is required by default for Angular itself. + */ +import 'zone.js'; // Included with Angular CLI. + + +/*************************************************************************************************** + * APPLICATION IMPORTS + */ + +import process from 'process'; +import { Buffer } from 'buffer'; +import Web3 from 'web3'; + +declare global { + interface Window { + ethereum: any; + global: any; + web3: Web3 & any; + } +} + +window.process = process; +window.global = window; +window.global.Buffer = global.Buffer || Buffer; diff --git a/src/styles.scss b/src/styles.scss new file mode 100644 index 0000000000000000000000000000000000000000..66a9fa9156deb5329e1f8dce1d6100801027c30b --- /dev/null +++ b/src/styles.scss @@ -0,0 +1,122 @@ +@import "@fontsource/metropolis/all.css"; +@import "@fontsource/material-icons"; + +@import "~src/styles/variables"; +@import "./styles/theme"; + +html { + font-family: $offshift-font-family; + scroll-behavior: smooth; +} + +html, body { + height: 100%; +} + +body { + margin: 0; + -webkit-tap-highlight-color: transparent; + color: #C4CCDD; + background-color: #220E57; +} + +h1, h2, h3, h4, h5, h6 { + color: #C4CCDD; + font-family: $offshift-font-family; +} + +.loader { + position: fixed; + left: 0; + top: 0; + width: 100%; + height: 100%; + z-index: 9999; + background: #daccff; + + @keyframes rotation { + from { + transform: rotate(0deg); + } + to { + transform: rotate(359deg); + } + } + + & &__wrapper { + background-image: url('assets/images/3.png'); + background-color: #220e57; + background-size: 100% 100%; + } + + & &__wrapper { + width: 100%; + height: 100%; + display: flex; + justify-content: center; + align-items: center; + } + + & &__image { + animation: rotation 1s infinite linear; + max-width: 90px; + transform-origin: 50% 51%; + } +} + +.bg-images { + position: absolute; + top: 72px; + bottom: 0; + right: 0; + left: 0; + overflow: hidden; + + > img { + position: absolute; + opacity: 0.2; + } + + > img:nth-child(1) { + width: 149px; + height: 148px; + left: 373.45px; + top: 30px; + transform: rotate(55.59deg); + } + + > img:nth-child(2) { + width: 111.03px; + height: 110.28px; + right: 110px; + bottom: 100px; + transform: rotate(-6.14deg) + } + + > img:nth-child(3) { + width: 476px; + height: 475px; + left: -162px; + bottom: -162px; + } + + > img:nth-child(4) { + width: 517px; + height: 516px; + right: -182px; + top: -182px; + } + + > img:nth-child(5) { + width: 149px; + height: 148px; + right: 360px; + bottom: -50px; + transform: rotate(90.6deg); + } +} + +.simplebar-track.simplebar-vertical .simplebar-scrollbar:before { + opacity: unset; + background-color: $offshift-primary-color; +} diff --git a/src/styles/_theme.scss b/src/styles/_theme.scss new file mode 100644 index 0000000000000000000000000000000000000000..30f0a4c5f4edcf9d8d8c6450b89dea2fa2d23af5 --- /dev/null +++ b/src/styles/_theme.scss @@ -0,0 +1,7066 @@ +// saga-blue +@import "variables"; + +:root { + --surface-a: #FFFFFF; + --surface-b: #f8f9fa; + --surface-c: #e9ecef; + --surface-d: #dee2e6; + --surface-e: #FFFFFF; + --surface-f: #FFFFFF; + --text-color: #495057; + --text-color-secondary: #6c757d; + --primary-color: #2196F3; + --primary-color-text: #FFFFFF; + --font-family: $offshift-font-family; + --surface-0: #FFFFFF; + --surface-50: #FAFAFA; + --surface-100: #F5F5F5; + --surface-200: #EEEEEE; + --surface-300: #E0E0E0; + --surface-400: #BDBDBD; + --surface-500: #9E9E9E; + --surface-600: #757575; + --surface-700: #616161; + --surface-800: #424242; + --surface-900: #212121; + --gray-50: #FAFAFA; + --gray-100: #F5F5F5; + --gray-200: #EEEEEE; + --gray-300: #E0E0E0; + --gray-400: #BDBDBD; + --gray-500: #9E9E9E; + --gray-600: #757575; + --gray-700: #616161; + --gray-800: #424242; + --gray-900: #212121; + --content-padding: 1rem; + --inline-spacing: 0.5rem; + --border-radius: 3px; + --surface-ground: #f8f9fa; + --surface-section: #FFFFFF; + --surface-card: #FFFFFF; + --surface-overlay: #FFFFFF; + --surface-border: #dee2e6; + --surface-hover: #e9ecef; + --maskbg: rgba(0, 0, 0, 0.4); + --focus-ring: 0 0 0 0.2rem #a6d5fa; +} + +* { + box-sizing: border-box; + outline: none; + + *::before, + *::after { + box-sizing: border-box; + } +} + +.p-component { + font-family: $offshift-font-family; + font-size: 1rem; + font-weight: normal; +} + +.p-component-overlay { + background-color: rgba(0, 0, 0, 0.4); + transition-duration: 0.2s; +} + +.p-disabled, .p-component:disabled { + opacity: 0.6; +} + +.p-error { + color: #f44336; +} + +.p-text-secondary { + color: #6c757d; +} + +.pi { + font-size: 1rem; +} + +.p-link { + font-size: 1rem; + font-family: $offshift-font-family; + border-radius: 3px; +} + +.p-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-component-overlay-enter { + animation: p-component-overlay-enter-animation 150ms forwards; +} + +.p-component-overlay-leave { + animation: p-component-overlay-leave-animation 150ms forwards; +} + +@keyframes p-component-overlay-enter-animation { + from { + background-color: transparent; + } + to { + background-color: var(--maskbg); + } +} + +@keyframes p-component-overlay-leave-animation { + from { + background-color: var(--maskbg); + } + to { + background-color: transparent; + } +} + +:root { + --blue-50: #f4fafe; + --blue-100: #cae6fc; + --blue-200: #a0d2fa; + --blue-300: #75bef8; + --blue-400: #4baaf5; + --blue-500: #2196f3; + --blue-600: #1c80cf; + --blue-700: #1769aa; + --blue-800: #125386; + --blue-900: #0d3c61; + --green-50: #f6fbf6; + --green-100: #d4ecd5; + --green-200: #b2ddb4; + --green-300: #90cd93; + --green-400: #6ebe71; + --green-500: #4caf50; + --green-600: #419544; + --green-700: #357b38; + --green-800: #2a602c; + --green-900: #1e4620; + --yellow-50: #fffcf5; + --yellow-100: #fef0cd; + --yellow-200: #fde4a5; + --yellow-300: #fdd87d; + --yellow-400: #fccc55; + --yellow-500: #fbc02d; + --yellow-600: #d5a326; + --yellow-700: #b08620; + --yellow-800: #8a6a19; + --yellow-900: #644d12; + --cyan-50: #f2fcfd; + --cyan-100: #c2eff5; + --cyan-200: #91e2ed; + --cyan-300: #61d5e4; + --cyan-400: #30c9dc; + --cyan-500: #00bcd4; + --cyan-600: #00a0b4; + --cyan-700: #008494; + --cyan-800: #006775; + --cyan-900: #004b55; + --pink-50: #fef4f7; + --pink-100: #fac9da; + --pink-200: #f69ebc; + --pink-300: #f1749e; + --pink-400: #ed4981; + --pink-500: #e91e63; + --pink-600: #c61a54; + --pink-700: #a31545; + --pink-800: #801136; + --pink-900: #5d0c28; + --indigo-50: #f5f6fb; + --indigo-100: #d1d5ed; + --indigo-200: #acb4df; + --indigo-300: #8893d1; + --indigo-400: #6372c3; + --indigo-500: #3f51b5; + --indigo-600: #36459a; + --indigo-700: #2c397f; + --indigo-800: #232d64; + --indigo-900: #192048; + --teal-50: #f2faf9; + --teal-100: #c2e6e2; + --teal-200: #91d2cc; + --teal-300: #61beb5; + --teal-400: #30aa9f; + --teal-500: #009688; + --teal-600: #008074; + --teal-700: #00695f; + --teal-800: #00534b; + --teal-900: #003c36; + --orange-50: #fff8f2; + --orange-100: #fde0c2; + --orange-200: #fbc791; + --orange-300: #f9ae61; + --orange-400: #f79530; + --orange-500: #f57c00; + --orange-600: #d06900; + --orange-700: #ac5700; + --orange-800: #874400; + --orange-900: #623200; + --bluegray-50: #f7f9f9; + --bluegray-100: #d9e0e3; + --bluegray-200: #bbc7cd; + --bluegray-300: #9caeb7; + --bluegray-400: #7e96a1; + --bluegray-500: #607d8b; + --bluegray-600: #526a76; + --bluegray-700: #435861; + --bluegray-800: #35454c; + --bluegray-900: #263238; + --purple-50: #faf4fb; + --purple-100: #e7cbec; + --purple-200: #d4a2dd; + --purple-300: #c279ce; + --purple-400: #af50bf; + --purple-500: #9c27b0; + --purple-600: #852196; + --purple-700: #6d1b7b; + --purple-800: #561561; + --purple-900: #3e1046; + --red-50: #fff5f5; + --red-100: #ffd1ce; + --red-200: #ffada7; + --red-300: #ff8980; + --red-400: #ff6459; + --red-500: #ff4032; + --red-600: #d9362b; + --red-700: #b32d23; + --red-800: #8c231c; + --red-900: #661a14; +} + +.p-autocomplete .p-autocomplete-loader { + right: 0.5rem; +} + +.p-autocomplete.p-autocomplete-dd .p-autocomplete-loader { + right: 2.857rem; +} + +.p-autocomplete .p-autocomplete-multiple-container { + padding: 0.25rem 0.5rem; +} + +.p-autocomplete .p-autocomplete-multiple-container:not(.p-disabled):hover { + border-color: #2196F3; +} + +.p-autocomplete .p-autocomplete-multiple-container:not(.p-disabled).p-focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; + border-color: #2196F3; +} + +.p-autocomplete .p-autocomplete-multiple-container .p-autocomplete-input-token { + padding: 0.25rem 0; +} + +.p-autocomplete .p-autocomplete-multiple-container .p-autocomplete-input-token input { + font-family: $offshift-font-family; + font-size: 1rem; + color: #495057; + padding: 0; + margin: 0; +} + +.p-autocomplete .p-autocomplete-multiple-container .p-autocomplete-token { + padding: 0.25rem 0.5rem; + margin-right: 0.5rem; + background: #E3F2FD; + color: #495057; + border-radius: 3px; +} + +.p-autocomplete .p-autocomplete-multiple-container .p-autocomplete-token .p-autocomplete-token-icon { + margin-left: 0.5rem; +} + +p-autocomplete.ng-dirty.ng-invalid > .p-autocomplete > .p-inputtext { + border-color: #f44336; +} + +.p-autocomplete-panel { + background: #FFFFFF; + color: #495057; + border: 0 none; + border-radius: 3px; + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); +} + +.p-autocomplete-panel .p-autocomplete-items:not(.p-autocomplete-virtualscroll) { + padding: 0.5rem 0; +} + +.p-autocomplete-panel .p-autocomplete-items.p-autocomplete-virtualscroll .cdk-virtual-scroll-content-wrapper { + padding: 0.5rem 0; +} + +.p-autocomplete-panel .p-autocomplete-items .p-autocomplete-item { + margin: 0; + padding: 0.5rem 1rem; + border: 0 none; + color: #495057; + background: transparent; + transition: box-shadow 0.2s; + border-radius: 0; +} + +.p-autocomplete-panel .p-autocomplete-items .p-autocomplete-item:hover { + color: #495057; + background: #e9ecef; +} + +.p-autocomplete-panel .p-autocomplete-items .p-autocomplete-item.p-highlight { + color: #495057; + background: #E3F2FD; +} + +.p-autocomplete-panel .p-autocomplete-items .p-autocomplete-empty-message { + padding: 0.5rem 1rem; + color: #495057; + background: transparent; +} + +.p-autocomplete-panel .p-autocomplete-items .p-autocomplete-item-group { + margin: 0; + padding: 0.75rem 1rem; + color: #495057; + background: #FFFFFF; + font-weight: 600; +} + +p-calendar.ng-dirty.ng-invalid > .p-calendar > .p-inputtext { + border-color: #f44336; +} + +.p-datepicker { + padding: 0.5rem; + background: #FFFFFF; + color: #495057; + border: 1px solid #ced4da; + border-radius: 3px; +} + +.p-datepicker:not(.p-datepicker-inline) { + background: #FFFFFF; + border: 0 none; + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); +} + +.p-datepicker:not(.p-datepicker-inline) .p-datepicker-header { + background: #FFFFFF; +} + +.p-datepicker .p-datepicker-header { + padding: 0.5rem; + color: #495057; + background: #FFFFFF; + font-weight: 600; + margin: 0; + border-bottom: 1px solid #dee2e6; + border-top-right-radius: 3px; + border-top-left-radius: 3px; +} + +.p-datepicker .p-datepicker-header .p-datepicker-prev, +.p-datepicker .p-datepicker-header .p-datepicker-next { + width: 2rem; + height: 2rem; + color: #6c757d; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-datepicker .p-datepicker-header .p-datepicker-prev:enabled:hover, +.p-datepicker .p-datepicker-header .p-datepicker-next:enabled:hover { + color: #495057; + border-color: transparent; + background: #e9ecef; +} + +.p-datepicker .p-datepicker-header .p-datepicker-prev:focus, +.p-datepicker .p-datepicker-header .p-datepicker-next:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-datepicker .p-datepicker-header .p-datepicker-title { + line-height: 2rem; +} + +.p-datepicker .p-datepicker-header .p-datepicker-title select { + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; +} + +.p-datepicker .p-datepicker-header .p-datepicker-title select:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; + border-color: #2196F3; +} + +.p-datepicker .p-datepicker-header .p-datepicker-title .p-datepicker-month { + margin-right: 0.5rem; +} + +.p-datepicker table { + font-size: 1rem; + margin: 0.5rem 0; +} + +.p-datepicker table th { + padding: 0.5rem; +} + +.p-datepicker table th > span { + width: 2.5rem; + height: 2.5rem; +} + +.p-datepicker table td { + padding: 0.5rem; +} + +.p-datepicker table td > span { + width: 2.5rem; + height: 2.5rem; + border-radius: 50%; + transition: box-shadow 0.2s; + border: 1px solid transparent; +} + +.p-datepicker table td > span.p-highlight { + color: #495057; + background: #E3F2FD; +} + +.p-datepicker table td > span:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-datepicker table td.p-datepicker-today > span { + background: #ced4da; + color: #495057; + border-color: transparent; +} + +.p-datepicker table td.p-datepicker-today > span.p-highlight { + color: #495057; + background: #E3F2FD; +} + +.p-datepicker .p-datepicker-buttonbar { + padding: 1rem 0; + border-top: 1px solid #dee2e6; +} + +.p-datepicker .p-datepicker-buttonbar .p-button { + width: auto; +} + +.p-datepicker .p-timepicker { + border-top: 1px solid #dee2e6; + padding: 0.5rem; +} + +.p-datepicker .p-timepicker button { + width: 2rem; + height: 2rem; + color: #6c757d; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-datepicker .p-timepicker button:enabled:hover { + color: #495057; + border-color: transparent; + background: #e9ecef; +} + +.p-datepicker .p-timepicker button:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-datepicker .p-timepicker button:last-child { + margin-top: 0.2em; +} + +.p-datepicker .p-timepicker span { + font-size: 1.25rem; +} + +.p-datepicker .p-timepicker > div { + padding: 0 0.5rem; +} + +.p-datepicker.p-datepicker-timeonly .p-timepicker { + border-top: 0 none; +} + +.p-datepicker .p-monthpicker { + margin: 0.5rem 0; +} + +.p-datepicker .p-monthpicker .p-monthpicker-month { + padding: 0.5rem; + transition: box-shadow 0.2s; + border-radius: 3px; +} + +.p-datepicker .p-monthpicker .p-monthpicker-month.p-highlight { + color: #495057; + background: #E3F2FD; +} + +.p-datepicker.p-datepicker-multiple-month .p-datepicker-group { + border-right: 1px solid #dee2e6; + padding-right: 0.5rem; + padding-left: 0.5rem; + padding-top: 0; + padding-bottom: 0; +} + +.p-datepicker.p-datepicker-multiple-month .p-datepicker-group:first-child { + padding-left: 0; +} + +.p-datepicker.p-datepicker-multiple-month .p-datepicker-group:last-child { + padding-right: 0; + border-right: 0 none; +} + +.p-datepicker:not(.p-disabled) table td span:not(.p-highlight):not(.p-disabled):hover { + background: #e9ecef; +} + +.p-datepicker:not(.p-disabled) table td span:not(.p-highlight):not(.p-disabled):focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-datepicker:not(.p-disabled) .p-monthpicker .p-monthpicker-month:not(.p-highlight):not(.p-disabled):hover { + background: #e9ecef; +} + +.p-datepicker:not(.p-disabled) .p-monthpicker .p-monthpicker-month:not(.p-highlight):not(.p-disabled):focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +@media screen and (max-width: 769px) { + .p-datepicker table th, .p-datepicker table td { + padding: 0; + } +} + +.p-cascadeselect { + background: #FFFFFF; + border: 1px solid #ced4da; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; + border-radius: 3px; +} + +.p-cascadeselect:not(.p-disabled):hover { + border-color: #2196F3; +} + +.p-cascadeselect:not(.p-disabled).p-focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; + border-color: #2196F3; +} + +.p-cascadeselect .p-cascadeselect-label { + background: transparent; + border: 0 none; + padding: 0.5rem 0.5rem; +} + +.p-cascadeselect .p-cascadeselect-label.p-placeholder { + color: #6c757d; +} + +.p-cascadeselect .p-cascadeselect-label:enabled:focus { + outline: 0 none; + box-shadow: none; +} + +.p-cascadeselect .p-cascadeselect-trigger { + background: transparent; + color: #6c757d; + width: 2.357rem; + border-top-right-radius: 3px; + border-bottom-right-radius: 3px; +} + +.p-cascadeselect-panel { + background: #FFFFFF; + color: #495057; + border: 0 none; + border-radius: 3px; + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); +} + +.p-cascadeselect-panel .p-cascadeselect-items { + padding: 0.5rem 0; +} + +.p-cascadeselect-panel .p-cascadeselect-items .p-cascadeselect-item { + margin: 0; + border: 0 none; + color: #495057; + background: transparent; + transition: box-shadow 0.2s; + border-radius: 0; +} + +.p-cascadeselect-panel .p-cascadeselect-items .p-cascadeselect-item .p-cascadeselect-item-content { + padding: 0.5rem 1rem; +} + +.p-cascadeselect-panel .p-cascadeselect-items .p-cascadeselect-item .p-cascadeselect-item-content:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 0.15rem #a6d5fa; +} + +.p-cascadeselect-panel .p-cascadeselect-items .p-cascadeselect-item.p-highlight { + color: #495057; + background: #E3F2FD; +} + +.p-cascadeselect-panel .p-cascadeselect-items .p-cascadeselect-item:not(.p-highlight):not(.p-disabled):hover { + color: #495057; + background: #e9ecef; +} + +.p-cascadeselect-panel .p-cascadeselect-items .p-cascadeselect-item .p-cascadeselect-group-icon { + font-size: 0.875rem; +} + +p-cascadeselect.ng-dirty.ng-invalid > .p-cascadeselect { + border-color: #f44336; +} + +.p-input-filled .p-cascadeselect { + background: #f8f9fa; +} + +.p-input-filled .p-cascadeselect:not(.p-disabled):hover { + background-color: #f8f9fa; +} + +.p-input-filled .p-cascadeselect:not(.p-disabled).p-focus { + background-color: #FFFFFF; +} + +.p-checkbox { + width: 20px; + height: 20px; +} + +.p-checkbox .p-checkbox-box { + border: 2px solid $offshift-primary-color; + background: #FFFFFF; + width: 20px; + height: 20px; + color: #495057; + border-radius: 3px; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; +} + +.p-checkbox .p-checkbox-box .p-checkbox-icon { + transition-duration: 0.2s; + color: #FFFFFF; + font-size: 14px; +} + +.p-checkbox .p-checkbox-box.p-highlight { + border-color: $offshift-primary-color-focus; + background: $offshift-primary-color-focus; +} + +.p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box:hover { + border-color: $offshift-primary-color-hover; +} + +.p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-focus { + outline: 0 none; + outline-offset: 0; + //box-shadow: 0 0 0 0.2rem #a6d5fa; + border-color: $offshift-primary-color-focus; +} + +.p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-highlight:hover { + border-color: $offshift-primary-color-hover; + background: $offshift-primary-color-hover; + color: #FFFFFF; +} + +p-checkbox.ng-dirty.ng-invalid > .p-checkbox > .p-checkbox-box { + border-color: #f44336; +} + +.p-input-filled .p-checkbox .p-checkbox-box { + background-color: #f8f9fa; +} + +.p-input-filled .p-checkbox .p-checkbox-box.p-highlight { + background: #2196F3; +} + +.p-input-filled .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box:hover { + background-color: #f8f9fa; +} + +.p-input-filled .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-highlight:hover { + background: #0b7ad1; +} + +.p-checkbox-label { + margin-left: 0.5rem; +} + +.p-chips .p-chips-multiple-container { + padding: 0.25rem 0.5rem; +} + +.p-chips .p-chips-multiple-container:not(.p-disabled):hover { + border-color: #2196F3; +} + +.p-chips .p-chips-multiple-container:not(.p-disabled).p-focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; + border-color: #2196F3; +} + +.p-chips .p-chips-multiple-container .p-chips-token { + padding: 0.25rem 0.5rem; + margin-right: 0.5rem; + background: #E3F2FD; + color: #495057; + border-radius: 3px; +} + +.p-chips .p-chips-multiple-container .p-chips-token .p-chips-token-icon { + margin-left: 0.5rem; +} + +.p-chips .p-chips-multiple-container .p-chips-input-token { + padding: 0.25rem 0; +} + +.p-chips .p-chips-multiple-container .p-chips-input-token input { + font-family: $offshift-font-family; + font-size: 1rem; + color: #495057; + padding: 0; + margin: 0; +} + +p-chips.ng-dirty.ng-invalid > .p-chips > .p-inputtext { + border-color: #f44336; +} + +.p-colorpicker-preview, +.p-fluid .p-colorpicker-preview.p-inputtext { + width: 2rem; + height: 2rem; +} + +.p-colorpicker-panel { + background: #323232; + border-color: 1px solid #191919; +} + +.p-colorpicker-panel .p-colorpicker-color-handle, +.p-colorpicker-panel .p-colorpicker-hue-handle { + border-color: #FFFFFF; +} + +.p-colorpicker-overlay-panel { + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); +} + +.p-dropdown { + background: #FFFFFF; + border: 1px solid #ced4da; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; + border-radius: 3px; +} + +.p-dropdown:not(.p-disabled):hover { + border-color: #2196F3; +} + +.p-dropdown:not(.p-disabled).p-focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; + border-color: #2196F3; +} + +.p-dropdown.p-dropdown-clearable .p-dropdown-label { + padding-right: 1.5rem; +} + +.p-dropdown .p-dropdown-label { + background: transparent; + border: 0 none; +} + +.p-dropdown .p-dropdown-label.p-placeholder { + color: #6c757d; +} + +.p-dropdown .p-dropdown-label:enabled:focus { + outline: 0 none; + box-shadow: none; +} + +.p-dropdown .p-dropdown-trigger { + background: transparent; + color: #6c757d; + width: 2.357rem; + border-top-right-radius: 3px; + border-bottom-right-radius: 3px; +} + +.p-dropdown .p-dropdown-clear-icon { + color: #6c757d; + right: 2.357rem; +} + +.p-dropdown-panel { + background: #FFFFFF; + color: #495057; + border: 0 none; + border-radius: 3px; + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); +} + +.p-dropdown-panel .p-dropdown-header { + padding: 0.5rem 1rem; + border-bottom: 0 none; + color: #495057; + background: #f8f9fa; + margin: 0; + border-top-right-radius: 3px; + border-top-left-radius: 3px; +} + +.p-dropdown-panel .p-dropdown-header .p-dropdown-filter { + padding-right: 1.5rem; + margin-right: -1.5rem; +} + +.p-dropdown-panel .p-dropdown-header .p-dropdown-filter-icon { + right: 0.5rem; + color: #6c757d; +} + +.p-dropdown-panel .p-dropdown-items:not(.p-dropdown-virtualscroll) { + padding: 0.5rem 0; +} + +.p-dropdown-panel .p-dropdown-items.p-dropdown-virtualscroll .cdk-virtual-scroll-content-wrapper { + padding: 0.5rem 0; +} + +.p-dropdown-panel .p-dropdown-items .p-dropdown-item { + margin: 0; + padding: 0.5rem 1rem; + border: 0 none; + color: #495057; + background: transparent; + transition: box-shadow 0.2s; + border-radius: 0; +} + +.p-dropdown-panel .p-dropdown-items .p-dropdown-item.p-highlight { + color: #495057; + background: #E3F2FD; +} + +.p-dropdown-panel .p-dropdown-items .p-dropdown-item:not(.p-highlight):not(.p-disabled):hover { + color: #495057; + background: #e9ecef; +} + +.p-dropdown-panel .p-dropdown-items .p-dropdown-empty-message { + padding: 0.5rem 1rem; + color: #495057; + background: transparent; +} + +.p-dropdown-panel .p-dropdown-items .p-dropdown-item-group { + margin: 0; + padding: 0.75rem 1rem; + color: #495057; + background: #FFFFFF; + font-weight: 600; +} + +p-dropdown.ng-dirty.ng-invalid > .p-dropdown { + border-color: #f44336; +} + +.p-input-filled .p-dropdown { + background: #f8f9fa; +} + +.p-input-filled .p-dropdown:not(.p-disabled):hover { + background-color: #f8f9fa; +} + +.p-input-filled .p-dropdown:not(.p-disabled).p-focus { + background-color: #FFFFFF; +} + +.p-editor-container .p-editor-toolbar { + background: #f8f9fa; + border-top-right-radius: 3px; + border-top-left-radius: 3px; +} + +.p-editor-container .p-editor-toolbar.ql-snow { + border: 1px solid #dee2e6; +} + +.p-editor-container .p-editor-toolbar.ql-snow .ql-stroke { + stroke: #6c757d; +} + +.p-editor-container .p-editor-toolbar.ql-snow .ql-fill { + fill: #6c757d; +} + +.p-editor-container .p-editor-toolbar.ql-snow .ql-picker .ql-picker-label { + border: 0 none; + color: #6c757d; +} + +.p-editor-container .p-editor-toolbar.ql-snow .ql-picker .ql-picker-label:hover { + color: #495057; +} + +.p-editor-container .p-editor-toolbar.ql-snow .ql-picker .ql-picker-label:hover .ql-stroke { + stroke: #495057; +} + +.p-editor-container .p-editor-toolbar.ql-snow .ql-picker .ql-picker-label:hover .ql-fill { + fill: #495057; +} + +.p-editor-container .p-editor-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label { + color: #495057; +} + +.p-editor-container .p-editor-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke { + stroke: #495057; +} + +.p-editor-container .p-editor-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill { + fill: #495057; +} + +.p-editor-container .p-editor-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options { + background: #FFFFFF; + border: 0 none; + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); + border-radius: 3px; + padding: 0.5rem 0; +} + +.p-editor-container .p-editor-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options .ql-picker-item { + color: #495057; +} + +.p-editor-container .p-editor-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options .ql-picker-item:hover { + color: #495057; + background: #e9ecef; +} + +.p-editor-container .p-editor-toolbar.ql-snow .ql-picker.ql-expanded:not(.ql-icon-picker) .ql-picker-item { + padding: 0.5rem 1rem; +} + +.p-editor-container .p-editor-content { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} + +.p-editor-container .p-editor-content.ql-snow { + border: 1px solid #dee2e6; +} + +.p-editor-container .p-editor-content .ql-editor { + background: #FFFFFF; + color: #495057; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} + +.p-editor-container .ql-snow.ql-toolbar button:hover, +.p-editor-container .ql-snow.ql-toolbar button:focus { + color: #495057; +} + +.p-editor-container .ql-snow.ql-toolbar button:hover .ql-stroke, +.p-editor-container .ql-snow.ql-toolbar button:focus .ql-stroke { + stroke: #495057; +} + +.p-editor-container .ql-snow.ql-toolbar button:hover .ql-fill, +.p-editor-container .ql-snow.ql-toolbar button:focus .ql-fill { + fill: #495057; +} + +.p-editor-container .ql-snow.ql-toolbar button.ql-active, +.p-editor-container .ql-snow.ql-toolbar .ql-picker-label.ql-active, +.p-editor-container .ql-snow.ql-toolbar .ql-picker-item.ql-selected { + color: #2196F3; +} + +.p-editor-container .ql-snow.ql-toolbar button.ql-active .ql-stroke, +.p-editor-container .ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke, +.p-editor-container .ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke { + stroke: #2196F3; +} + +.p-editor-container .ql-snow.ql-toolbar button.ql-active .ql-fill, +.p-editor-container .ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill, +.p-editor-container .ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill { + fill: #2196F3; +} + +.p-editor-container .ql-snow.ql-toolbar button.ql-active .ql-picker-label, +.p-editor-container .ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-picker-label, +.p-editor-container .ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-picker-label { + color: #2196F3; +} + +.p-inputgroup-addon { + background: #e9ecef; + color: #6c757d; + border-top: 1px solid #ced4da; + border-left: 1px solid #ced4da; + border-bottom: 1px solid #ced4da; + padding: 0.5rem 0.5rem; + min-width: 2.357rem; +} + +.p-inputgroup-addon:last-child { + border-right: 1px solid #ced4da; +} + +.p-inputgroup > .p-component, +.p-inputgroup > .p-element, +.p-inputgroup > .p-inputwrapper > .p-component > .p-inputtext, +.p-inputgroup > .p-float-label > .p-component { + border-radius: 0; + margin: 0; +} + +.p-inputgroup > .p-component + .p-inputgroup-addon, +.p-inputgroup > .p-element + .p-inputgroup-addon, +.p-inputgroup > .p-inputwrapper > .p-component > .p-inputtext + .p-inputgroup-addon, +.p-inputgroup > .p-float-label > .p-component + .p-inputgroup-addon { + border-left: 0 none; +} + +.p-inputgroup > .p-component:focus, +.p-inputgroup > .p-element:focus, +.p-inputgroup > .p-inputwrapper > .p-component > .p-inputtext:focus, +.p-inputgroup > .p-float-label > .p-component:focus { + z-index: 1; +} + +.p-inputgroup > .p-component:focus ~ label, +.p-inputgroup > .p-element:focus ~ label, +.p-inputgroup > .p-inputwrapper > .p-component > .p-inputtext:focus ~ label, +.p-inputgroup > .p-float-label > .p-component:focus ~ label { + z-index: 1; +} + +.p-inputgroup-addon:first-child, +.p-inputgroup button:first-child, +.p-inputgroup input:first-child, +.p-inputgroup > .p-inputwrapper:first-child > .p-component, +.p-inputgroup > .p-inputwrapper:first-child > .p-component > .p-inputtext { + border-top-left-radius: 3px; + border-bottom-left-radius: 3px; +} + +.p-inputgroup .p-float-label:first-child input { + border-top-left-radius: 3px; + border-bottom-left-radius: 3px; +} + +.p-inputgroup-addon:last-child, +.p-inputgroup button:last-child, +.p-inputgroup input:last-child, +.p-inputgroup > .p-inputwrapper:last-child > .p-component, +.p-inputgroup > .p-inputwrapper:last-child > .p-component > .p-inputtext { + border-top-right-radius: 3px; + border-bottom-right-radius: 3px; +} + +.p-inputgroup .p-float-label:last-child input { + border-top-right-radius: 3px; + border-bottom-right-radius: 3px; +} + +.p-fluid .p-inputgroup .p-button { + width: auto; +} + +.p-fluid .p-inputgroup .p-button.p-button-icon-only { + width: 2.357rem; +} + +p-inputmask.ng-dirty.ng-invalid > .p-inputtext { + border-color: #f44336; +} + +p-inputnumber.ng-dirty.ng-invalid > .p-inputnumber > .p-inputtext { + border-color: #f44336; +} + +.p-inputswitch { + width: 3rem; + height: 1.75rem; +} + +.p-inputswitch .p-inputswitch-slider { + background: #1B0D3D; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; + border-radius: 30px; +} + +.p-inputswitch .p-inputswitch-slider:before { + background: #FFFFFF; + width: 1.25rem; + height: 1.25rem; + left: 0.25rem; + margin-top: -0.625rem; + border-radius: 50%; + transition-duration: 0.2s; +} + +.p-inputswitch.p-inputswitch-checked .p-inputswitch-slider:before { + transform: translateX(1.25rem); +} + +.p-inputswitch.p-focus .p-inputswitch-slider { + outline: 0 none; + outline-offset: 0; + //box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-inputswitch:not(.p-disabled):hover .p-inputswitch-slider { + background: #1B0D3D; +} + +.p-inputswitch.p-inputswitch-checked .p-inputswitch-slider { + background: #1B0D3D; +} + +.p-inputswitch.p-inputswitch-checked .p-inputswitch-slider:before { + background: #FFFFFF; +} + +.p-inputswitch.p-inputswitch-checked:not(.p-disabled):hover .p-inputswitch-slider { + background: #1B0D3D; +} + +p-inputswitch.ng-dirty.ng-invalid > .p-inputswitch { + border-color: #f44336; +} + +.p-inputtext { + font-family: $offshift-font-family; + font-size: 1rem; + color: #1B0D3D; + background: #FFFFFF; + padding: 0.5rem 0.5rem; + border: 1px solid $offshift-primary-color; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; + appearance: none; + border-radius: 2px; +} + +.p-inputtext:enabled:hover { + border-color: $offshift-primary-color-hover; +} + +.p-inputtext:enabled:focus { + outline: 0 none; + outline-offset: 0; + //box-shadow: 0 0 0 0.2rem #a6d5fa; + border-color: $offshift-primary-color-focus; +} + +.p-inputtext.ng-dirty.ng-invalid { + border-color: #f44336; +} + +.p-inputtext.p-inputtext-sm { + font-size: 0.875rem; + padding: 0.4375rem 0.4375rem; +} + +.p-inputtext.p-inputtext-lg { + font-size: 1.25rem; + padding: 0.625rem 0.625rem; +} + +.p-float-label > label { + left: 0.5rem; + color: #6c757d; + transition-duration: 0.2s; +} + +.p-float-label > .ng-invalid.ng-dirty + label { + color: #f44336; +} + +.p-input-icon-left > i:first-of-type { + left: 0.5rem; + color: #6c757d; +} + +.p-input-icon-left > .p-inputtext { + padding-left: 2rem; +} + +.p-input-icon-left.p-float-label > label { + left: 2rem; +} + +.p-input-icon-right > i:last-of-type { + right: 0.5rem; + color: #6c757d; +} + +.p-input-icon-right > .p-inputtext { + padding-right: 2rem; +} + +::-webkit-input-placeholder { + color: #6c757d; +} + +:-moz-placeholder { + color: #6c757d; +} + +::-moz-placeholder { + color: #6c757d; +} + +:-ms-input-placeholder { + color: #6c757d; +} + +.p-input-filled .p-inputtext { + background-color: #f8f9fa; +} + +.p-input-filled .p-inputtext:enabled:hover { + background-color: #f8f9fa; +} + +.p-input-filled .p-inputtext:enabled:focus { + background-color: #FFFFFF; +} + +.p-inputtext-sm .p-inputtext { + font-size: 0.875rem; + padding: 0.4375rem 0.4375rem; +} + +.p-inputtext-lg .p-inputtext { + font-size: 1.25rem; + padding: 0.625rem 0.625rem; +} + +.p-listbox { + background: #FFFFFF; + color: #495057; + border: 1px solid #ced4da; + border-radius: 3px; +} + +.p-listbox .p-listbox-header { + padding: 0.5rem 1rem; + border-bottom: 0 none; + color: #495057; + background: #f8f9fa; + margin: 0; + border-top-right-radius: 3px; + border-top-left-radius: 3px; +} + +.p-listbox .p-listbox-header .p-listbox-filter { + padding-right: 1.5rem; +} + +.p-listbox .p-listbox-header .p-listbox-filter-icon { + right: 0.5rem; + color: #6c757d; +} + +.p-listbox .p-listbox-header .p-checkbox { + margin-right: 0.5rem; +} + +.p-listbox .p-listbox-list { + padding: 0.5rem 0; +} + +.p-listbox .p-listbox-list .p-listbox-item { + margin: 0; + padding: 0.5rem 1rem; + border: 0 none; + color: #495057; + transition: box-shadow 0.2s; + border-radius: 0; +} + +.p-listbox .p-listbox-list .p-listbox-item.p-highlight { + color: #495057; + background: #E3F2FD; +} + +.p-listbox .p-listbox-list .p-listbox-item:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 0.15rem #a6d5fa; +} + +.p-listbox .p-listbox-list .p-listbox-item .p-checkbox { + margin-right: 0.5rem; +} + +.p-listbox .p-listbox-list .p-listbox-item-group { + margin: 0; + padding: 0.75rem 1rem; + color: #495057; + background: #FFFFFF; + font-weight: 600; +} + +.p-listbox .p-listbox-list .p-listbox-empty-message { + padding: 0.5rem 1rem; + color: #495057; + background: transparent; +} + +.p-listbox:not(.p-disabled) .p-listbox-item:not(.p-highlight):not(.p-disabled):hover { + color: #495057; + background: #e9ecef; +} + +p-listbox.ng-dirty.ng-invalid > .p-listbox { + border-color: #f44336; +} + +.p-multiselect { + background: #FFFFFF; + border: 1px solid #ced4da; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; + border-radius: 3px; +} + +.p-multiselect:not(.p-disabled):hover { + border-color: #2196F3; +} + +.p-multiselect:not(.p-disabled).p-focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; + border-color: #2196F3; +} + +.p-multiselect .p-multiselect-label { + padding: 0.5rem 0.5rem; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; +} + +.p-multiselect .p-multiselect-label.p-placeholder { + color: #6c757d; +} + +.p-multiselect.p-multiselect-chip .p-multiselect-token { + padding: 0.25rem 0.5rem; + margin-right: 0.5rem; + background: #E3F2FD; + color: #495057; + border-radius: 3px; +} + +.p-multiselect.p-multiselect-chip .p-multiselect-token .p-multiselect-token-icon { + margin-left: 0.5rem; +} + +.p-multiselect .p-multiselect-trigger { + background: transparent; + color: #6c757d; + width: 2.357rem; + border-top-right-radius: 3px; + border-bottom-right-radius: 3px; +} + +.p-inputwrapper-filled .p-multiselect.p-multiselect-chip .p-multiselect-label { + padding: 0.25rem 0.5rem; +} + +.p-multiselect-panel { + background: #FFFFFF; + color: #495057; + border: 0 none; + border-radius: 3px; + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); +} + +.p-multiselect-panel .p-multiselect-header { + padding: 0.5rem 1rem; + border-bottom: 0 none; + color: #495057; + background: #f8f9fa; + margin: 0; + border-top-right-radius: 3px; + border-top-left-radius: 3px; +} + +.p-multiselect-panel .p-multiselect-header .p-multiselect-filter-container .p-inputtext { + padding-right: 1.5rem; +} + +.p-multiselect-panel .p-multiselect-header .p-multiselect-filter-container .p-multiselect-filter-icon { + right: 0.5rem; + color: #6c757d; +} + +.p-multiselect-panel .p-multiselect-header .p-checkbox { + margin-right: 0.5rem; +} + +.p-multiselect-panel .p-multiselect-header .p-multiselect-close { + margin-left: 0.5rem; + width: 2rem; + height: 2rem; + color: #6c757d; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-multiselect-panel .p-multiselect-header .p-multiselect-close:enabled:hover { + color: #495057; + border-color: transparent; + background: #e9ecef; +} + +.p-multiselect-panel .p-multiselect-header .p-multiselect-close:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-multiselect-panel .p-multiselect-items:not(.p-multiselect-virtualscroll) { + padding: 0.5rem 0; +} + +.p-multiselect-panel .p-multiselect-items.p-multiselect-virtualscroll .cdk-virtual-scroll-content-wrapper { + padding: 0.5rem 0; +} + +.p-multiselect-panel .p-multiselect-items .p-multiselect-item { + margin: 0; + padding: 0.5rem 1rem; + border: 0 none; + color: #495057; + background: transparent; + transition: box-shadow 0.2s; + border-radius: 0; +} + +.p-multiselect-panel .p-multiselect-items .p-multiselect-item.p-highlight { + color: #495057; + background: #E3F2FD; +} + +.p-multiselect-panel .p-multiselect-items .p-multiselect-item:not(.p-highlight):not(.p-disabled):hover { + color: #495057; + background: #e9ecef; +} + +.p-multiselect-panel .p-multiselect-items .p-multiselect-item:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 0.15rem #a6d5fa; +} + +.p-multiselect-panel .p-multiselect-items .p-multiselect-item .p-checkbox { + margin-right: 0.5rem; +} + +.p-multiselect-panel .p-multiselect-items .p-multiselect-item-group { + margin: 0; + padding: 0.75rem 1rem; + color: #495057; + background: #FFFFFF; + font-weight: 600; +} + +.p-multiselect-panel .p-multiselect-items .p-multiselect-empty-message { + padding: 0.5rem 1rem; + color: #495057; + background: transparent; +} + +p-multiselect.ng-dirty.ng-invalid > .p-multiselect { + border-color: #f44336; +} + +.p-input-filled .p-multiselect { + background: #f8f9fa; +} + +.p-input-filled .p-multiselect:not(.p-disabled):hover { + background-color: #f8f9fa; +} + +.p-input-filled .p-multiselect:not(.p-disabled).p-focus { + background-color: #FFFFFF; +} + +.p-password.p-invalid.p-component > .p-inputtext { + border-color: #f44336; +} + +.p-password-panel { + padding: 1rem; + background: #FFFFFF; + color: #495057; + border: 0 none; + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); + border-radius: 3px; +} + +.p-password-panel .p-password-meter { + margin-bottom: 0.5rem; + background: #dee2e6; +} + +.p-password-panel .p-password-meter .p-password-strength.weak { + background: #D32F2F; +} + +.p-password-panel .p-password-meter .p-password-strength.medium { + background: #FBC02D; +} + +.p-password-panel .p-password-meter .p-password-strength.strong { + background: #689F38; +} + +.p-radiobutton { + width: 20px; + height: 20px; +} + +.p-radiobutton .p-radiobutton-box { + border: 2px solid #ced4da; + background: #FFFFFF; + width: 20px; + height: 20px; + color: #495057; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; +} + +.p-radiobutton .p-radiobutton-box:not(.p-disabled):not(.p-highlight):hover { + border-color: #2196F3; +} + +.p-radiobutton .p-radiobutton-box:not(.p-disabled).p-focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; + border-color: #2196F3; +} + +.p-radiobutton .p-radiobutton-box .p-radiobutton-icon { + width: 12px; + height: 12px; + transition-duration: 0.2s; + background-color: #FFFFFF; +} + +.p-radiobutton .p-radiobutton-box.p-highlight { + border-color: #2196F3; + background: #2196F3; +} + +.p-radiobutton .p-radiobutton-box.p-highlight:not(.p-disabled):hover { + border-color: #0b7ad1; + background: #0b7ad1; + color: #FFFFFF; +} + +p-radiobutton.ng-dirty.ng-invalid > .p-radiobutton > .p-radiobutton-box { + border-color: #f44336; +} + +.p-input-filled .p-radiobutton .p-radiobutton-box { + background-color: #f8f9fa; +} + +.p-input-filled .p-radiobutton .p-radiobutton-box:not(.p-disabled):hover { + background-color: #f8f9fa; +} + +.p-input-filled .p-radiobutton .p-radiobutton-box.p-highlight { + background: #2196F3; +} + +.p-input-filled .p-radiobutton .p-radiobutton-box.p-highlight:not(.p-disabled):hover { + background: #0b7ad1; +} + +.p-radiobutton-label { + margin-left: 0.5rem; +} + +.p-rating .p-rating-icon { + color: #495057; + margin-left: 0.5rem; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; + font-size: 1.143rem; +} + +.p-rating .p-rating-icon.p-rating-cancel { + color: #e74c3c; +} + +.p-rating .p-rating-icon:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-rating .p-rating-icon:first-child { + margin-left: 0; +} + +.p-rating .p-rating-icon.pi-star { + color: #2196F3; +} + +.p-rating:not(.p-disabled):not(.p-readonly) .p-rating-icon:hover { + color: #2196F3; +} + +.p-rating:not(.p-disabled):not(.p-readonly) .p-rating-icon.p-rating-cancel:hover { + color: #c0392b; +} + +.p-selectbutton .p-button { + width: 100%; + white-space: nowrap; + background: rgba(107, 57, 250, 0.07); + border: 0; + color: #6B39FA; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; + + &:not(:first-of-type):not(:last-of-type) { + border-right: 1px solid #6B39FA; + } +} + +.p-selectbutton .p-button .p-button-icon-left, +.p-selectbutton .p-button .p-button-icon-right { + color: #8961fb; +} + +.p-selectbutton .p-button:not(.p-disabled):not(.p-highlight):hover { + background: #8961fb; + border-color: #8961fb; + color: #FFFFFF; +} + +.p-selectbutton .p-button:not(.p-disabled):not(.p-highlight):hover .p-button-icon-left, +.p-selectbutton .p-button:not(.p-disabled):not(.p-highlight):hover .p-button-icon-right { + color: #FFFFFF; +} + +.p-selectbutton .p-button.p-highlight { + background: #6b39fa; + border-color: #6b39fa; + color: #FFFFFF; +} + +.p-selectbutton .p-button.p-highlight .p-button-icon-left, +.p-selectbutton .p-button.p-highlight .p-button-icon-right { + color: #FFFFFF; +} + +.p-selectbutton .p-button.p-highlight:hover { + background: #8961fb; + border-color: #8961fb; + color: #FFFFFF; +} + +.p-selectbutton .p-button.p-highlight:hover .p-button-icon-left, +.p-selectbutton .p-button.p-highlight:hover .p-button-icon-right { + color: #FFFFFF; +} + +p-selectbutton.ng-dirty.ng-invalid > .p-selectbutton > .p-button { + border-color: #f44336; +} + +.p-slider { + background: #dee2e6; + border: 0 none; + border-radius: 3px; +} + +.p-slider.p-slider-horizontal { + height: 0.286rem; +} + +.p-slider.p-slider-horizontal .p-slider-handle { + margin-top: -0.5715rem; + margin-left: -0.5715rem; +} + +.p-slider.p-slider-vertical { + width: 0.286rem; +} + +.p-slider.p-slider-vertical .p-slider-handle { + margin-left: -0.5715rem; + margin-bottom: -0.5715rem; +} + +.p-slider .p-slider-handle { + height: 1.143rem; + width: 1.143rem; + background: #FFFFFF; + border: 2px solid #2196F3; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; +} + +.p-slider .p-slider-handle:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-slider .p-slider-range { + background: #2196F3; +} + +.p-slider:not(.p-disabled) .p-slider-handle:hover { + background: #2196F3; + border-color: #2196F3; +} + +.p-slider.p-slider-animate.p-slider-horizontal .p-slider-handle { + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s, left 0.2s; +} + +.p-slider.p-slider-animate.p-slider-horizontal .p-slider-range { + transition: width 0.2s; +} + +.p-slider.p-slider-animate.p-slider-vertical .p-slider-handle { + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s, bottom 0.2s; +} + +.p-slider.p-slider-animate.p-slider-vertical .p-slider-range { + transition: height 0.2s; +} + +.p-togglebutton.p-button { + background: #FFFFFF; + border: 1px solid #ced4da; + color: #495057; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; +} + +.p-togglebutton.p-button .p-button-icon-left, +.p-togglebutton.p-button .p-button-icon-right { + color: #6c757d; +} + +.p-togglebutton.p-button:not(.p-disabled):not(.p-highlight):hover { + background: #e9ecef; + border-color: #ced4da; + color: #495057; +} + +.p-togglebutton.p-button:not(.p-disabled):not(.p-highlight):hover .p-button-icon-left, +.p-togglebutton.p-button:not(.p-disabled):not(.p-highlight):hover .p-button-icon-right { + color: #6c757d; +} + +.p-togglebutton.p-button.p-highlight { + background: #2196F3; + border-color: #2196F3; + color: #FFFFFF; +} + +.p-togglebutton.p-button.p-highlight .p-button-icon-left, +.p-togglebutton.p-button.p-highlight .p-button-icon-right { + color: #FFFFFF; +} + +.p-togglebutton.p-button.p-highlight:hover { + background: #0d89ec; + border-color: #0d89ec; + color: #FFFFFF; +} + +.p-togglebutton.p-button.p-highlight:hover .p-button-icon-left, +.p-togglebutton.p-button.p-highlight:hover .p-button-icon-right { + color: #FFFFFF; +} + +p-togglebutton.ng-dirty.ng-invalid > .p-togglebutton.p-button { + border-color: #f44336; +} + +.p-treeselect { + background: #FFFFFF; + border: 1px solid #ced4da; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; + border-radius: 3px; +} + +.p-treeselect:not(.p-disabled):hover { + border-color: #2196F3; +} + +.p-treeselect:not(.p-disabled).p-focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; + border-color: #2196F3; +} + +.p-treeselect .p-treeselect-label { + padding: 0.5rem 0.5rem; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; +} + +.p-treeselect .p-treeselect-label.p-placeholder { + color: #6c757d; +} + +.p-treeselect.p-treeselect-chip .p-treeselect-token { + padding: 0.25rem 0.5rem; + margin-right: 0.5rem; + background: #dee2e6; + color: #495057; + border-radius: 16px; +} + +.p-treeselect .p-treeselect-trigger { + background: transparent; + color: #6c757d; + width: 2.357rem; + border-top-right-radius: 3px; + border-bottom-right-radius: 3px; +} + +.p-treeselect.p-invalid.p-component { + border-color: #f44336; +} + +.p-inputwrapper-filled .p-treeselect.p-treeselect-chip .p-treeselect-label { + padding: 0.25rem 0.5rem; +} + +.p-treeselect-panel { + background: #FFFFFF; + color: #495057; + border: 0 none; + border-radius: 3px; + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); +} + +.p-treeselect-panel .p-treeselect-items-wrapper .p-tree { + border: 0 none; +} + +.p-treeselect-panel .p-treeselect-items-wrapper .p-treeselect-empty-message { + padding: 0.5rem 1rem; + color: #495057; + background: transparent; +} + +.p-input-filled .p-treeselect { + background: #f8f9fa; +} + +.p-input-filled .p-treeselect:not(.p-disabled):hover { + background-color: #f8f9fa; +} + +.p-input-filled .p-treeselect:not(.p-disabled).p-focus { + background-color: #FFFFFF; +} + +.p-button { + color: #FFFFFF; + background: #6B39FA; + border: 1px solid #6B39FA; + padding: 0.75rem 2rem; + font-size: 1rem; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; + border-radius: 3px; + font-weight: 600; + text-align: center; + + &:disabled, + &.p-disabled, + &.p-component:disabled { + opacity: unset; + background: #251652; + border: 1px solid #251652; + } +} + +.p-button:enabled:hover { + background: linear-gradient(0deg, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.2)), #6B39FA; + color: #FFFFFF; + border-color: #6B39FA; + cursor: pointer; +} + +.p-button:enabled:active { + background: linear-gradient(0deg, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)), #6B39FA; + color: #FFFFFF; + border-color: #6B39FA; +} + +.p-button.p-button-outlined { + background-color: transparent; + color: #2196F3; + border: 1px solid; +} + +.p-button.p-button-outlined:enabled:hover { + background: rgba(33, 150, 243, 0.04); + color: #2196F3; + border: 1px solid; +} + +.p-button.p-button-outlined:enabled:active { + background: rgba(33, 150, 243, 0.16); + color: #2196F3; + border: 1px solid; +} + +.p-button.p-button-outlined.p-button-plain { + color: #6c757d; + border-color: #6c757d; +} + +.p-button.p-button-outlined.p-button-plain:enabled:hover { + background: #e9ecef; + color: #6c757d; +} + +.p-button.p-button-outlined.p-button-plain:enabled:active { + background: #dee2e6; + color: #6c757d; +} + +.p-button.p-button-text { + background-color: transparent; + color: #2196F3; + border-color: transparent; +} + +.p-button.p-button-text:enabled:hover { + background: rgba(33, 150, 243, 0.04); + color: #2196F3; + border-color: transparent; +} + +.p-button.p-button-text:enabled:active { + background: rgba(33, 150, 243, 0.16); + color: #2196F3; + border-color: transparent; +} + +.p-button.p-button-text.p-button-plain { + color: #6c757d; +} + +.p-button.p-button-text.p-button-plain:enabled:hover { + background: #e9ecef; + color: #6c757d; +} + +.p-button.p-button-text.p-button-plain:enabled:active { + background: #dee2e6; + color: #6c757d; +} + +.p-button:focus { + outline: 0 none; + outline-offset: 0; + //box-shadow: 0 0 0 0.2rem #6B39FA; +} + +.p-button .p-button-icon-left { + margin-right: 0.5rem; +} + +.p-button .p-button-icon-right { + margin-left: 0.5rem; +} + +.p-button .p-button-icon-bottom { + margin-top: 0.5rem; +} + +.p-button .p-button-icon-top { + margin-bottom: 0.5rem; +} + +.p-button .p-badge { + margin-left: 0.5rem; + min-width: 1rem; + height: 1rem; + line-height: 1rem; + color: #2196F3; + background-color: #FFFFFF; +} + +.p-button.p-button-raised { + box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12); +} + +.p-button.p-button-rounded { + border-radius: 2rem; +} + +.p-button.p-button-icon-only { + width: 2.357rem; + padding: 0.5rem 0; +} + +.p-button.p-button-icon-only .p-button-icon-left, +.p-button.p-button-icon-only .p-button-icon-right { + margin: 0; +} + +.p-button.p-button-icon-only.p-button-rounded { + border-radius: 50%; + height: 2.357rem; +} + +.p-button.p-button-sm { + font-size: 0.875rem; + padding: 0.4375rem 0.875rem; +} + +.p-button.p-button-sm .p-button-icon { + font-size: 0.875rem; +} + +.p-button.p-button-lg { + font-size: 1.25rem; + padding: 0.625rem 1.25rem; +} + +.p-button.p-button-lg .p-button-icon { + font-size: 1.25rem; +} + +.p-button.p-button-loading-label-only .p-button-label { + margin-left: 0.5rem; +} + +.p-button.p-button-loading-label-only .p-button-loading-icon { + margin-right: 0; +} + +.p-fluid .p-button { + width: 100%; +} + +.p-fluid .p-button-icon-only { + width: 2.357rem; +} + +.p-fluid .p-buttonset { + display: flex; +} + +.p-fluid .p-buttonset .p-button { + flex: 1; +} + +.p-button.p-button-secondary, .p-buttonset.p-button-secondary > .p-button, .p-splitbutton.p-button-secondary > .p-button { + color: #FFFFFF; + background: #607D8B; + border: 1px solid #607D8B; +} + +.p-button.p-button-secondary:enabled:hover, .p-buttonset.p-button-secondary > .p-button:enabled:hover, .p-splitbutton.p-button-secondary > .p-button:enabled:hover { + background: #56717d; + color: #FFFFFF; + border-color: #56717d; +} + +.p-button.p-button-secondary:enabled:focus, .p-buttonset.p-button-secondary > .p-button:enabled:focus, .p-splitbutton.p-button-secondary > .p-button:enabled:focus { + box-shadow: 0 0 0 0.2rem #beccd2; +} + +.p-button.p-button-secondary:enabled:active, .p-buttonset.p-button-secondary > .p-button:enabled:active, .p-splitbutton.p-button-secondary > .p-button:enabled:active { + background: #4d646f; + color: #FFFFFF; + border-color: #4d646f; +} + +.p-button.p-button-secondary.p-button-outlined, .p-buttonset.p-button-secondary > .p-button.p-button-outlined, .p-splitbutton.p-button-secondary > .p-button.p-button-outlined { + background-color: transparent; + color: #607D8B; + border: 1px solid; +} + +.p-button.p-button-secondary.p-button-outlined:enabled:hover, .p-buttonset.p-button-secondary > .p-button.p-button-outlined:enabled:hover, .p-splitbutton.p-button-secondary > .p-button.p-button-outlined:enabled:hover { + background: rgba(96, 125, 139, 0.04); + color: #607D8B; + border: 1px solid; +} + +.p-button.p-button-secondary.p-button-outlined:enabled:active, .p-buttonset.p-button-secondary > .p-button.p-button-outlined:enabled:active, .p-splitbutton.p-button-secondary > .p-button.p-button-outlined:enabled:active { + background: rgba(96, 125, 139, 0.16); + color: #607D8B; + border: 1px solid; +} + +.p-button.p-button-secondary.p-button-text, .p-buttonset.p-button-secondary > .p-button.p-button-text, .p-splitbutton.p-button-secondary > .p-button.p-button-text { + background-color: transparent; + color: #607D8B; + border-color: transparent; +} + +.p-button.p-button-secondary.p-button-text:enabled:hover, .p-buttonset.p-button-secondary > .p-button.p-button-text:enabled:hover, .p-splitbutton.p-button-secondary > .p-button.p-button-text:enabled:hover { + background: rgba(96, 125, 139, 0.04); + border-color: transparent; + color: #607D8B; +} + +.p-button.p-button-secondary.p-button-text:enabled:active, .p-buttonset.p-button-secondary > .p-button.p-button-text:enabled:active, .p-splitbutton.p-button-secondary > .p-button.p-button-text:enabled:active { + background: rgba(96, 125, 139, 0.16); + border-color: transparent; + color: #607D8B; +} + +.p-button.p-button-info, .p-buttonset.p-button-info > .p-button, .p-splitbutton.p-button-info > .p-button { + color: #FFFFFF; + background: #0288D1; + border: 1px solid #0288D1; +} + +.p-button.p-button-info:enabled:hover, .p-buttonset.p-button-info > .p-button:enabled:hover, .p-splitbutton.p-button-info > .p-button:enabled:hover { + background: #027abc; + color: #FFFFFF; + border-color: #027abc; +} + +.p-button.p-button-info:enabled:focus, .p-buttonset.p-button-info > .p-button:enabled:focus, .p-splitbutton.p-button-info > .p-button:enabled:focus { + box-shadow: 0 0 0 0.2rem #89d4fe; +} + +.p-button.p-button-info:enabled:active, .p-buttonset.p-button-info > .p-button:enabled:active, .p-splitbutton.p-button-info > .p-button:enabled:active { + background: #026da7; + color: #FFFFFF; + border-color: #026da7; +} + +.p-button.p-button-info.p-button-outlined, .p-buttonset.p-button-info > .p-button.p-button-outlined, .p-splitbutton.p-button-info > .p-button.p-button-outlined { + background-color: transparent; + color: #0288D1; + border: 1px solid; +} + +.p-button.p-button-info.p-button-outlined:enabled:hover, .p-buttonset.p-button-info > .p-button.p-button-outlined:enabled:hover, .p-splitbutton.p-button-info > .p-button.p-button-outlined:enabled:hover { + background: rgba(2, 136, 209, 0.04); + color: #0288D1; + border: 1px solid; +} + +.p-button.p-button-info.p-button-outlined:enabled:active, .p-buttonset.p-button-info > .p-button.p-button-outlined:enabled:active, .p-splitbutton.p-button-info > .p-button.p-button-outlined:enabled:active { + background: rgba(2, 136, 209, 0.16); + color: #0288D1; + border: 1px solid; +} + +.p-button.p-button-info.p-button-text, .p-buttonset.p-button-info > .p-button.p-button-text, .p-splitbutton.p-button-info > .p-button.p-button-text { + background-color: transparent; + color: #0288D1; + border-color: transparent; +} + +.p-button.p-button-info.p-button-text:enabled:hover, .p-buttonset.p-button-info > .p-button.p-button-text:enabled:hover, .p-splitbutton.p-button-info > .p-button.p-button-text:enabled:hover { + background: rgba(2, 136, 209, 0.04); + border-color: transparent; + color: #0288D1; +} + +.p-button.p-button-info.p-button-text:enabled:active, .p-buttonset.p-button-info > .p-button.p-button-text:enabled:active, .p-splitbutton.p-button-info > .p-button.p-button-text:enabled:active { + background: rgba(2, 136, 209, 0.16); + border-color: transparent; + color: #0288D1; +} + +.p-button.p-button-success, .p-buttonset.p-button-success > .p-button, .p-splitbutton.p-button-success > .p-button { + color: #FFFFFF; + background: #689F38; + border: 1px solid #689F38; +} + +.p-button.p-button-success:enabled:hover, .p-buttonset.p-button-success > .p-button:enabled:hover, .p-splitbutton.p-button-success > .p-button:enabled:hover { + background: #5e8f32; + color: #FFFFFF; + border-color: #5e8f32; +} + +.p-button.p-button-success:enabled:focus, .p-buttonset.p-button-success > .p-button:enabled:focus, .p-splitbutton.p-button-success > .p-button:enabled:focus { + box-shadow: 0 0 0 0.2rem #c2e0a8; +} + +.p-button.p-button-success:enabled:active, .p-buttonset.p-button-success > .p-button:enabled:active, .p-splitbutton.p-button-success > .p-button:enabled:active { + background: #537f2d; + color: #FFFFFF; + border-color: #537f2d; +} + +.p-button.p-button-success.p-button-outlined, .p-buttonset.p-button-success > .p-button.p-button-outlined, .p-splitbutton.p-button-success > .p-button.p-button-outlined { + background-color: transparent; + color: #689F38; + border: 1px solid; +} + +.p-button.p-button-success.p-button-outlined:enabled:hover, .p-buttonset.p-button-success > .p-button.p-button-outlined:enabled:hover, .p-splitbutton.p-button-success > .p-button.p-button-outlined:enabled:hover { + background: rgba(104, 159, 56, 0.04); + color: #689F38; + border: 1px solid; +} + +.p-button.p-button-success.p-button-outlined:enabled:active, .p-buttonset.p-button-success > .p-button.p-button-outlined:enabled:active, .p-splitbutton.p-button-success > .p-button.p-button-outlined:enabled:active { + background: rgba(104, 159, 56, 0.16); + color: #689F38; + border: 1px solid; +} + +.p-button.p-button-success.p-button-text, .p-buttonset.p-button-success > .p-button.p-button-text, .p-splitbutton.p-button-success > .p-button.p-button-text { + background-color: transparent; + color: #689F38; + border-color: transparent; +} + +.p-button.p-button-success.p-button-text:enabled:hover, .p-buttonset.p-button-success > .p-button.p-button-text:enabled:hover, .p-splitbutton.p-button-success > .p-button.p-button-text:enabled:hover { + background: rgba(104, 159, 56, 0.04); + border-color: transparent; + color: #689F38; +} + +.p-button.p-button-success.p-button-text:enabled:active, .p-buttonset.p-button-success > .p-button.p-button-text:enabled:active, .p-splitbutton.p-button-success > .p-button.p-button-text:enabled:active { + background: rgba(104, 159, 56, 0.16); + border-color: transparent; + color: #689F38; +} + +.p-button.p-button-warning, .p-buttonset.p-button-warning > .p-button, .p-splitbutton.p-button-warning > .p-button { + color: #212529; + background: #FBC02D; + border: 1px solid #FBC02D; +} + +.p-button.p-button-warning:enabled:hover, .p-buttonset.p-button-warning > .p-button:enabled:hover, .p-splitbutton.p-button-warning > .p-button:enabled:hover { + background: #fab710; + color: #212529; + border-color: #fab710; +} + +.p-button.p-button-warning:enabled:focus, .p-buttonset.p-button-warning > .p-button:enabled:focus, .p-splitbutton.p-button-warning > .p-button:enabled:focus { + box-shadow: 0 0 0 0.2rem #fde6ab; +} + +.p-button.p-button-warning:enabled:active, .p-buttonset.p-button-warning > .p-button:enabled:active, .p-splitbutton.p-button-warning > .p-button:enabled:active { + background: #e8a704; + color: #212529; + border-color: #e8a704; +} + +.p-button.p-button-warning.p-button-outlined, .p-buttonset.p-button-warning > .p-button.p-button-outlined, .p-splitbutton.p-button-warning > .p-button.p-button-outlined { + background-color: transparent; + color: #FBC02D; + border: 1px solid; +} + +.p-button.p-button-warning.p-button-outlined:enabled:hover, .p-buttonset.p-button-warning > .p-button.p-button-outlined:enabled:hover, .p-splitbutton.p-button-warning > .p-button.p-button-outlined:enabled:hover { + background: rgba(251, 192, 45, 0.04); + color: #FBC02D; + border: 1px solid; +} + +.p-button.p-button-warning.p-button-outlined:enabled:active, .p-buttonset.p-button-warning > .p-button.p-button-outlined:enabled:active, .p-splitbutton.p-button-warning > .p-button.p-button-outlined:enabled:active { + background: rgba(251, 192, 45, 0.16); + color: #FBC02D; + border: 1px solid; +} + +.p-button.p-button-warning.p-button-text, .p-buttonset.p-button-warning > .p-button.p-button-text, .p-splitbutton.p-button-warning > .p-button.p-button-text { + background-color: transparent; + color: #FBC02D; + border-color: transparent; +} + +.p-button.p-button-warning.p-button-text:enabled:hover, .p-buttonset.p-button-warning > .p-button.p-button-text:enabled:hover, .p-splitbutton.p-button-warning > .p-button.p-button-text:enabled:hover { + background: rgba(251, 192, 45, 0.04); + border-color: transparent; + color: #FBC02D; +} + +.p-button.p-button-warning.p-button-text:enabled:active, .p-buttonset.p-button-warning > .p-button.p-button-text:enabled:active, .p-splitbutton.p-button-warning > .p-button.p-button-text:enabled:active { + background: rgba(251, 192, 45, 0.16); + border-color: transparent; + color: #FBC02D; +} + +.p-button.p-button-help, .p-buttonset.p-button-help > .p-button, .p-splitbutton.p-button-help > .p-button { + color: #FFFFFF; + background: #9C27B0; + border: 1px solid #9C27B0; +} + +.p-button.p-button-help:enabled:hover, .p-buttonset.p-button-help > .p-button:enabled:hover, .p-splitbutton.p-button-help > .p-button:enabled:hover { + background: #8c239e; + color: #FFFFFF; + border-color: #8c239e; +} + +.p-button.p-button-help:enabled:focus, .p-buttonset.p-button-help > .p-button:enabled:focus, .p-splitbutton.p-button-help > .p-button:enabled:focus { + box-shadow: 0 0 0 0.2rem #df9eea; +} + +.p-button.p-button-help:enabled:active, .p-buttonset.p-button-help > .p-button:enabled:active, .p-splitbutton.p-button-help > .p-button:enabled:active { + background: #7d1f8d; + color: #FFFFFF; + border-color: #7d1f8d; +} + +.p-button.p-button-help.p-button-outlined, .p-buttonset.p-button-help > .p-button.p-button-outlined, .p-splitbutton.p-button-help > .p-button.p-button-outlined { + background-color: transparent; + color: #9C27B0; + border: 1px solid; +} + +.p-button.p-button-help.p-button-outlined:enabled:hover, .p-buttonset.p-button-help > .p-button.p-button-outlined:enabled:hover, .p-splitbutton.p-button-help > .p-button.p-button-outlined:enabled:hover { + background: rgba(156, 39, 176, 0.04); + color: #9C27B0; + border: 1px solid; +} + +.p-button.p-button-help.p-button-outlined:enabled:active, .p-buttonset.p-button-help > .p-button.p-button-outlined:enabled:active, .p-splitbutton.p-button-help > .p-button.p-button-outlined:enabled:active { + background: rgba(156, 39, 176, 0.16); + color: #9C27B0; + border: 1px solid; +} + +.p-button.p-button-help.p-button-text, .p-buttonset.p-button-help > .p-button.p-button-text, .p-splitbutton.p-button-help > .p-button.p-button-text { + background-color: transparent; + color: #9C27B0; + border-color: transparent; +} + +.p-button.p-button-help.p-button-text:enabled:hover, .p-buttonset.p-button-help > .p-button.p-button-text:enabled:hover, .p-splitbutton.p-button-help > .p-button.p-button-text:enabled:hover { + background: rgba(156, 39, 176, 0.04); + border-color: transparent; + color: #9C27B0; +} + +.p-button.p-button-help.p-button-text:enabled:active, .p-buttonset.p-button-help > .p-button.p-button-text:enabled:active, .p-splitbutton.p-button-help > .p-button.p-button-text:enabled:active { + background: rgba(156, 39, 176, 0.16); + border-color: transparent; + color: #9C27B0; +} + +.p-button.p-button-danger, .p-buttonset.p-button-danger > .p-button, .p-splitbutton.p-button-danger > .p-button { + color: #FFFFFF; + background: #D32F2F; + border: 1px solid #D32F2F; +} + +.p-button.p-button-danger:enabled:hover, .p-buttonset.p-button-danger > .p-button:enabled:hover, .p-splitbutton.p-button-danger > .p-button:enabled:hover { + background: #c02929; + color: #FFFFFF; + border-color: #c02929; +} + +.p-button.p-button-danger:enabled:focus, .p-buttonset.p-button-danger > .p-button:enabled:focus, .p-splitbutton.p-button-danger > .p-button:enabled:focus { + box-shadow: 0 0 0 0.2rem #edacac; +} + +.p-button.p-button-danger:enabled:active, .p-buttonset.p-button-danger > .p-button:enabled:active, .p-splitbutton.p-button-danger > .p-button:enabled:active { + background: #aa2424; + color: #FFFFFF; + border-color: #aa2424; +} + +.p-button.p-button-danger.p-button-outlined, .p-buttonset.p-button-danger > .p-button.p-button-outlined, .p-splitbutton.p-button-danger > .p-button.p-button-outlined { + background-color: transparent; + color: #D32F2F; + border: 1px solid; +} + +.p-button.p-button-danger.p-button-outlined:enabled:hover, .p-buttonset.p-button-danger > .p-button.p-button-outlined:enabled:hover, .p-splitbutton.p-button-danger > .p-button.p-button-outlined:enabled:hover { + background: rgba(211, 47, 47, 0.04); + color: #D32F2F; + border: 1px solid; +} + +.p-button.p-button-danger.p-button-outlined:enabled:active, .p-buttonset.p-button-danger > .p-button.p-button-outlined:enabled:active, .p-splitbutton.p-button-danger > .p-button.p-button-outlined:enabled:active { + background: rgba(211, 47, 47, 0.16); + color: #D32F2F; + border: 1px solid; +} + +.p-button.p-button-danger.p-button-text, .p-buttonset.p-button-danger > .p-button.p-button-text, .p-splitbutton.p-button-danger > .p-button.p-button-text { + background-color: transparent; + color: #D32F2F; + border-color: transparent; +} + +.p-button.p-button-danger.p-button-text:enabled:hover, .p-buttonset.p-button-danger > .p-button.p-button-text:enabled:hover, .p-splitbutton.p-button-danger > .p-button.p-button-text:enabled:hover { + background: rgba(211, 47, 47, 0.04); + border-color: transparent; + color: #D32F2F; +} + +.p-button.p-button-danger.p-button-text:enabled:active, .p-buttonset.p-button-danger > .p-button.p-button-text:enabled:active, .p-splitbutton.p-button-danger > .p-button.p-button-text:enabled:active { + background: rgba(211, 47, 47, 0.16); + border-color: transparent; + color: #D32F2F; +} + +.p-button.p-button-link { + color: #0b7ad1; + background: transparent; + border: transparent; +} + +.p-button.p-button-link:enabled:hover { + background: transparent; + color: #0b7ad1; + border-color: transparent; +} + +.p-button.p-button-link:enabled:hover .p-button-label { + text-decoration: underline; +} + +.p-button.p-button-link:enabled:focus { + background: transparent; + box-shadow: 0 0 0 0.2rem #a6d5fa; + border-color: transparent; +} + +.p-button.p-button-link:enabled:active { + background: transparent; + color: #0b7ad1; + border-color: transparent; +} + +.p-speeddial-button.p-button.p-button-icon-only { + width: 4rem; + height: 4rem; +} + +.p-speeddial-button.p-button.p-button-icon-only .p-button-icon { + font-size: 1.3rem; +} + +.p-speeddial-action { + width: 3rem; + height: 3rem; + background: #495057; + color: #fff; +} + +.p-speeddial-action:hover { + background: #343a40; + color: #fff; +} + +.p-speeddial-direction-up .p-speeddial-item { + margin: 0.25rem 0; +} + +.p-speeddial-direction-up .p-speeddial-item:first-child { + margin-bottom: 0.5rem; +} + +.p-speeddial-direction-down .p-speeddial-item { + margin: 0.25rem 0; +} + +.p-speeddial-direction-down .p-speeddial-item:first-child { + margin-top: 0.5rem; +} + +.p-speeddial-direction-left .p-speeddial-item { + margin: 0 0.25rem; +} + +.p-speeddial-direction-left .p-speeddial-item:first-child { + margin-right: 0.5rem; +} + +.p-speeddial-direction-right .p-speeddial-item { + margin: 0 0.25rem; +} + +.p-speeddial-direction-right .p-speeddial-item:first-child { + margin-left: 0.5rem; +} + +.p-speeddial-circle .p-speeddial-item, +.p-speeddial-semi-circle .p-speeddial-item, +.p-speeddial-quarter-circle .p-speeddial-item { + margin: 0; +} + +.p-speeddial-circle .p-speeddial-item:first-child, .p-speeddial-circle .p-speeddial-item:last-child, +.p-speeddial-semi-circle .p-speeddial-item:first-child, +.p-speeddial-semi-circle .p-speeddial-item:last-child, +.p-speeddial-quarter-circle .p-speeddial-item:first-child, +.p-speeddial-quarter-circle .p-speeddial-item:last-child { + margin: 0; +} + +.p-speeddial-mask { + background-color: rgba(0, 0, 0, 0.4); +} + +.p-splitbutton { + border-radius: 3px; +} + +.p-splitbutton.p-button-outlined > .p-button { + background-color: transparent; + color: #2196F3; + border: 1px solid; +} + +.p-splitbutton.p-button-outlined > .p-button:enabled:hover, .p-splitbutton.p-button-outlined > .p-button:not(button):not(a):not(.p-disabled):hover { + background: rgba(33, 150, 243, 0.04); + color: #2196F3; +} + +.p-splitbutton.p-button-outlined > .p-button:enabled:active, .p-splitbutton.p-button-outlined > .p-button:not(button):not(a):not(.p-disabled):active { + background: rgba(33, 150, 243, 0.16); + color: #2196F3; +} + +.p-splitbutton.p-button-outlined.p-button-plain > .p-button { + color: #6c757d; + border-color: #6c757d; +} + +.p-splitbutton.p-button-outlined.p-button-plain > .p-button:enabled:hover, .p-splitbutton.p-button-outlined.p-button-plain > .p-button:not(button):not(a):not(.p-disabled):hover { + background: #e9ecef; + color: #6c757d; +} + +.p-splitbutton.p-button-outlined.p-button-plain > .p-button:enabled:active, .p-splitbutton.p-button-outlined.p-button-plain > .p-button:not(button):not(a):not(.p-disabled):active { + background: #dee2e6; + color: #6c757d; +} + +.p-splitbutton.p-button-text > .p-button { + background-color: transparent; + color: #2196F3; + border-color: transparent; +} + +.p-splitbutton.p-button-text > .p-button:enabled:hover, .p-splitbutton.p-button-text > .p-button:not(button):not(a):not(.p-disabled):hover { + background: rgba(33, 150, 243, 0.04); + color: #2196F3; + border-color: transparent; +} + +.p-splitbutton.p-button-text > .p-button:enabled:active, .p-splitbutton.p-button-text > .p-button:not(button):not(a):not(.p-disabled):active { + background: rgba(33, 150, 243, 0.16); + color: #2196F3; + border-color: transparent; +} + +.p-splitbutton.p-button-text.p-button-plain > .p-button { + color: #6c757d; +} + +.p-splitbutton.p-button-text.p-button-plain > .p-button:enabled:hover, .p-splitbutton.p-button-text.p-button-plain > .p-button:not(button):not(a):not(.p-disabled):hover { + background: #e9ecef; + color: #6c757d; +} + +.p-splitbutton.p-button-text.p-button-plain > .p-button:enabled:active, .p-splitbutton.p-button-text.p-button-plain > .p-button:not(button):not(a):not(.p-disabled):active { + background: #dee2e6; + color: #6c757d; +} + +.p-splitbutton.p-button-raised { + box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12); +} + +.p-splitbutton.p-button-rounded { + border-radius: 2rem; +} + +.p-splitbutton.p-button-rounded > .p-button { + border-radius: 2rem; +} + +.p-splitbutton.p-button-sm > .p-button { + font-size: 0.875rem; + padding: 0.4375rem 0.875rem; +} + +.p-splitbutton.p-button-sm > .p-button .p-button-icon { + font-size: 0.875rem; +} + +.p-splitbutton.p-button-lg > .p-button { + font-size: 1.25rem; + padding: 0.625rem 1.25rem; +} + +.p-splitbutton.p-button-lg > .p-button .p-button-icon { + font-size: 1.25rem; +} + +.p-splitbutton.p-button-secondary.p-button-outlined > .p-button { + background-color: transparent; + color: #607D8B; + border: 1px solid; +} + +.p-splitbutton.p-button-secondary.p-button-outlined > .p-button:enabled:hover, .p-splitbutton.p-button-secondary.p-button-outlined > .p-button:not(button):not(a):not(.p-disabled):hover { + background: rgba(96, 125, 139, 0.04); + color: #607D8B; +} + +.p-splitbutton.p-button-secondary.p-button-outlined > .p-button:enabled:active, .p-splitbutton.p-button-secondary.p-button-outlined > .p-button:not(button):not(a):not(.p-disabled):active { + background: rgba(96, 125, 139, 0.16); + color: #607D8B; +} + +.p-splitbutton.p-button-secondary.p-button-text > .p-button { + background-color: transparent; + color: #607D8B; + border-color: transparent; +} + +.p-splitbutton.p-button-secondary.p-button-text > .p-button:enabled:hover, .p-splitbutton.p-button-secondary.p-button-text > .p-button:not(button):not(a):not(.p-disabled):hover { + background: rgba(96, 125, 139, 0.04); + border-color: transparent; + color: #607D8B; +} + +.p-splitbutton.p-button-secondary.p-button-text > .p-button:enabled:active, .p-splitbutton.p-button-secondary.p-button-text > .p-button:not(button):not(a):not(.p-disabled):active { + background: rgba(96, 125, 139, 0.16); + border-color: transparent; + color: #607D8B; +} + +.p-splitbutton.p-button-info.p-button-outlined > .p-button { + background-color: transparent; + color: #0288D1; + border: 1px solid; +} + +.p-splitbutton.p-button-info.p-button-outlined > .p-button:enabled:hover, .p-splitbutton.p-button-info.p-button-outlined > .p-button:not(button):not(a):not(.p-disabled):hover { + background: rgba(2, 136, 209, 0.04); + color: #0288D1; +} + +.p-splitbutton.p-button-info.p-button-outlined > .p-button:enabled:active, .p-splitbutton.p-button-info.p-button-outlined > .p-button:not(button):not(a):not(.p-disabled):active { + background: rgba(2, 136, 209, 0.16); + color: #0288D1; +} + +.p-splitbutton.p-button-info.p-button-text > .p-button { + background-color: transparent; + color: #0288D1; + border-color: transparent; +} + +.p-splitbutton.p-button-info.p-button-text > .p-button:enabled:hover, .p-splitbutton.p-button-info.p-button-text > .p-button:not(button):not(a):not(.p-disabled):hover { + background: rgba(2, 136, 209, 0.04); + border-color: transparent; + color: #0288D1; +} + +.p-splitbutton.p-button-info.p-button-text > .p-button:enabled:active, .p-splitbutton.p-button-info.p-button-text > .p-button:not(button):not(a):not(.p-disabled):active { + background: rgba(2, 136, 209, 0.16); + border-color: transparent; + color: #0288D1; +} + +.p-splitbutton.p-button-success.p-button-outlined > .p-button { + background-color: transparent; + color: #689F38; + border: 1px solid; +} + +.p-splitbutton.p-button-success.p-button-outlined > .p-button:enabled:hover, .p-splitbutton.p-button-success.p-button-outlined > .p-button:not(button):not(a):not(.p-disabled):hover { + background: rgba(104, 159, 56, 0.04); + color: #689F38; +} + +.p-splitbutton.p-button-success.p-button-outlined > .p-button:enabled:active, .p-splitbutton.p-button-success.p-button-outlined > .p-button:not(button):not(a):not(.p-disabled):active { + background: rgba(104, 159, 56, 0.16); + color: #689F38; +} + +.p-splitbutton.p-button-success.p-button-text > .p-button { + background-color: transparent; + color: #689F38; + border-color: transparent; +} + +.p-splitbutton.p-button-success.p-button-text > .p-button:enabled:hover, .p-splitbutton.p-button-success.p-button-text > .p-button:not(button):not(a):not(.p-disabled):hover { + background: rgba(104, 159, 56, 0.04); + border-color: transparent; + color: #689F38; +} + +.p-splitbutton.p-button-success.p-button-text > .p-button:enabled:active, .p-splitbutton.p-button-success.p-button-text > .p-button:not(button):not(a):not(.p-disabled):active { + background: rgba(104, 159, 56, 0.16); + border-color: transparent; + color: #689F38; +} + +.p-splitbutton.p-button-warning.p-button-outlined > .p-button { + background-color: transparent; + color: #FBC02D; + border: 1px solid; +} + +.p-splitbutton.p-button-warning.p-button-outlined > .p-button:enabled:hover, .p-splitbutton.p-button-warning.p-button-outlined > .p-button:not(button):not(a):not(.p-disabled):hover { + background: rgba(251, 192, 45, 0.04); + color: #FBC02D; +} + +.p-splitbutton.p-button-warning.p-button-outlined > .p-button:enabled:active, .p-splitbutton.p-button-warning.p-button-outlined > .p-button:not(button):not(a):not(.p-disabled):active { + background: rgba(251, 192, 45, 0.16); + color: #FBC02D; +} + +.p-splitbutton.p-button-warning.p-button-text > .p-button { + background-color: transparent; + color: #FBC02D; + border-color: transparent; +} + +.p-splitbutton.p-button-warning.p-button-text > .p-button:enabled:hover, .p-splitbutton.p-button-warning.p-button-text > .p-button:not(button):not(a):not(.p-disabled):hover { + background: rgba(251, 192, 45, 0.04); + border-color: transparent; + color: #FBC02D; +} + +.p-splitbutton.p-button-warning.p-button-text > .p-button:enabled:active, .p-splitbutton.p-button-warning.p-button-text > .p-button:not(button):not(a):not(.p-disabled):active { + background: rgba(251, 192, 45, 0.16); + border-color: transparent; + color: #FBC02D; +} + +.p-splitbutton.p-button-help.p-button-outlined > .p-button { + background-color: transparent; + color: #9C27B0; + border: 1px solid; +} + +.p-splitbutton.p-button-help.p-button-outlined > .p-button:enabled:hover, .p-splitbutton.p-button-help.p-button-outlined > .p-button:not(button):not(a):not(.p-disabled):hover { + background: rgba(156, 39, 176, 0.04); + color: #9C27B0; +} + +.p-splitbutton.p-button-help.p-button-outlined > .p-button:enabled:active, .p-splitbutton.p-button-help.p-button-outlined > .p-button:not(button):not(a):not(.p-disabled):active { + background: rgba(156, 39, 176, 0.16); + color: #9C27B0; +} + +.p-splitbutton.p-button-help.p-button-text > .p-button { + background-color: transparent; + color: #9C27B0; + border-color: transparent; +} + +.p-splitbutton.p-button-help.p-button-text > .p-button:enabled:hover, .p-splitbutton.p-button-help.p-button-text > .p-button:not(button):not(a):not(.p-disabled):hover { + background: rgba(156, 39, 176, 0.04); + border-color: transparent; + color: #9C27B0; +} + +.p-splitbutton.p-button-help.p-button-text > .p-button:enabled:active, .p-splitbutton.p-button-help.p-button-text > .p-button:not(button):not(a):not(.p-disabled):active { + background: rgba(156, 39, 176, 0.16); + border-color: transparent; + color: #9C27B0; +} + +.p-splitbutton.p-button-danger.p-button-outlined > .p-button { + background-color: transparent; + color: #D32F2F; + border: 1px solid; +} + +.p-splitbutton.p-button-danger.p-button-outlined > .p-button:enabled:hover, .p-splitbutton.p-button-danger.p-button-outlined > .p-button:not(button):not(a):not(.p-disabled):hover { + background: rgba(211, 47, 47, 0.04); + color: #D32F2F; +} + +.p-splitbutton.p-button-danger.p-button-outlined > .p-button:enabled:active, .p-splitbutton.p-button-danger.p-button-outlined > .p-button:not(button):not(a):not(.p-disabled):active { + background: rgba(211, 47, 47, 0.16); + color: #D32F2F; +} + +.p-splitbutton.p-button-danger.p-button-text > .p-button { + background-color: transparent; + color: #D32F2F; + border-color: transparent; +} + +.p-splitbutton.p-button-danger.p-button-text > .p-button:enabled:hover, .p-splitbutton.p-button-danger.p-button-text > .p-button:not(button):not(a):not(.p-disabled):hover { + background: rgba(211, 47, 47, 0.04); + border-color: transparent; + color: #D32F2F; +} + +.p-splitbutton.p-button-danger.p-button-text > .p-button:enabled:active, .p-splitbutton.p-button-danger.p-button-text > .p-button:not(button):not(a):not(.p-disabled):active { + background: rgba(211, 47, 47, 0.16); + border-color: transparent; + color: #D32F2F; +} + +.p-carousel .p-carousel-content .p-carousel-prev, +.p-carousel .p-carousel-content .p-carousel-next { + width: 2rem; + height: 2rem; + color: #6c757d; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; + margin: 0.5rem; +} + +.p-carousel .p-carousel-content .p-carousel-prev:enabled:hover, +.p-carousel .p-carousel-content .p-carousel-next:enabled:hover { + color: #495057; + border-color: transparent; + background: #e9ecef; +} + +.p-carousel .p-carousel-content .p-carousel-prev:focus, +.p-carousel .p-carousel-content .p-carousel-next:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-carousel .p-carousel-indicators { + padding: 1rem; +} + +.p-carousel .p-carousel-indicators .p-carousel-indicator { + margin-right: 0.5rem; + margin-bottom: 0.5rem; +} + +.p-carousel .p-carousel-indicators .p-carousel-indicator button { + background-color: #e9ecef; + width: 2rem; + height: 0.5rem; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; + border-radius: 0; +} + +.p-carousel .p-carousel-indicators .p-carousel-indicator button:hover { + background: #dee2e6; +} + +.p-carousel .p-carousel-indicators .p-carousel-indicator.p-highlight button { + background: #E3F2FD; + color: #495057; +} + +.p-datatable .p-paginator-top { + border-width: 0 0 1px 0; + border-radius: 0; +} + +.p-datatable .p-paginator-bottom { + border-width: 0 0 1px 0; + border-radius: 0; +} + +.p-datatable .p-datatable-header { + background: #f8f9fa; + color: #495057; + border: 1px solid #e9ecef; + border-width: 1px 0 1px 0; + padding: 1rem 1rem; + font-weight: 600; +} + +.p-datatable .p-datatable-footer { + background: #f8f9fa; + color: #495057; + border: 1px solid #e9ecef; + border-width: 0 0 1px 0; + padding: 1rem 1rem; + font-weight: 600; +} + +.p-datatable .p-datatable-thead > tr > th { + text-align: left; + padding: 1rem 1rem; + border: 1px solid #e9ecef; + border-width: 0 0 1px 0; + font-weight: 600; + color: #495057; + background: #f8f9fa; + transition: box-shadow 0.2s; +} + +.p-datatable .p-datatable-tfoot > tr > td { + text-align: left; + padding: 1rem 1rem; + border: 1px solid #e9ecef; + border-width: 0 0 1px 0; + font-weight: 600; + color: #495057; + background: #f8f9fa; +} + +.p-datatable .p-sortable-column .p-sortable-column-icon { + color: #6c757d; + margin-left: 0.5rem; +} + +.p-datatable .p-sortable-column .p-sortable-column-badge { + border-radius: 50%; + height: 1.143rem; + min-width: 1.143rem; + line-height: 1.143rem; + color: #495057; + background: #E3F2FD; + margin-left: 0.5rem; +} + +.p-datatable .p-sortable-column:not(.p-highlight):hover { + background: #e9ecef; + color: #495057; +} + +.p-datatable .p-sortable-column:not(.p-highlight):hover .p-sortable-column-icon { + color: #6c757d; +} + +.p-datatable .p-sortable-column.p-highlight { + background: #f8f9fa; + color: #2196F3; +} + +.p-datatable .p-sortable-column.p-highlight .p-sortable-column-icon { + color: #2196F3; +} + +.p-datatable .p-sortable-column.p-highlight:hover { + background: #e9ecef; + color: #2196F3; +} + +.p-datatable .p-sortable-column.p-highlight:hover .p-sortable-column-icon { + color: #2196F3; +} + +.p-datatable .p-sortable-column:focus { + box-shadow: inset 0 0 0 0.15rem #a6d5fa; + outline: 0 none; +} + +.p-datatable .p-datatable-tbody > tr { + background: #FFFFFF; + color: #495057; + transition: box-shadow 0.2s; +} + +.p-datatable .p-datatable-tbody > tr > td { + text-align: left; + border: 1px solid #e9ecef; + border-width: 0 0 1px 0; + padding: 1rem 1rem; +} + +.p-datatable .p-datatable-tbody > tr > td .p-row-toggler, +.p-datatable .p-datatable-tbody > tr > td .p-row-editor-init, +.p-datatable .p-datatable-tbody > tr > td .p-row-editor-save, +.p-datatable .p-datatable-tbody > tr > td .p-row-editor-cancel { + width: 2rem; + height: 2rem; + color: #6c757d; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-datatable .p-datatable-tbody > tr > td .p-row-toggler:enabled:hover, +.p-datatable .p-datatable-tbody > tr > td .p-row-editor-init:enabled:hover, +.p-datatable .p-datatable-tbody > tr > td .p-row-editor-save:enabled:hover, +.p-datatable .p-datatable-tbody > tr > td .p-row-editor-cancel:enabled:hover { + color: #495057; + border-color: transparent; + background: #e9ecef; +} + +.p-datatable .p-datatable-tbody > tr > td .p-row-toggler:focus, +.p-datatable .p-datatable-tbody > tr > td .p-row-editor-init:focus, +.p-datatable .p-datatable-tbody > tr > td .p-row-editor-save:focus, +.p-datatable .p-datatable-tbody > tr > td .p-row-editor-cancel:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-datatable .p-datatable-tbody > tr > td .p-row-editor-save { + margin-right: 0.5rem; +} + +.p-datatable .p-datatable-tbody > tr:focus { + outline: 0.15rem solid #a6d5fa; + outline-offset: 0.15rem; +} + +.p-datatable .p-datatable-tbody > tr.p-highlight { + background: #E3F2FD; + color: #495057; +} + +.p-datatable .p-datatable-tbody > tr.p-datatable-dragpoint-top > td { + box-shadow: inset 0 2px 0 0 #E3F2FD; +} + +.p-datatable .p-datatable-tbody > tr.p-datatable-dragpoint-bottom > td { + box-shadow: inset 0 -2px 0 0 #E3F2FD; +} + +.p-datatable.p-datatable-hoverable-rows .p-datatable-tbody > tr:not(.p-highlight):hover { + background: #e9ecef; + color: #495057; +} + +.p-datatable .p-column-resizer-helper { + background: #2196F3; +} + +.p-datatable .p-datatable-scrollable-header, +.p-datatable .p-datatable-scrollable-footer { + background: #f8f9fa; +} + +.p-datatable.p-datatable-scrollable > .p-datatable-wrapper > .p-datatable-table > .p-datatable-thead, +.p-datatable.p-datatable-scrollable > .p-datatable-wrapper > .p-datatable-table > .p-datatable-tfoot { + background-color: #f8f9fa; +} + +.p-datatable .p-datatable-loading-icon { + font-size: 2rem; +} + +.p-datatable.p-datatable-gridlines .p-datatable-header { + border-width: 1px 1px 0 1px; +} + +.p-datatable.p-datatable-gridlines .p-datatable-footer { + border-width: 0 1px 1px 1px; +} + +.p-datatable.p-datatable-gridlines .p-paginator-top { + border-width: 0 1px 0 1px; +} + +.p-datatable.p-datatable-gridlines .p-paginator-bottom { + border-width: 0 1px 1px 1px; +} + +.p-datatable.p-datatable-gridlines .p-datatable-thead > tr > th { + border-width: 1px 1px 1px 1px; +} + +.p-datatable.p-datatable-gridlines .p-datatable-tbody > tr > td { + border-width: 1px; +} + +.p-datatable.p-datatable-gridlines .p-datatable-tfoot > tr > td { + border-width: 1px; +} + +.p-datatable.p-datatable-striped .p-datatable-tbody > tr:nth-child(even) { + background: #fcfcfc; +} + +.p-datatable.p-datatable-striped .p-datatable-tbody > tr:nth-child(even).p-highlight { + background: #E3F2FD; + color: #495057; +} + +.p-datatable.p-datatable-striped .p-datatable-tbody > tr:nth-child(even).p-highlight .p-row-toggler { + color: #495057; +} + +.p-datatable.p-datatable-striped .p-datatable-tbody > tr:nth-child(even).p-highlight .p-row-toggler:hover { + color: #495057; +} + +.p-datatable.p-datatable-sm .p-datatable-header { + padding: 0.5rem 0.5rem; +} + +.p-datatable.p-datatable-sm .p-datatable-thead > tr > th { + padding: 0.5rem 0.5rem; +} + +.p-datatable.p-datatable-sm .p-datatable-tbody > tr > td { + padding: 0.5rem 0.5rem; +} + +.p-datatable.p-datatable-sm .p-datatable-tfoot > tr > td { + padding: 0.5rem 0.5rem; +} + +.p-datatable.p-datatable-sm .p-datatable-footer { + padding: 0.5rem 0.5rem; +} + +.p-datatable.p-datatable-lg .p-datatable-header { + padding: 1.25rem 1.25rem; +} + +.p-datatable.p-datatable-lg .p-datatable-thead > tr > th { + padding: 1.25rem 1.25rem; +} + +.p-datatable.p-datatable-lg .p-datatable-tbody > tr > td { + padding: 1.25rem 1.25rem; +} + +.p-datatable.p-datatable-lg .p-datatable-tfoot > tr > td { + padding: 1.25rem 1.25rem; +} + +.p-datatable.p-datatable-lg .p-datatable-footer { + padding: 1.25rem 1.25rem; +} + +.p-dataview .p-paginator-top { + border-width: 0 0 1px 0; + border-radius: 0; +} + +.p-dataview .p-paginator-bottom { + border-width: 0 0 1px 0; + border-radius: 0; +} + +.p-dataview .p-dataview-header { + background: #f8f9fa; + color: #495057; + border: 1px solid #e9ecef; + border-width: 1px 0 1px 0; + padding: 1rem 1rem; + font-weight: 600; +} + +.p-dataview .p-dataview-content { + background: #FFFFFF; + color: #495057; + border: 0 none; + padding: 0; +} + +.p-dataview.p-dataview-list .p-dataview-content > .p-grid > div { + border: solid #e9ecef; + border-width: 0 0 1px 0; +} + +.p-dataview .p-dataview-footer { + background: #f8f9fa; + color: #495057; + border: 1px solid #e9ecef; + border-width: 0 0 1px 0; + padding: 1rem 1rem; + font-weight: 600; + border-bottom-left-radius: 3px; + border-bottom-right-radius: 3px; +} + +.p-dataview .p-dataview-loading-icon { + font-size: 2rem; +} + +.p-dataview .p-dataview-emptymessage { + padding: 1rem; +} + +.p-column-filter-row .p-column-filter-menu-button, +.p-column-filter-row .p-column-filter-clear-button { + margin-left: 0.5rem; +} + +.p-column-filter-menu-button { + width: 2rem; + height: 2rem; + color: #6c757d; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-column-filter-menu-button:hover { + color: #495057; + border-color: transparent; + background: #e9ecef; +} + +.p-column-filter-menu-button.p-column-filter-menu-button-open, .p-column-filter-menu-button.p-column-filter-menu-button-open:hover { + background: #e9ecef; + color: #495057; +} + +.p-column-filter-menu-button.p-column-filter-menu-button-active, .p-column-filter-menu-button.p-column-filter-menu-button-active:hover { + background: #E3F2FD; + color: #495057; +} + +.p-column-filter-menu-button:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-column-filter-clear-button { + width: 2rem; + height: 2rem; + color: #6c757d; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-column-filter-clear-button:hover { + color: #495057; + border-color: transparent; + background: #e9ecef; +} + +.p-column-filter-clear-button:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-column-filter-overlay { + background: #FFFFFF; + color: #495057; + border: 0 none; + border-radius: 3px; + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); + min-width: 12.5rem; +} + +.p-column-filter-overlay .p-column-filter-row-items { + padding: 0.5rem 0; +} + +.p-column-filter-overlay .p-column-filter-row-items .p-column-filter-row-item { + margin: 0; + padding: 0.5rem 1rem; + border: 0 none; + color: #495057; + background: transparent; + transition: box-shadow 0.2s; + border-radius: 0; +} + +.p-column-filter-overlay .p-column-filter-row-items .p-column-filter-row-item.p-highlight { + color: #495057; + background: #E3F2FD; +} + +.p-column-filter-overlay .p-column-filter-row-items .p-column-filter-row-item:not(.p-highlight):not(.p-disabled):hover { + color: #495057; + background: #e9ecef; +} + +.p-column-filter-overlay .p-column-filter-row-items .p-column-filter-row-item:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 0.15rem #a6d5fa; +} + +.p-column-filter-overlay .p-column-filter-row-items .p-column-filter-separator { + border-top: 1px solid #dee2e6; + margin: 0.25rem 0; +} + +.p-column-filter-overlay-menu .p-column-filter-operator { + padding: 0.5rem 1rem; + border-bottom: 0 none; + color: #495057; + background: #f8f9fa; + margin: 0; + border-top-right-radius: 3px; + border-top-left-radius: 3px; +} + +.p-column-filter-overlay-menu .p-column-filter-constraint { + padding: 1rem; + border-bottom: 1px solid #dee2e6; +} + +.p-column-filter-overlay-menu .p-column-filter-constraint .p-column-filter-matchmode-dropdown { + margin-bottom: 0.5rem; +} + +.p-column-filter-overlay-menu .p-column-filter-constraint .p-column-filter-remove-button { + margin-top: 0.5rem; +} + +.p-column-filter-overlay-menu .p-column-filter-constraint:last-child { + border-bottom: 0 none; +} + +.p-column-filter-overlay-menu .p-column-filter-add-rule { + padding: 0.5rem 1rem; +} + +.p-column-filter-overlay-menu .p-column-filter-buttonbar { + padding: 1rem; +} + +.fc { + /* FullCalendar 4 */ + /* FullCalendar 5 */ +} + +.fc.fc-unthemed .fc-view-container th { + background: #f8f9fa; + border: 1px solid #dee2e6; + color: #495057; +} + +.fc.fc-unthemed .fc-view-container td.fc-widget-content { + background: #FFFFFF; + border: 1px solid #dee2e6; + color: #495057; +} + +.fc.fc-unthemed .fc-view-container td.fc-head-container { + border: 1px solid #dee2e6; +} + +.fc.fc-unthemed .fc-view-container .fc-row { + border-right: 1px solid #dee2e6; +} + +.fc.fc-unthemed .fc-view-container .fc-event { + background: #0d89ec; + border: 1px solid #0d89ec; + color: #FFFFFF; +} + +.fc.fc-unthemed .fc-view-container .fc-divider { + background: #f8f9fa; + border: 1px solid #dee2e6; +} + +.fc.fc-unthemed .fc-toolbar .fc-button { + color: #FFFFFF; + background: #2196F3; + border: 1px solid #2196F3; + font-size: 1rem; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; + border-radius: 3px; + display: flex; + align-items: center; +} + +.fc.fc-unthemed .fc-toolbar .fc-button:enabled:hover { + background: #0d89ec; + color: #FFFFFF; + border-color: #0d89ec; +} + +.fc.fc-unthemed .fc-toolbar .fc-button:enabled:active { + background: #0b7ad1; + color: #FFFFFF; + border-color: #0b7ad1; +} + +.fc.fc-unthemed .fc-toolbar .fc-button:enabled:active:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.fc.fc-unthemed .fc-toolbar .fc-button .fc-icon-chevron-left { + font-family: "PrimeIcons" !important; + text-indent: 0; + font-size: 1rem; +} + +.fc.fc-unthemed .fc-toolbar .fc-button .fc-icon-chevron-left:before { + content: "\e900"; +} + +.fc.fc-unthemed .fc-toolbar .fc-button .fc-icon-chevron-right { + font-family: "PrimeIcons" !important; + text-indent: 0; + font-size: 1rem; +} + +.fc.fc-unthemed .fc-toolbar .fc-button .fc-icon-chevron-right:before { + content: "\e901"; +} + +.fc.fc-unthemed .fc-toolbar .fc-button:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.fc.fc-unthemed .fc-toolbar .fc-button.fc-dayGridMonth-button, .fc.fc-unthemed .fc-toolbar .fc-button.fc-timeGridWeek-button, .fc.fc-unthemed .fc-toolbar .fc-button.fc-timeGridDay-button { + background: #FFFFFF; + border: 1px solid #ced4da; + color: #495057; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; +} + +.fc.fc-unthemed .fc-toolbar .fc-button.fc-dayGridMonth-button:hover, .fc.fc-unthemed .fc-toolbar .fc-button.fc-timeGridWeek-button:hover, .fc.fc-unthemed .fc-toolbar .fc-button.fc-timeGridDay-button:hover { + background: #e9ecef; + border-color: #ced4da; + color: #495057; +} + +.fc.fc-unthemed .fc-toolbar .fc-button.fc-dayGridMonth-button.fc-button-active, .fc.fc-unthemed .fc-toolbar .fc-button.fc-timeGridWeek-button.fc-button-active, .fc.fc-unthemed .fc-toolbar .fc-button.fc-timeGridDay-button.fc-button-active { + background: #2196F3; + border-color: #2196F3; + color: #FFFFFF; +} + +.fc.fc-unthemed .fc-toolbar .fc-button.fc-dayGridMonth-button.fc-button-active:hover, .fc.fc-unthemed .fc-toolbar .fc-button.fc-timeGridWeek-button.fc-button-active:hover, .fc.fc-unthemed .fc-toolbar .fc-button.fc-timeGridDay-button.fc-button-active:hover { + background: #0d89ec; + border-color: #0d89ec; + color: #FFFFFF; +} + +.fc.fc-unthemed .fc-toolbar .fc-button.fc-dayGridMonth-button:focus, .fc.fc-unthemed .fc-toolbar .fc-button.fc-timeGridWeek-button:focus, .fc.fc-unthemed .fc-toolbar .fc-button.fc-timeGridDay-button:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; + z-index: 1; +} + +.fc.fc-unthemed .fc-toolbar .fc-button-group .fc-button { + border-radius: 0; +} + +.fc.fc-unthemed .fc-toolbar .fc-button-group .fc-button:first-child { + border-top-left-radius: 3px; + border-bottom-left-radius: 3px; +} + +.fc.fc-unthemed .fc-toolbar .fc-button-group .fc-button:last-child { + border-top-right-radius: 3px; + border-bottom-right-radius: 3px; +} + +.fc.fc-theme-standard .fc-view-harness .fc-scrollgrid { + border-color: #dee2e6; +} + +.fc.fc-theme-standard .fc-view-harness th { + background: #f8f9fa; + border-color: #dee2e6; + color: #495057; +} + +.fc.fc-theme-standard .fc-view-harness td { + color: #495057; + border-color: #dee2e6; +} + +.fc.fc-theme-standard .fc-view-harness .fc-view { + background: #FFFFFF; +} + +.fc.fc-theme-standard .fc-view-harness .fc-popover { + background: none; + border: 0 none; +} + +.fc.fc-theme-standard .fc-view-harness .fc-popover .fc-popover-header { + border: 1px solid #dee2e6; + padding: 1rem; + background: #f8f9fa; + color: #495057; +} + +.fc.fc-theme-standard .fc-view-harness .fc-popover .fc-popover-header .fc-popover-close { + opacity: 1; + display: flex; + align-items: center; + justify-content: center; + overflow: hidden; + font-family: "PrimeIcons" !important; + font-size: 1rem; + width: 2rem; + height: 2rem; + color: #6c757d; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.fc.fc-theme-standard .fc-view-harness .fc-popover .fc-popover-header .fc-popover-close:before { + content: "\e90b"; +} + +.fc.fc-theme-standard .fc-view-harness .fc-popover .fc-popover-header .fc-popover-close:enabled:hover { + color: #495057; + border-color: transparent; + background: #e9ecef; +} + +.fc.fc-theme-standard .fc-view-harness .fc-popover .fc-popover-header .fc-popover-close:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.fc.fc-theme-standard .fc-view-harness .fc-popover .fc-popover-body { + padding: 1rem; + border: 1px solid #dee2e6; + background: #FFFFFF; + color: #495057; + border-top: 0 none; +} + +.fc.fc-theme-standard .fc-view-harness .fc-event.fc-daygrid-block-event { + color: #FFFFFF; + background: #0d89ec; + border-color: #0d89ec; +} + +.fc.fc-theme-standard .fc-view-harness .fc-event.fc-daygrid-block-event .fc-event-main { + color: #FFFFFF; +} + +.fc.fc-theme-standard .fc-view-harness .fc-event.fc-daygrid-dot-event .fc-daygrid-event-dot { + background: #0d89ec; + border-color: #0d89ec; +} + +.fc.fc-theme-standard .fc-view-harness .fc-event.fc-daygrid-dot-event:hover { + background: #e9ecef; + color: #495057; +} + +.fc.fc-theme-standard .fc-view-harness .fc-cell-shaded { + background: #f8f9fa; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button { + color: #FFFFFF; + background: #2196F3; + border: 1px solid #2196F3; + font-size: 1rem; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; + border-radius: 3px; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button:enabled:hover { + background: #0d89ec; + color: #FFFFFF; + border-color: #0d89ec; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button:enabled:active { + background: #0b7ad1; + color: #FFFFFF; + border-color: #0b7ad1; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button:enabled:active:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button:disabled { + opacity: 0.6; + color: #FFFFFF; + background: #2196F3; + border: 1px solid #2196F3; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button .fc-icon-chevron-left { + font-family: "PrimeIcons" !important; + text-indent: 0; + font-size: 1rem; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button .fc-icon-chevron-left:before { + content: "\e900"; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button .fc-icon-chevron-right { + font-family: "PrimeIcons" !important; + text-indent: 0; + font-size: 1rem; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button .fc-icon-chevron-right:before { + content: "\e901"; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button.fc-dayGridMonth-button, .fc.fc-theme-standard .fc-toolbar .fc-button.fc-timeGridWeek-button, .fc.fc-theme-standard .fc-toolbar .fc-button.fc-timeGridDay-button { + background: #FFFFFF; + border: 1px solid #ced4da; + color: #495057; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button.fc-dayGridMonth-button:hover, .fc.fc-theme-standard .fc-toolbar .fc-button.fc-timeGridWeek-button:hover, .fc.fc-theme-standard .fc-toolbar .fc-button.fc-timeGridDay-button:hover { + background: #e9ecef; + border-color: #ced4da; + color: #495057; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button.fc-dayGridMonth-button.fc-button-active, .fc.fc-theme-standard .fc-toolbar .fc-button.fc-timeGridWeek-button.fc-button-active, .fc.fc-theme-standard .fc-toolbar .fc-button.fc-timeGridDay-button.fc-button-active { + background: #2196F3; + border-color: #2196F3; + color: #FFFFFF; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button.fc-dayGridMonth-button.fc-button-active:hover, .fc.fc-theme-standard .fc-toolbar .fc-button.fc-timeGridWeek-button.fc-button-active:hover, .fc.fc-theme-standard .fc-toolbar .fc-button.fc-timeGridDay-button.fc-button-active:hover { + background: #0d89ec; + border-color: #0d89ec; + color: #FFFFFF; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button.fc-dayGridMonth-button:not(:disabled):focus, .fc.fc-theme-standard .fc-toolbar .fc-button.fc-timeGridWeek-button:not(:disabled):focus, .fc.fc-theme-standard .fc-toolbar .fc-button.fc-timeGridDay-button:not(:disabled):focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; + z-index: 1; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button-group .fc-button { + border-radius: 0; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button-group .fc-button:first-child { + border-top-left-radius: 3px; + border-bottom-left-radius: 3px; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button-group .fc-button:last-child { + border-top-right-radius: 3px; + border-bottom-right-radius: 3px; +} + +.fc.fc-theme-standard a { + color: #495057; +} + +.fc.fc-theme-standard .fc-highlight { + color: #495057; + background: #E3F2FD; +} + +.p-orderlist .p-orderlist-controls { + padding: 1rem; +} + +.p-orderlist .p-orderlist-controls .p-button { + margin-bottom: 0.5rem; +} + +.p-orderlist .p-orderlist-header { + background: #f8f9fa; + color: #495057; + border: 1px solid #dee2e6; + padding: 1rem; + border-bottom: 0 none; + border-top-right-radius: 3px; + border-top-left-radius: 3px; +} + +.p-orderlist .p-orderlist-header .p-orderlist-title { + font-weight: 600; +} + +.p-orderlist .p-orderlist-filter-container { + padding: 1rem; + background: #FFFFFF; + border: 1px solid #dee2e6; + border-bottom: 0 none; +} + +.p-orderlist .p-orderlist-filter-container .p-orderlist-filter-input { + padding-right: 1.5rem; +} + +.p-orderlist .p-orderlist-filter-container .p-orderlist-filter-icon { + right: 0.5rem; + color: #6c757d; +} + +.p-orderlist .p-orderlist-list { + border: 1px solid #dee2e6; + background: #FFFFFF; + color: #495057; + padding: 0.5rem 0; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} + +.p-orderlist .p-orderlist-list .p-orderlist-item { + padding: 0.5rem 1rem; + margin: 0; + border: 0 none; + color: #495057; + background: transparent; + transition: box-shadow 0.2s; +} + +.p-orderlist .p-orderlist-list .p-orderlist-item:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 0.15rem #a6d5fa; +} + +.p-orderlist .p-orderlist-list .p-orderlist-item.p-highlight { + color: #495057; + background: #E3F2FD; +} + +.p-orderlist .p-orderlist-list .p-orderlist-empty-message { + padding: 0.5rem 1rem; + color: #495057; +} + +.p-orderlist .p-orderlist-list:not(.cdk-drop-list-dragging) .p-orderlist-item:not(.p-highlight):hover { + background: #e9ecef; + color: #495057; +} + +.p-orderlist.p-orderlist-striped .p-orderlist-list .p-orderlist-item:nth-child(even) { + background: #e9ecef; +} + +.p-orderlist.p-orderlist-striped .p-orderlist-list .p-orderlist-item:nth-child(even):hover { + background: #e9ecef; +} + +.p-orderlist-item.cdk-drag-preview { + padding: 0.5rem 1rem; + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); + border: 0 none; + color: #495057; + background: #FFFFFF; + margin: 0; +} + +.p-organizationchart .p-organizationchart-node-content.p-organizationchart-selectable-node:not(.p-highlight):hover { + background: #e9ecef; + color: #495057; +} + +.p-organizationchart .p-organizationchart-node-content.p-highlight { + background: #E3F2FD; + color: #495057; +} + +.p-organizationchart .p-organizationchart-node-content.p-highlight .p-node-toggler i { + color: #6cbbf5; +} + +.p-organizationchart .p-organizationchart-line-down { + background: #dee2e6; +} + +.p-organizationchart .p-organizationchart-line-left { + border-right: 1px solid #dee2e6; + border-color: #dee2e6; +} + +.p-organizationchart .p-organizationchart-line-top { + border-top: 1px solid #dee2e6; + border-color: #dee2e6; +} + +.p-organizationchart .p-organizationchart-node-content { + border: 1px solid #dee2e6; + background: #FFFFFF; + color: #495057; + padding: 1rem; +} + +.p-organizationchart .p-organizationchart-node-content .p-node-toggler { + background: inherit; + color: inherit; + border-radius: 50%; +} + +.p-organizationchart .p-organizationchart-node-content .p-node-toggler:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-paginator { + background: #FFFFFF; + color: #6c757d; + border: solid #e9ecef; + border-width: 0; + padding: 0.5rem 1rem; + border-radius: 3px; +} + +.p-paginator .p-paginator-first, +.p-paginator .p-paginator-prev, +.p-paginator .p-paginator-next, +.p-paginator .p-paginator-last { + background-color: transparent; + border: 0 none; + color: #6c757d; + min-width: 2.357rem; + height: 2.357rem; + margin: 0.143rem; + transition: box-shadow 0.2s; + border-radius: 3px; +} + +.p-paginator .p-paginator-first:not(.p-disabled):not(.p-highlight):hover, +.p-paginator .p-paginator-prev:not(.p-disabled):not(.p-highlight):hover, +.p-paginator .p-paginator-next:not(.p-disabled):not(.p-highlight):hover, +.p-paginator .p-paginator-last:not(.p-disabled):not(.p-highlight):hover { + background: #e9ecef; + border-color: transparent; + color: #495057; +} + +.p-paginator .p-paginator-first { + border-top-left-radius: 3px; + border-bottom-left-radius: 3px; +} + +.p-paginator .p-paginator-last { + border-top-right-radius: 3px; + border-bottom-right-radius: 3px; +} + +.p-paginator .p-dropdown { + margin-left: 0.5rem; + margin-right: 0.5rem; + height: 2.357rem; +} + +.p-paginator .p-dropdown .p-dropdown-label { + padding-right: 0; +} + +.p-paginator .p-paginator-page-input { + margin-left: 0.5rem; + margin-right: 0.5rem; +} + +.p-paginator .p-paginator-page-input .p-inputtext { + max-width: 2.357rem; +} + +.p-paginator .p-paginator-current { + background-color: transparent; + border: 0 none; + color: #6c757d; + min-width: 2.357rem; + height: 2.357rem; + margin: 0.143rem; + padding: 0 0.5rem; +} + +.p-paginator .p-paginator-pages .p-paginator-page { + background-color: transparent; + border: 0 none; + color: #6c757d; + min-width: 2.357rem; + height: 2.357rem; + margin: 0.143rem; + transition: box-shadow 0.2s; + border-radius: 3px; +} + +.p-paginator .p-paginator-pages .p-paginator-page.p-highlight { + background: #E3F2FD; + border-color: #E3F2FD; + color: #495057; +} + +.p-paginator .p-paginator-pages .p-paginator-page:not(.p-highlight):hover { + background: #e9ecef; + border-color: transparent; + color: #495057; +} + +.p-picklist .p-picklist-buttons { + padding: 1rem; +} + +.p-picklist .p-picklist-buttons .p-button { + margin-bottom: 0.5rem; +} + +.p-picklist .p-picklist-header { + background: #f8f9fa; + color: #495057; + border: 1px solid #dee2e6; + padding: 1rem; + border-bottom: 0 none; + border-top-right-radius: 3px; + border-top-left-radius: 3px; +} + +.p-picklist .p-picklist-header .p-picklist-title { + font-weight: 600; +} + +.p-picklist .p-picklist-filter-container { + padding: 1rem; + background: #FFFFFF; + border: 1px solid #dee2e6; + border-bottom: 0 none; +} + +.p-picklist .p-picklist-filter-container .p-picklist-filter-input { + padding-right: 1.5rem; +} + +.p-picklist .p-picklist-filter-container .p-picklist-filter-icon { + right: 0.5rem; + color: #6c757d; +} + +.p-picklist .p-picklist-list { + border: 1px solid #dee2e6; + background: #FFFFFF; + color: #495057; + padding: 0.5rem 0; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} + +.p-picklist .p-picklist-list .p-picklist-item { + padding: 0.5rem 1rem; + margin: 0; + border: 0 none; + color: #495057; + background: transparent; + transition: box-shadow 0.2s; +} + +.p-picklist .p-picklist-list .p-picklist-item:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 0.15rem #a6d5fa; +} + +.p-picklist .p-picklist-list .p-picklist-item.p-highlight { + color: #495057; + background: #E3F2FD; +} + +.p-picklist .p-picklist-list .p-picklist-empty-message { + padding: 0.5rem 1rem; + color: #495057; +} + +.p-picklist .p-picklist-list:not(.cdk-drop-list-dragging) .p-picklist-item:not(.p-highlight):hover { + background: #e9ecef; + color: #495057; +} + +.p-picklist.p-picklist-striped .p-picklist-list .p-picklist-item:nth-child(even) { + background: #e9ecef; +} + +.p-picklist.p-picklist-striped .p-picklist-list .p-picklist-item:nth-child(even):hover { + background: #e9ecef; +} + +.p-picklist-item.cdk-drag-preview { + padding: 0.5rem 1rem; + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); + border: 0 none; + color: #495057; + background: #FFFFFF; + margin: 0; +} + +.p-timeline .p-timeline-event-marker { + border: 2px solid #2196F3; + border-radius: 50%; + width: 1rem; + height: 1rem; + background-color: #FFFFFF; +} + +.p-timeline .p-timeline-event-connector { + background-color: #dee2e6; +} + +.p-timeline.p-timeline-vertical .p-timeline-event-opposite, +.p-timeline.p-timeline-vertical .p-timeline-event-content { + padding: 0 1rem; +} + +.p-timeline.p-timeline-vertical .p-timeline-event-connector { + width: 2px; +} + +.p-timeline.p-timeline-horizontal .p-timeline-event-opposite, +.p-timeline.p-timeline-horizontal .p-timeline-event-content { + padding: 1rem 0; +} + +.p-timeline.p-timeline-horizontal .p-timeline-event-connector { + height: 2px; +} + +.p-tree { + border: 1px solid #dee2e6; + background: #FFFFFF; + color: #495057; + padding: 1rem; + border-radius: 3px; +} + +.p-tree .p-tree-container .p-treenode { + padding: 0.143rem; +} + +.p-tree .p-tree-container .p-treenode .p-treenode-content { + border-radius: 3px; + transition: box-shadow 0.2s; + padding: 0; +} + +.p-tree .p-tree-container .p-treenode .p-treenode-content .p-tree-toggler { + margin-right: 0.5rem; + width: 2rem; + height: 2rem; + color: #6c757d; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-tree .p-tree-container .p-treenode .p-treenode-content .p-tree-toggler:enabled:hover { + color: #495057; + border-color: transparent; + background: #e9ecef; +} + +.p-tree .p-tree-container .p-treenode .p-treenode-content .p-tree-toggler:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-tree .p-tree-container .p-treenode .p-treenode-content .p-treenode-icon { + margin-right: 0.5rem; + color: #6c757d; +} + +.p-tree .p-tree-container .p-treenode .p-treenode-content .p-checkbox { + margin-right: 0.5rem; +} + +.p-tree .p-tree-container .p-treenode .p-treenode-content .p-checkbox .p-indeterminate .p-checkbox-icon { + color: #495057; +} + +.p-tree .p-tree-container .p-treenode .p-treenode-content:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 0.15rem #a6d5fa; +} + +.p-tree .p-tree-container .p-treenode .p-treenode-content.p-highlight { + background: #E3F2FD; + color: #495057; +} + +.p-tree .p-tree-container .p-treenode .p-treenode-content.p-highlight .p-tree-toggler, +.p-tree .p-tree-container .p-treenode .p-treenode-content.p-highlight .p-treenode-icon { + color: #495057; +} + +.p-tree .p-tree-container .p-treenode .p-treenode-content.p-highlight .p-tree-toggler:hover, +.p-tree .p-tree-container .p-treenode .p-treenode-content.p-highlight .p-treenode-icon:hover { + color: #495057; +} + +.p-tree .p-tree-container .p-treenode .p-treenode-content.p-treenode-selectable:not(.p-highlight):hover { + background: #e9ecef; + color: #495057; +} + +.p-tree .p-tree-container .p-treenode .p-treenode-content.p-treenode-dragover { + background: #e9ecef; + color: #495057; +} + +.p-tree .p-tree-filter-container { + margin-bottom: 0.5rem; +} + +.p-tree .p-tree-filter-container .p-tree-filter { + width: 100%; + padding-right: 1.5rem; +} + +.p-tree .p-tree-filter-container .p-tree-filter-icon { + right: 0.5rem; + color: #6c757d; +} + +.p-tree .p-treenode-children { + padding: 0 0 0 1rem; +} + +.p-tree .p-tree-loading-icon { + font-size: 2rem; +} + +.p-tree .p-treenode-droppoint.p-treenode-droppoint-active { + background-color: #89c8f7; +} + +.p-tree.p-tree-horizontal .p-treenode .p-treenode-content { + border-radius: 3px; + border: 1px solid #dee2e6; + background-color: #FFFFFF; + color: #495057; + padding: 0; + transition: box-shadow 0.2s; +} + +.p-tree.p-tree-horizontal .p-treenode .p-treenode-content.p-highlight { + background-color: #E3F2FD; + color: #495057; +} + +.p-tree.p-tree-horizontal .p-treenode .p-treenode-content.p-highlight .p-treenode-icon { + color: #495057; +} + +.p-tree.p-tree-horizontal .p-treenode .p-treenode-content .p-tree-toggler { + margin-right: 0.5rem; +} + +.p-tree.p-tree-horizontal .p-treenode .p-treenode-content .p-treenode-icon { + color: #6c757d; + margin-right: 0.5rem; +} + +.p-tree.p-tree-horizontal .p-treenode .p-treenode-content .p-checkbox { + margin-right: 0.5rem; +} + +.p-tree.p-tree-horizontal .p-treenode .p-treenode-content .p-treenode-label:not(.p-highlight):hover { + background-color: inherit; + color: inherit; +} + +.p-tree.p-tree-horizontal .p-treenode .p-treenode-content.p-treenode-selectable:not(.p-highlight):hover { + background: #e9ecef; + color: #495057; +} + +.p-tree.p-tree-horizontal .p-treenode .p-treenode-content:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-treetable .p-paginator-top { + border-width: 0 0 1px 0; + border-radius: 0; +} + +.p-treetable .p-paginator-bottom { + border-width: 0 0 1px 0; + border-radius: 0; +} + +.p-treetable .p-treetable-header { + background: #f8f9fa; + color: #495057; + border: 1px solid #e9ecef; + border-width: 1px 0 1px 0; + padding: 1rem 1rem; + font-weight: 600; +} + +.p-treetable .p-treetable-footer { + background: #f8f9fa; + color: #495057; + border: 1px solid #e9ecef; + border-width: 0 0 1px 0; + padding: 1rem 1rem; + font-weight: 600; +} + +.p-treetable .p-treetable-thead > tr > th { + text-align: left; + padding: 1rem 1rem; + border: 1px solid #e9ecef; + border-width: 0 0 1px 0; + font-weight: 600; + color: #495057; + background: #f8f9fa; + transition: box-shadow 0.2s; +} + +.p-treetable .p-treetable-tfoot > tr > td { + text-align: left; + padding: 1rem 1rem; + border: 1px solid #e9ecef; + border-width: 0 0 1px 0; + font-weight: 600; + color: #495057; + background: #f8f9fa; +} + +.p-treetable .p-sortable-column { + outline-color: #a6d5fa; +} + +.p-treetable .p-sortable-column .p-sortable-column-icon { + color: #6c757d; + margin-left: 0.5rem; +} + +.p-treetable .p-sortable-column .p-sortable-column-badge { + border-radius: 50%; + height: 1.143rem; + min-width: 1.143rem; + line-height: 1.143rem; + color: #495057; + background: #E3F2FD; + margin-left: 0.5rem; +} + +.p-treetable .p-sortable-column:not(.p-highlight):hover { + background: #e9ecef; + color: #495057; +} + +.p-treetable .p-sortable-column:not(.p-highlight):hover .p-sortable-column-icon { + color: #6c757d; +} + +.p-treetable .p-sortable-column.p-highlight { + background: #f8f9fa; + color: #2196F3; +} + +.p-treetable .p-sortable-column.p-highlight .p-sortable-column-icon { + color: #2196F3; +} + +.p-treetable .p-treetable-tbody > tr { + background: #FFFFFF; + color: #495057; + transition: box-shadow 0.2s; +} + +.p-treetable .p-treetable-tbody > tr > td { + text-align: left; + border: 1px solid #e9ecef; + border-width: 0 0 1px 0; + padding: 1rem 1rem; +} + +.p-treetable .p-treetable-tbody > tr > td .p-treetable-toggler { + width: 2rem; + height: 2rem; + color: #6c757d; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; + margin-right: 0.5rem; +} + +.p-treetable .p-treetable-tbody > tr > td .p-treetable-toggler:enabled:hover { + color: #495057; + border-color: transparent; + background: #e9ecef; +} + +.p-treetable .p-treetable-tbody > tr > td .p-treetable-toggler:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-treetable .p-treetable-tbody > tr > td p-treetablecheckbox .p-checkbox { + margin-right: 0.5rem; +} + +.p-treetable .p-treetable-tbody > tr > td p-treetablecheckbox .p-checkbox .p-indeterminate .p-checkbox-icon { + color: #495057; +} + +.p-treetable .p-treetable-tbody > tr:focus { + outline: 0.15rem solid #a6d5fa; + outline-offset: -0.15rem; +} + +.p-treetable .p-treetable-tbody > tr.p-highlight { + background: #E3F2FD; + color: #495057; +} + +.p-treetable .p-treetable-tbody > tr.p-highlight .p-treetable-toggler { + color: #495057; +} + +.p-treetable .p-treetable-tbody > tr.p-highlight .p-treetable-toggler:hover { + color: #495057; +} + +.p-treetable.p-treetable-hoverable-rows .p-treetable-tbody > tr:not(.p-highlight):hover { + background: #e9ecef; + color: #495057; +} + +.p-treetable.p-treetable-hoverable-rows .p-treetable-tbody > tr:not(.p-highlight):hover .p-treetable-toggler { + color: #495057; +} + +.p-treetable .p-column-resizer-helper { + background: #2196F3; +} + +.p-treetable .p-treetable-scrollable-header, +.p-treetable .p-treetable-scrollable-footer { + background: #f8f9fa; +} + +.p-treetable .p-treetable-loading-icon { + font-size: 2rem; +} + +.p-treetable.p-treetable-gridlines .p-datatable-header { + border-width: 1px 1px 0 1px; +} + +.p-treetable.p-treetable-gridlines .p-treetable-footer { + border-width: 0 1px 1px 1px; +} + +.p-treetable.p-treetable-gridlines .p-treetable-top { + border-width: 0 1px 0 1px; +} + +.p-treetable.p-treetable-gridlines .p-treetable-bottom { + border-width: 0 1px 1px 1px; +} + +.p-treetable.p-treetable-gridlines .p-treetable-thead > tr > th { + border-width: 1px; +} + +.p-treetable.p-treetable-gridlines .p-treetable-tbody > tr > td { + border-width: 1px; +} + +.p-treetable.p-treetable-gridlines .p-treetable-tfoot > tr > td { + border-width: 1px; +} + +.p-treetable.p-treetable-sm .p-treetable-header { + padding: 0.875rem 0.875rem; +} + +.p-treetable.p-treetable-sm .p-treetable-thead > tr > th { + padding: 0.5rem 0.5rem; +} + +.p-treetable.p-treetable-sm .p-treetable-tbody > tr > td { + padding: 0.5rem 0.5rem; +} + +.p-treetable.p-treetable-sm .p-treetable-tfoot > tr > td { + padding: 0.5rem 0.5rem; +} + +.p-treetable.p-treetable-sm .p-treetable-footer { + padding: 0.5rem 0.5rem; +} + +.p-treetable.p-treetable-lg .p-treetable-header { + padding: 1.25rem 1.25rem; +} + +.p-treetable.p-treetable-lg .p-treetable-thead > tr > th { + padding: 1.25rem 1.25rem; +} + +.p-treetable.p-treetable-lg .p-treetable-tbody > tr > td { + padding: 1.25rem 1.25rem; +} + +.p-treetable.p-treetable-lg .p-treetable-tfoot > tr > td { + padding: 1.25rem 1.25rem; +} + +.p-treetable.p-treetable-lg .p-treetable-footer { + padding: 1.25rem 1.25rem; +} + +.p-virtualscroller .p-virtualscroller-header { + background: #f8f9fa; + color: #495057; + border: 1px solid #e9ecef; + border-width: 1px 0 1px 0; + padding: 1rem 1rem; + font-weight: 600; +} + +.p-virtualscroller .p-virtualscroller-content { + background: #FFFFFF; + color: #495057; + border: 0 none; + padding: 0; +} + +.p-virtualscroller .p-virtualscroller-footer { + background: #f8f9fa; + color: #495057; + border: 1px solid #e9ecef; + border-width: 0 0 1px 0; + padding: 1rem 1rem; + font-weight: 600; + border-bottom-left-radius: 3px; + border-bottom-right-radius: 3px; +} + +.p-accordion .p-accordion-header .p-accordion-header-link { + padding: 1rem; + border: 1px solid #dee2e6; + color: #495057; + background: #f8f9fa; + font-weight: 600; + border-radius: 3px; + transition: box-shadow 0.2s; +} + +.p-accordion .p-accordion-header .p-accordion-header-link .p-accordion-toggle-icon { + margin-right: 0.5rem; +} + +.p-accordion .p-accordion-header:not(.p-disabled) .p-accordion-header-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-accordion .p-accordion-header:not(.p-highlight):not(.p-disabled):hover .p-accordion-header-link { + background: #e9ecef; + border-color: #dee2e6; + color: #495057; +} + +.p-accordion .p-accordion-header:not(.p-disabled).p-highlight .p-accordion-header-link { + background: #f8f9fa; + border-color: #dee2e6; + color: #495057; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} + +.p-accordion .p-accordion-header:not(.p-disabled).p-highlight:hover .p-accordion-header-link { + border-color: #dee2e6; + background: #e9ecef; + color: #495057; +} + +.p-accordion .p-accordion-content { + padding: 1rem; + border: 1px solid #dee2e6; + background: #FFFFFF; + color: #495057; + border-top: 0; + border-top-right-radius: 0; + border-top-left-radius: 0; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} + +.p-accordion p-accordiontab .p-accordion-tab { + margin-bottom: 0; +} + +.p-accordion p-accordiontab .p-accordion-header .p-accordion-header-link { + border-radius: 0; +} + +.p-accordion p-accordiontab .p-accordion-content { + border-radius: 0; +} + +.p-accordion p-accordiontab:not(:first-child) .p-accordion-header .p-accordion-header-link { + border-top: 0 none; +} + +.p-accordion p-accordiontab:not(:first-child) .p-accordion-header:not(.p-highlight):not(.p-disabled):hover .p-accordion-header-link, .p-accordion p-accordiontab:not(:first-child) .p-accordion-header:not(.p-disabled).p-highlight:hover .p-accordion-header-link { + border-top: 0 none; +} + +.p-accordion p-accordiontab:first-child .p-accordion-header .p-accordion-header-link { + border-top-right-radius: 3px; + border-top-left-radius: 3px; +} + +.p-accordion p-accordiontab:last-child .p-accordion-header:not(.p-highlight) .p-accordion-header-link { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} + +.p-accordion p-accordiontab:last-child .p-accordion-content { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} + +.p-card { + background: #FFFFFF; + color: #495057; + box-shadow: 0 2px 1px -1px rgba(0, 0, 0, 0.2), 0 1px 1px 0 rgba(0, 0, 0, 0.14), 0 1px 3px 0 rgba(0, 0, 0, 0.12); + border-radius: 3px; +} + +.p-card .p-card-body { + padding: 1rem; +} + +.p-card .p-card-title { + font-size: 1.5rem; + font-weight: 700; + margin-bottom: 0.5rem; +} + +.p-card .p-card-subtitle { + font-weight: 400; + margin-bottom: 0.5rem; + color: #6c757d; +} + +.p-card .p-card-content { + padding: 1rem 0; +} + +.p-card .p-card-footer { + padding: 1rem 0 0 0; +} + +.p-divider .p-divider-content { + background-color: #FFFFFF; +} + +.p-divider.p-divider-horizontal { + margin: 1rem 0; + padding: 0 1rem; +} + +.p-divider.p-divider-horizontal:before { + border-top: 1px #dee2e6; +} + +.p-divider.p-divider-horizontal .p-divider-content { + padding: 0 0.5rem; +} + +.p-divider.p-divider-vertical { + margin: 0 1rem; + padding: 1rem 0; +} + +.p-divider.p-divider-vertical:before { + border-left: 1px #dee2e6; +} + +.p-divider.p-divider-vertical .p-divider-content { + padding: 0.5rem 0; +} + +.p-fieldset { + border: 1px solid #dee2e6; + background: #FFFFFF; + color: #495057; + border-radius: 3px; +} + +.p-fieldset .p-fieldset-legend { + padding: 1rem; + border: 1px solid #dee2e6; + color: #495057; + background: #f8f9fa; + font-weight: 600; + border-radius: 3px; +} + +.p-fieldset.p-fieldset-toggleable .p-fieldset-legend { + padding: 0; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-fieldset.p-fieldset-toggleable .p-fieldset-legend a { + padding: 1rem; + color: #495057; + border-radius: 3px; + transition: box-shadow 0.2s; +} + +.p-fieldset.p-fieldset-toggleable .p-fieldset-legend a .p-fieldset-toggler { + margin-right: 0.5rem; +} + +.p-fieldset.p-fieldset-toggleable .p-fieldset-legend a:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-fieldset.p-fieldset-toggleable .p-fieldset-legend:hover { + background: #e9ecef; + border-color: #dee2e6; + color: #495057; +} + +.p-fieldset .p-fieldset-content { + padding: 1rem; +} + +.p-panel .p-panel-header { + border: 1px solid #dee2e6; + padding: 1rem; + background: #f8f9fa; + color: #495057; + border-top-right-radius: 3px; + border-top-left-radius: 3px; +} + +.p-panel .p-panel-header .p-panel-title { + font-weight: 600; +} + +.p-panel .p-panel-header .p-panel-header-icon { + width: 2rem; + height: 2rem; + color: #6c757d; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-panel .p-panel-header .p-panel-header-icon:enabled:hover { + color: #495057; + border-color: transparent; + background: #e9ecef; +} + +.p-panel .p-panel-header .p-panel-header-icon:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-panel.p-panel-toggleable .p-panel-header { + padding: 0.5rem 1rem; +} + +.p-panel .p-panel-content { + padding: 1rem; + border: 1px solid #dee2e6; + background: #FFFFFF; + color: #495057; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; + border-top: 0 none; +} + +.p-panel .p-panel-footer { + padding: 0.5rem 1rem; + border: 1px solid #dee2e6; + background: #FFFFFF; + color: #495057; + border-top: 0 none; +} + +.p-panel .p-panel-icons-end { + order: 2; + margin-left: auto; +} + +.p-panel .p-panel-icons-start { + order: 0; + margin-right: 0.5rem; +} + +.p-panel .p-panel-icons-center { + order: 2; + width: 100%; + text-align: center; +} + +.p-scrollpanel .p-scrollpanel-bar { + background: #f8f9fa; + border: 0 none; +} + +.p-splitter { + border: 1px solid #dee2e6; + background: #FFFFFF; + border-radius: 3px; + color: #495057; +} + +.p-splitter .p-splitter-gutter { + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; + background: #f8f9fa; +} + +.p-splitter .p-splitter-gutter .p-splitter-gutter-handle { + background: #dee2e6; +} + +.p-splitter .p-splitter-gutter-resizing { + background: #dee2e6; +} + +.p-tabview .p-tabview-nav { + background: #FFFFFF; + border: 1px solid #dee2e6; + border-width: 0 0 2px 0; +} + +.p-tabview .p-tabview-nav li { + margin-right: 0; +} + +.p-tabview .p-tabview-nav li .p-tabview-nav-link { + border: solid #dee2e6; + border-width: 0 0 2px 0; + border-color: transparent transparent #dee2e6 transparent; + background: #FFFFFF; + color: #6c757d; + padding: 1rem; + font-weight: 600; + border-top-right-radius: 3px; + border-top-left-radius: 3px; + transition: box-shadow 0.2s; + margin: 0 0 -2px 0; +} + +.p-tabview .p-tabview-nav li .p-tabview-nav-link:not(.p-disabled):focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 0.2rem #a6d5fa; +} + +.p-tabview .p-tabview-nav li:not(.p-highlight):not(.p-disabled):hover .p-tabview-nav-link { + background: #FFFFFF; + border-color: #6c757d; + color: #6c757d; +} + +.p-tabview .p-tabview-nav li.p-highlight .p-tabview-nav-link { + background: #FFFFFF; + border-color: #2196F3; + color: #2196F3; +} + +.p-tabview .p-tabview-left-icon { + margin-right: 0.5rem; +} + +.p-tabview .p-tabview-right-icon { + margin-left: 0.5rem; +} + +.p-tabview .p-tabview-close { + margin-left: 0.5rem; +} + +.p-tabview .p-tabview-nav-btn.p-link { + background: #FFFFFF; + color: #2196F3; + width: 2.357rem; + box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12); + border-radius: 0; +} + +.p-tabview .p-tabview-nav-btn.p-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 0.2rem #a6d5fa; +} + +.p-tabview .p-tabview-panels { + background: #FFFFFF; + padding: 1rem; + border: 0 none; + color: #495057; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} + +.p-toolbar { + background: #f8f9fa; + border: 1px solid #dee2e6; + padding: 1rem; + border-radius: 3px; +} + +.p-toolbar .p-toolbar-separator { + margin: 0 0.5rem; +} + +.p-confirm-popup { + background: #FFFFFF; + color: #495057; + border: 0 none; + border-radius: 3px; + box-shadow: 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12); +} + +.p-confirm-popup .p-confirm-popup-content { + padding: 1rem; +} + +.p-confirm-popup .p-confirm-popup-footer { + text-align: right; + padding: 0.5rem 1rem; +} + +.p-confirm-popup .p-confirm-popup-footer button { + margin: 0 0.5rem 0 0; + width: auto; +} + +.p-confirm-popup .p-confirm-popup-footer button:last-child { + margin: 0; +} + +.p-confirm-popup:after { + border: solid transparent; + border-color: rgba(255, 255, 255, 0); + border-bottom-color: #FFFFFF; +} + +.p-confirm-popup:before { + border: solid transparent; + border-color: rgba(255, 255, 255, 0); + border-bottom-color: #FFFFFF; +} + +.p-confirm-popup.p-confirm-popup-flipped:after { + border-top-color: #FFFFFF; +} + +.p-confirm-popup.p-confirm-popup-flipped:before { + border-top-color: #FFFFFF; +} + +.p-confirm-popup .p-confirm-popup-icon { + font-size: 1.5rem; +} + +.p-confirm-popup .p-confirm-popup-message { + margin-left: 1rem; +} + +.p-dialog { + border-radius: 8px; + //box-shadow: 0 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12); + box-shadow: 0 12px 32px rgba(0, 0, 0, 0.32); + //border: 0 none; + background: #FFFFFF; + overflow: hidden; +} + +.p-dialog .p-dialog-header { + border-bottom: 0 none; + //background: #FFFFFF; + //color: #495057; + color: #1B0D3D; + background: rgba(88, 0, 176, 0.1); + padding: 12px 24px; + border-top-right-radius: 8px; + border-top-left-radius: 8px; +} + +.p-dialog .p-dialog-header .p-dialog-title { + font-weight: 600; + font-size: 20px; + line-height: 32px; + color: #1B0D3D; +} + +.p-dialog .p-dialog-header .p-dialog-header-icon { + width: 2rem; + height: 2rem; + color: #5800B0; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; + margin-right: 0.5rem; +} + +.p-dialog .p-dialog-header .p-dialog-header-icon:enabled:hover { + color: #8961fb; + //border-color: transparent; + //background: #e9ecef; +} + +.p-dialog .p-dialog-header .p-dialog-header-icon:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #562ec8; +} + +.p-dialog .p-dialog-header .p-dialog-header-icon:last-child { + margin-right: 0; +} + +.p-dialog .p-dialog-content { + background: #FFFFFF; + color: #495057; + padding: 24px; +} + +.p-dialog .p-dialog-footer { + border-top: 0 none; + background: #FFFFFF; + color: #495057; + padding: 0 1.5rem 1.5rem 1.5rem; + text-align: right; + border-bottom-right-radius: 8px; + border-bottom-left-radius: 8px; +} + +.p-dialog .p-dialog-footer button { + margin: 0 0.5rem 0 0; + width: auto; +} + +.p-dialog.p-confirm-dialog .p-confirm-dialog-icon { + font-size: 2rem; +} + +.p-dialog.p-confirm-dialog .p-confirm-dialog-message { + margin-left: 1rem; +} + +.p-overlaypanel { + background: #FFFFFF; + color: #495057; + border: 0 none; + border-radius: 3px; + box-shadow: 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12); +} + +.p-overlaypanel .p-overlaypanel-content { + padding: 1rem; +} + +.p-overlaypanel .p-overlaypanel-close { + background: #2196F3; + color: #FFFFFF; + width: 2rem; + height: 2rem; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; + border-radius: 50%; + position: absolute; + top: -1rem; + right: -1rem; +} + +.p-overlaypanel .p-overlaypanel-close:enabled:hover { + background: #0d89ec; + color: #FFFFFF; +} + +.p-overlaypanel:after { + border: solid transparent; + border-color: rgba(255, 255, 255, 0); + border-bottom-color: #FFFFFF; +} + +.p-overlaypanel:before { + border: solid transparent; + border-color: rgba(255, 255, 255, 0); + border-bottom-color: #FFFFFF; +} + +.p-overlaypanel.p-overlaypanel-flipped:after { + border-top-color: #FFFFFF; +} + +.p-overlaypanel.p-overlaypanel-flipped:before { + border-top-color: #FFFFFF; +} + +.p-sidebar { + background: #FFFFFF; + color: #495057; + border: 0 none; + box-shadow: 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12); +} + +.p-sidebar .p-sidebar-header { + padding: 1rem; +} + +.p-sidebar .p-sidebar-header .p-sidebar-close, +.p-sidebar .p-sidebar-header .p-sidebar-icon { + width: 2rem; + height: 2rem; + color: #6c757d; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-sidebar .p-sidebar-header .p-sidebar-close:enabled:hover, +.p-sidebar .p-sidebar-header .p-sidebar-icon:enabled:hover { + color: #495057; + border-color: transparent; + background: #e9ecef; +} + +.p-sidebar .p-sidebar-header .p-sidebar-close:focus, +.p-sidebar .p-sidebar-header .p-sidebar-icon:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-sidebar .p-sidebar-header + .p-sidebar-content { + padding-top: 0; +} + +.p-sidebar .p-sidebar-content { + padding: 1rem; +} + +.p-tooltip .p-tooltip-text { + background: #495057; + color: #FFFFFF; + padding: 0.5rem 0.5rem; + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); + border-radius: 3px; +} + +.p-tooltip.p-tooltip-right .p-tooltip-arrow { + border-right-color: #495057; +} + +.p-tooltip.p-tooltip-left .p-tooltip-arrow { + border-left-color: #495057; +} + +.p-tooltip.p-tooltip-top .p-tooltip-arrow { + border-top-color: #495057; +} + +.p-tooltip.p-tooltip-bottom .p-tooltip-arrow { + border-bottom-color: #495057; +} + +.p-fileupload .p-fileupload-buttonbar { + background: #f8f9fa; + padding: 1rem; + border: 1px solid #dee2e6; + color: #495057; + border-bottom: 0 none; + border-top-right-radius: 3px; + border-top-left-radius: 3px; +} + +.p-fileupload .p-fileupload-buttonbar .p-button { + margin-right: 0.5rem; +} + +.p-fileupload .p-fileupload-buttonbar .p-button.p-fileupload-choose.p-focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-fileupload .p-fileupload-content { + background: #FFFFFF; + padding: 2rem 1rem; + border: 1px solid #dee2e6; + color: #495057; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} + +.p-fileupload .p-progressbar { + height: 0.25rem; +} + +.p-fileupload .p-fileupload-row > div { + padding: 1rem 1rem; +} + +.p-fileupload.p-fileupload-advanced .p-message { + margin-top: 0; +} + +.p-fileupload-choose:not(.p-disabled):hover { + background: #0d89ec; + color: #FFFFFF; + border-color: #0d89ec; +} + +.p-fileupload-choose:not(.p-disabled):active { + background: #0b7ad1; + color: #FFFFFF; + border-color: #0b7ad1; +} + +.p-breadcrumb { + background: #FFFFFF; + border: 1px solid #dee2e6; + border-radius: 3px; + padding: 1rem; +} + +.p-breadcrumb ul li .p-menuitem-link { + transition: box-shadow 0.2s; + border-radius: 3px; +} + +.p-breadcrumb ul li .p-menuitem-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-breadcrumb ul li .p-menuitem-link .p-menuitem-text { + color: #495057; +} + +.p-breadcrumb ul li .p-menuitem-link .p-menuitem-icon { + color: #6c757d; +} + +.p-breadcrumb ul li.p-breadcrumb-chevron { + margin: 0 0.5rem 0 0.5rem; + color: #495057; +} + +.p-breadcrumb ul li:last-child .p-menuitem-text { + color: #495057; +} + +.p-breadcrumb ul li:last-child .p-menuitem-icon { + color: #6c757d; +} + +.p-contextmenu { + padding: 0.25rem 0; + background: #FFFFFF; + color: #495057; + border: 0 none; + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); + border-radius: 3px; + width: 12.5rem; +} + +.p-contextmenu .p-menuitem-link { + padding: 0.75rem 1rem; + color: #495057; + border-radius: 0; + transition: box-shadow 0.2s; + user-select: none; +} + +.p-contextmenu .p-menuitem-link .p-menuitem-text { + color: #495057; +} + +.p-contextmenu .p-menuitem-link .p-menuitem-icon { + color: #6c757d; + margin-right: 0.5rem; +} + +.p-contextmenu .p-menuitem-link .p-submenu-icon { + color: #6c757d; +} + +.p-contextmenu .p-menuitem-link:not(.p-disabled):hover { + background: #e9ecef; +} + +.p-contextmenu .p-menuitem-link:not(.p-disabled):hover .p-menuitem-text { + color: #495057; +} + +.p-contextmenu .p-menuitem-link:not(.p-disabled):hover .p-menuitem-icon { + color: #6c757d; +} + +.p-contextmenu .p-menuitem-link:not(.p-disabled):hover .p-submenu-icon { + color: #6c757d; +} + +.p-contextmenu .p-menuitem-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 0.15rem #a6d5fa; +} + +.p-contextmenu .p-submenu-list { + padding: 0.25rem 0; + background: #FFFFFF; + border: 0 none; + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); + border-radius: 3px; +} + +.p-contextmenu .p-menuitem { + margin: 0; +} + +.p-contextmenu .p-menuitem:last-child { + margin: 0; +} + +.p-contextmenu .p-menuitem.p-menuitem-active > .p-menuitem-link { + background: #e9ecef; +} + +.p-contextmenu .p-menuitem.p-menuitem-active > .p-menuitem-link .p-menuitem-text { + color: #495057; +} + +.p-contextmenu .p-menuitem.p-menuitem-active > .p-menuitem-link .p-menuitem-icon, .p-contextmenu .p-menuitem.p-menuitem-active > .p-menuitem-link .p-submenu-icon { + color: #6c757d; +} + +.p-contextmenu .p-menu-separator { + border-top: 1px solid #dee2e6; + margin: 0.25rem 0; +} + +.p-contextmenu .p-submenu-icon { + font-size: 0.875rem; +} + +.p-dock .p-dock-list { + background: rgba(255, 255, 255, 0.1); + border: 1px solid rgba(255, 255, 255, 0.2); + padding: 0.5rem 0.5rem; + border-radius: 0.5rem; +} + +.p-dock .p-dock-item { + padding: 0.5rem; +} + +.p-dock .p-dock-action { + width: 4rem; + height: 4rem; +} + +.p-dock.p-dock-top .p-dock-item-second-prev, +.p-dock.p-dock-top .p-dock-item-second-next, .p-dock.p-dock-bottom .p-dock-item-second-prev, +.p-dock.p-dock-bottom .p-dock-item-second-next { + margin: 0 0.9rem; +} + +.p-dock.p-dock-top .p-dock-item-prev, +.p-dock.p-dock-top .p-dock-item-next, .p-dock.p-dock-bottom .p-dock-item-prev, +.p-dock.p-dock-bottom .p-dock-item-next { + margin: 0 1.3rem; +} + +.p-dock.p-dock-top .p-dock-item-current, .p-dock.p-dock-bottom .p-dock-item-current { + margin: 0 1.5rem; +} + +.p-dock.p-dock-left .p-dock-item-second-prev, +.p-dock.p-dock-left .p-dock-item-second-next, .p-dock.p-dock-right .p-dock-item-second-prev, +.p-dock.p-dock-right .p-dock-item-second-next { + margin: 0.9rem 0; +} + +.p-dock.p-dock-left .p-dock-item-prev, +.p-dock.p-dock-left .p-dock-item-next, .p-dock.p-dock-right .p-dock-item-prev, +.p-dock.p-dock-right .p-dock-item-next { + margin: 1.3rem 0; +} + +.p-dock.p-dock-left .p-dock-item-current, .p-dock.p-dock-right .p-dock-item-current { + margin: 1.5rem 0; +} + +@media screen and (max-width: 960px) { + .p-dock.p-dock-top .p-dock-list-container, .p-dock.p-dock-bottom .p-dock-list-container { + overflow-x: auto; + width: 100%; + } + .p-dock.p-dock-top .p-dock-list-container .p-dock-list, .p-dock.p-dock-bottom .p-dock-list-container .p-dock-list { + margin: 0 auto; + } + .p-dock.p-dock-left .p-dock-list-container, .p-dock.p-dock-right .p-dock-list-container { + overflow-y: auto; + height: 100%; + } + .p-dock.p-dock-left .p-dock-list-container .p-dock-list, .p-dock.p-dock-right .p-dock-list-container .p-dock-list { + margin: auto 0; + } + .p-dock .p-dock-list .p-dock-item { + transform: none; + margin: 0; + } +} + +.p-megamenu { + padding: 0.5rem; + background: #f8f9fa; + color: #495057; + border: 1px solid #dee2e6; + border-radius: 3px; +} + +.p-megamenu .p-megamenu-root-list > .p-menuitem > .p-menuitem-link { + padding: 0.75rem 1rem; + color: #495057; + border-radius: 3px; + transition: box-shadow 0.2s; + user-select: none; +} + +.p-megamenu .p-megamenu-root-list > .p-menuitem > .p-menuitem-link .p-menuitem-text { + color: #495057; +} + +.p-megamenu .p-megamenu-root-list > .p-menuitem > .p-menuitem-link .p-menuitem-icon { + color: #6c757d; + margin-right: 0.5rem; +} + +.p-megamenu .p-megamenu-root-list > .p-menuitem > .p-menuitem-link .p-submenu-icon { + color: #6c757d; + margin-left: 0.5rem; +} + +.p-megamenu .p-megamenu-root-list > .p-menuitem > .p-menuitem-link:not(.p-disabled):hover { + background: #e9ecef; +} + +.p-megamenu .p-megamenu-root-list > .p-menuitem > .p-menuitem-link:not(.p-disabled):hover .p-menuitem-text { + color: #495057; +} + +.p-megamenu .p-megamenu-root-list > .p-menuitem > .p-menuitem-link:not(.p-disabled):hover .p-menuitem-icon { + color: #6c757d; +} + +.p-megamenu .p-megamenu-root-list > .p-menuitem > .p-menuitem-link:not(.p-disabled):hover .p-submenu-icon { + color: #6c757d; +} + +.p-megamenu .p-megamenu-root-list > .p-menuitem > .p-menuitem-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 0.15rem #a6d5fa; +} + +.p-megamenu .p-megamenu-root-list > .p-menuitem.p-menuitem-active > .p-menuitem-link, +.p-megamenu .p-megamenu-root-list > .p-menuitem.p-menuitem-active > .p-menuitem-link:not(.p-disabled):hover { + background: #e9ecef; +} + +.p-megamenu .p-megamenu-root-list > .p-menuitem.p-menuitem-active > .p-menuitem-link .p-menuitem-text, +.p-megamenu .p-megamenu-root-list > .p-menuitem.p-menuitem-active > .p-menuitem-link:not(.p-disabled):hover .p-menuitem-text { + color: #495057; +} + +.p-megamenu .p-megamenu-root-list > .p-menuitem.p-menuitem-active > .p-menuitem-link .p-menuitem-icon, +.p-megamenu .p-megamenu-root-list > .p-menuitem.p-menuitem-active > .p-menuitem-link:not(.p-disabled):hover .p-menuitem-icon { + color: #6c757d; +} + +.p-megamenu .p-megamenu-root-list > .p-menuitem.p-menuitem-active > .p-menuitem-link .p-submenu-icon, +.p-megamenu .p-megamenu-root-list > .p-menuitem.p-menuitem-active > .p-menuitem-link:not(.p-disabled):hover .p-submenu-icon { + color: #6c757d; +} + +.p-megamenu .p-menuitem-link { + padding: 0.75rem 1rem; + color: #495057; + border-radius: 0; + transition: box-shadow 0.2s; + user-select: none; +} + +.p-megamenu .p-menuitem-link .p-menuitem-text { + color: #495057; +} + +.p-megamenu .p-menuitem-link .p-menuitem-icon { + color: #6c757d; + margin-right: 0.5rem; +} + +.p-megamenu .p-menuitem-link .p-submenu-icon { + color: #6c757d; +} + +.p-megamenu .p-menuitem-link:not(.p-disabled):hover { + background: #e9ecef; +} + +.p-megamenu .p-menuitem-link:not(.p-disabled):hover .p-menuitem-text { + color: #495057; +} + +.p-megamenu .p-menuitem-link:not(.p-disabled):hover .p-menuitem-icon { + color: #6c757d; +} + +.p-megamenu .p-menuitem-link:not(.p-disabled):hover .p-submenu-icon { + color: #6c757d; +} + +.p-megamenu .p-menuitem-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 0.15rem #a6d5fa; +} + +.p-megamenu .p-megamenu-panel { + background: #FFFFFF; + color: #495057; + border: 0 none; + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); +} + +.p-megamenu .p-megamenu-submenu-header { + margin: 0; + padding: 0.75rem 1rem; + color: #495057; + background: #FFFFFF; + font-weight: 600; + border-top-right-radius: 3px; + border-top-left-radius: 3px; +} + +.p-megamenu .p-megamenu-submenu { + padding: 0.25rem 0; + width: 12.5rem; +} + +.p-megamenu .p-megamenu-submenu .p-menu-separator { + border-top: 1px solid #dee2e6; + margin: 0.25rem 0; +} + +.p-megamenu .p-megamenu-submenu .p-menuitem { + margin: 0; +} + +.p-megamenu .p-megamenu-submenu .p-menuitem:last-child { + margin: 0; +} + +.p-megamenu .p-menuitem.p-menuitem-active > .p-menuitem-link { + background: #e9ecef; +} + +.p-megamenu .p-menuitem.p-menuitem-active > .p-menuitem-link .p-menuitem-text { + color: #495057; +} + +.p-megamenu .p-menuitem.p-menuitem-active > .p-menuitem-link .p-menuitem-icon, .p-megamenu .p-menuitem.p-menuitem-active > .p-menuitem-link .p-submenu-icon { + color: #6c757d; +} + +.p-megamenu.p-megamenu-vertical { + width: 12.5rem; + padding: 0.25rem 0; +} + +.p-megamenu.p-megamenu-vertical .p-menuitem { + margin: 0; +} + +.p-megamenu.p-megamenu-vertical .p-menuitem:last-child { + margin: 0; +} + +.p-menu { + padding: 0.25rem 0; + background: #FFFFFF; + color: #495057; + border: 1px solid #dee2e6; + border-radius: 3px; + width: 12.5rem; +} + +.p-menu .p-menuitem-link { + padding: 0.75rem 1rem; + color: #495057; + border-radius: 0; + transition: box-shadow 0.2s; + user-select: none; +} + +.p-menu .p-menuitem-link .p-menuitem-text { + color: #495057; +} + +.p-menu .p-menuitem-link .p-menuitem-icon { + color: #6c757d; + margin-right: 0.5rem; +} + +.p-menu .p-menuitem-link .p-submenu-icon { + color: #6c757d; +} + +.p-menu .p-menuitem-link:not(.p-disabled):hover { + background: #e9ecef; +} + +.p-menu .p-menuitem-link:not(.p-disabled):hover .p-menuitem-text { + color: #495057; +} + +.p-menu .p-menuitem-link:not(.p-disabled):hover .p-menuitem-icon { + color: #6c757d; +} + +.p-menu .p-menuitem-link:not(.p-disabled):hover .p-submenu-icon { + color: #6c757d; +} + +.p-menu .p-menuitem-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 0.15rem #a6d5fa; +} + +.p-menu.p-menu-overlay { + background: #FFFFFF; + border: 0 none; + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); +} + +.p-menu .p-submenu-header { + margin: 0; + padding: 0.75rem 1rem; + color: #495057; + background: #FFFFFF; + font-weight: 600; + border-top-right-radius: 0; + border-top-left-radius: 0; +} + +.p-menu .p-menu-separator { + border-top: 1px solid #dee2e6; + margin: 0.25rem 0; +} + +.p-menu .p-menuitem { + margin: 0; +} + +.p-menu .p-menuitem:last-child { + margin: 0; +} + +.p-menubar { + padding: 0.5rem; + background: #f8f9fa; + color: #495057; + border: 1px solid #dee2e6; + border-radius: 3px; +} + +.p-menubar .p-menuitem-link { + padding: 0.75rem 1rem; + color: #495057; + border-radius: 0; + transition: box-shadow 0.2s; + user-select: none; +} + +.p-menubar .p-menuitem-link .p-menuitem-text { + color: #495057; +} + +.p-menubar .p-menuitem-link .p-menuitem-icon { + color: #6c757d; + margin-right: 0.5rem; +} + +.p-menubar .p-menuitem-link .p-submenu-icon { + color: #6c757d; +} + +.p-menubar .p-menuitem-link:not(.p-disabled):hover { + background: #e9ecef; +} + +.p-menubar .p-menuitem-link:not(.p-disabled):hover .p-menuitem-text { + color: #495057; +} + +.p-menubar .p-menuitem-link:not(.p-disabled):hover .p-menuitem-icon { + color: #6c757d; +} + +.p-menubar .p-menuitem-link:not(.p-disabled):hover .p-submenu-icon { + color: #6c757d; +} + +.p-menubar .p-menuitem-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 0.15rem #a6d5fa; +} + +.p-menubar .p-menubar-root-list > .p-menuitem > .p-menuitem-link { + padding: 0.75rem 1rem; + color: #495057; + border-radius: 3px; + transition: box-shadow 0.2s; + user-select: none; +} + +.p-menubar .p-menubar-root-list > .p-menuitem > .p-menuitem-link .p-menuitem-text { + color: #495057; +} + +.p-menubar .p-menubar-root-list > .p-menuitem > .p-menuitem-link .p-menuitem-icon { + color: #6c757d; + margin-right: 0.5rem; +} + +.p-menubar .p-menubar-root-list > .p-menuitem > .p-menuitem-link .p-submenu-icon { + color: #6c757d; + margin-left: 0.5rem; +} + +.p-menubar .p-menubar-root-list > .p-menuitem > .p-menuitem-link:not(.p-disabled):hover { + background: #e9ecef; +} + +.p-menubar .p-menubar-root-list > .p-menuitem > .p-menuitem-link:not(.p-disabled):hover .p-menuitem-text { + color: #495057; +} + +.p-menubar .p-menubar-root-list > .p-menuitem > .p-menuitem-link:not(.p-disabled):hover .p-menuitem-icon { + color: #6c757d; +} + +.p-menubar .p-menubar-root-list > .p-menuitem > .p-menuitem-link:not(.p-disabled):hover .p-submenu-icon { + color: #6c757d; +} + +.p-menubar .p-menubar-root-list > .p-menuitem > .p-menuitem-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 0.15rem #a6d5fa; +} + +.p-menubar .p-menubar-root-list > .p-menuitem.p-menuitem-active > .p-menuitem-link, +.p-menubar .p-menubar-root-list > .p-menuitem.p-menuitem-active > .p-menuitem-link:not(.p-disabled):hover { + background: #e9ecef; +} + +.p-menubar .p-menubar-root-list > .p-menuitem.p-menuitem-active > .p-menuitem-link .p-menuitem-text, +.p-menubar .p-menubar-root-list > .p-menuitem.p-menuitem-active > .p-menuitem-link:not(.p-disabled):hover .p-menuitem-text { + color: #495057; +} + +.p-menubar .p-menubar-root-list > .p-menuitem.p-menuitem-active > .p-menuitem-link .p-menuitem-icon, +.p-menubar .p-menubar-root-list > .p-menuitem.p-menuitem-active > .p-menuitem-link:not(.p-disabled):hover .p-menuitem-icon { + color: #6c757d; +} + +.p-menubar .p-menubar-root-list > .p-menuitem.p-menuitem-active > .p-menuitem-link .p-submenu-icon, +.p-menubar .p-menubar-root-list > .p-menuitem.p-menuitem-active > .p-menuitem-link:not(.p-disabled):hover .p-submenu-icon { + color: #6c757d; +} + +.p-menubar .p-submenu-list { + padding: 0.25rem 0; + background: #FFFFFF; + border: 0 none; + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); + width: 12.5rem; +} + +.p-menubar .p-submenu-list .p-menu-separator { + border-top: 1px solid #dee2e6; + margin: 0.25rem 0; +} + +.p-menubar .p-submenu-list .p-submenu-icon { + font-size: 0.875rem; +} + +.p-menubar .p-submenu-list .p-menuitem { + margin: 0; +} + +.p-menubar .p-submenu-list .p-menuitem:last-child { + margin: 0; +} + +.p-menubar .p-menuitem.p-menuitem-active > .p-menuitem-link { + background: #e9ecef; +} + +.p-menubar .p-menuitem.p-menuitem-active > .p-menuitem-link .p-menuitem-text { + color: #495057; +} + +.p-menubar .p-menuitem.p-menuitem-active > .p-menuitem-link .p-menuitem-icon, .p-menubar .p-menuitem.p-menuitem-active > .p-menuitem-link .p-submenu-icon { + color: #6c757d; +} + +@media screen and (max-width: 960px) { + .p-menubar { + position: relative; + } + .p-menubar .p-menubar-button { + display: flex; + width: 2rem; + height: 2rem; + color: #6c757d; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; + } + .p-menubar .p-menubar-button:hover { + color: #6c757d; + background: #e9ecef; + } + .p-menubar .p-menubar-button:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; + } + .p-menubar .p-menubar-root-list { + position: absolute; + display: none; + padding: 0.25rem 0; + background: #FFFFFF; + border: 0 none; + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); + width: 100%; + } + .p-menubar .p-menubar-root-list .p-menu-separator { + border-top: 1px solid #dee2e6; + margin: 0.25rem 0; + } + .p-menubar .p-menubar-root-list .p-submenu-icon { + font-size: 0.875rem; + } + .p-menubar .p-menubar-root-list > .p-menuitem { + width: 100%; + position: static; + } + .p-menubar .p-menubar-root-list > .p-menuitem > .p-menuitem-link { + padding: 0.75rem 1rem; + color: #495057; + border-radius: 0; + transition: box-shadow 0.2s; + user-select: none; + } + .p-menubar .p-menubar-root-list > .p-menuitem > .p-menuitem-link .p-menuitem-text { + color: #495057; + } + .p-menubar .p-menubar-root-list > .p-menuitem > .p-menuitem-link .p-menuitem-icon { + color: #6c757d; + margin-right: 0.5rem; + } + .p-menubar .p-menubar-root-list > .p-menuitem > .p-menuitem-link .p-submenu-icon { + color: #6c757d; + } + .p-menubar .p-menubar-root-list > .p-menuitem > .p-menuitem-link:not(.p-disabled):hover { + background: #e9ecef; + } + .p-menubar .p-menubar-root-list > .p-menuitem > .p-menuitem-link:not(.p-disabled):hover .p-menuitem-text { + color: #495057; + } + .p-menubar .p-menubar-root-list > .p-menuitem > .p-menuitem-link:not(.p-disabled):hover .p-menuitem-icon { + color: #6c757d; + } + .p-menubar .p-menubar-root-list > .p-menuitem > .p-menuitem-link:not(.p-disabled):hover .p-submenu-icon { + color: #6c757d; + } + .p-menubar .p-menubar-root-list > .p-menuitem > .p-menuitem-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 0.15rem #a6d5fa; + } + .p-menubar .p-menubar-root-list > .p-menuitem > .p-menuitem-link > .p-submenu-icon { + margin-left: auto; + transition: transform 0.2s; + } + .p-menubar .p-menubar-root-list > .p-menuitem.p-menuitem-active > .p-menuitem-link > .p-submenu-icon { + transform: rotate(-180deg); + } + .p-menubar .p-menubar-root-list .p-submenu-list { + width: 100%; + position: static; + box-shadow: none; + border: 0 none; + } + .p-menubar .p-menubar-root-list .p-submenu-list .p-submenu-icon { + transition: transform 0.2s; + transform: rotate(90deg); + } + .p-menubar .p-menubar-root-list .p-submenu-list .p-menuitem-active > .p-menuitem-link > .p-submenu-icon { + transform: rotate(-90deg); + } + .p-menubar .p-menubar-root-list .p-menuitem { + width: 100%; + position: static; + } + .p-menubar .p-menubar-root-list ul li a { + padding-left: 2.25rem; + } + .p-menubar .p-menubar-root-list ul li ul li a { + padding-left: 3.75rem; + } + .p-menubar .p-menubar-root-list ul li ul li ul li a { + padding-left: 5.25rem; + } + .p-menubar .p-menubar-root-list ul li ul li ul li ul li a { + padding-left: 6.75rem; + } + .p-menubar .p-menubar-root-list ul li ul li ul li ul li ul li a { + padding-left: 8.25rem; + } + .p-menubar.p-menubar-mobile-active .p-menubar-root-list { + display: flex; + flex-direction: column; + top: 100%; + left: 0; + z-index: 1; + } +} + +.p-panelmenu .p-panelmenu-header > a { + padding: 1rem; + border: 1px solid #dee2e6; + color: #495057; + background: #f8f9fa; + font-weight: 600; + border-radius: 3px; + transition: box-shadow 0.2s; +} + +.p-panelmenu .p-panelmenu-header > a .p-panelmenu-icon { + margin-right: 0.5rem; +} + +.p-panelmenu .p-panelmenu-header > a .p-menuitem-icon { + margin-right: 0.5rem; +} + +.p-panelmenu .p-panelmenu-header > a:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-panelmenu .p-panelmenu-header:not(.p-highlight):not(.p-disabled) > a:hover { + background: #e9ecef; + border-color: #dee2e6; + color: #495057; +} + +.p-panelmenu .p-panelmenu-header.p-highlight { + margin-bottom: 0; +} + +.p-panelmenu .p-panelmenu-header.p-highlight > a { + background: #f8f9fa; + border-color: #dee2e6; + color: #495057; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} + +.p-panelmenu .p-panelmenu-header.p-highlight:not(.p-disabled) > a:hover { + border-color: #dee2e6; + background: #e9ecef; + color: #495057; +} + +.p-panelmenu .p-panelmenu-content { + padding: 0.25rem 0; + border: 1px solid #dee2e6; + background: #FFFFFF; + color: #495057; + margin-bottom: 0; + border-top: 0; + border-top-right-radius: 0; + border-top-left-radius: 0; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} + +.p-panelmenu .p-panelmenu-content .p-menuitem .p-menuitem-link { + padding: 0.75rem 1rem; + color: #495057; + border-radius: 0; + transition: box-shadow 0.2s; + user-select: none; +} + +.p-panelmenu .p-panelmenu-content .p-menuitem .p-menuitem-link .p-menuitem-text { + color: #495057; +} + +.p-panelmenu .p-panelmenu-content .p-menuitem .p-menuitem-link .p-menuitem-icon { + color: #6c757d; + margin-right: 0.5rem; +} + +.p-panelmenu .p-panelmenu-content .p-menuitem .p-menuitem-link .p-submenu-icon { + color: #6c757d; +} + +.p-panelmenu .p-panelmenu-content .p-menuitem .p-menuitem-link:not(.p-disabled):hover { + background: #e9ecef; +} + +.p-panelmenu .p-panelmenu-content .p-menuitem .p-menuitem-link:not(.p-disabled):hover .p-menuitem-text { + color: #495057; +} + +.p-panelmenu .p-panelmenu-content .p-menuitem .p-menuitem-link:not(.p-disabled):hover .p-menuitem-icon { + color: #6c757d; +} + +.p-panelmenu .p-panelmenu-content .p-menuitem .p-menuitem-link:not(.p-disabled):hover .p-submenu-icon { + color: #6c757d; +} + +.p-panelmenu .p-panelmenu-content .p-menuitem .p-menuitem-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 0.15rem #a6d5fa; +} + +.p-panelmenu .p-panelmenu-content .p-menuitem .p-menuitem-link .p-panelmenu-icon { + margin-right: 0.5rem; +} + +.p-panelmenu .p-panelmenu-content .p-submenu-list:not(.p-panelmenu-root-submenu) { + padding: 0 0 0 1rem; +} + +.p-panelmenu .p-panelmenu-panel { + margin-bottom: 0; +} + +.p-panelmenu .p-panelmenu-panel .p-panelmenu-header > a { + border-radius: 0; +} + +.p-panelmenu .p-panelmenu-panel .p-panelmenu-content { + border-radius: 0; +} + +.p-panelmenu .p-panelmenu-panel:not(:first-child) .p-panelmenu-header > a { + border-top: 0 none; +} + +.p-panelmenu .p-panelmenu-panel:not(:first-child) .p-panelmenu-header:not(.p-highlight):not(.p-disabled):hover > a, .p-panelmenu .p-panelmenu-panel:not(:first-child) .p-panelmenu-header:not(.p-disabled).p-highlight:hover > a { + border-top: 0 none; +} + +.p-panelmenu .p-panelmenu-panel:first-child .p-panelmenu-header > a { + border-top-right-radius: 3px; + border-top-left-radius: 3px; +} + +.p-panelmenu .p-panelmenu-panel:last-child .p-panelmenu-header:not(.p-highlight) > a { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} + +.p-panelmenu .p-panelmenu-panel:last-child .p-panelmenu-content { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} + +.p-slidemenu { + padding: 0.25rem 0; + background: #FFFFFF; + color: #495057; + border: 1px solid #dee2e6; + border-radius: 3px; + width: 12.5rem; +} + +.p-slidemenu .p-menuitem-link { + padding: 0.75rem 1rem; + color: #495057; + border-radius: 0; + transition: box-shadow 0.2s; + user-select: none; +} + +.p-slidemenu .p-menuitem-link .p-menuitem-text { + color: #495057; +} + +.p-slidemenu .p-menuitem-link .p-menuitem-icon { + color: #6c757d; + margin-right: 0.5rem; +} + +.p-slidemenu .p-menuitem-link .p-submenu-icon { + color: #6c757d; +} + +.p-slidemenu .p-menuitem-link:not(.p-disabled):hover { + background: #e9ecef; +} + +.p-slidemenu .p-menuitem-link:not(.p-disabled):hover .p-menuitem-text { + color: #495057; +} + +.p-slidemenu .p-menuitem-link:not(.p-disabled):hover .p-menuitem-icon { + color: #6c757d; +} + +.p-slidemenu .p-menuitem-link:not(.p-disabled):hover .p-submenu-icon { + color: #6c757d; +} + +.p-slidemenu .p-menuitem-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 0.15rem #a6d5fa; +} + +.p-slidemenu.p-slidemenu-overlay { + background: #FFFFFF; + border: 0 none; + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); +} + +.p-slidemenu .p-slidemenu-list { + padding: 0.25rem 0; + background: #FFFFFF; + border: 0 none; + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); +} + +.p-slidemenu .p-slidemenu.p-slidemenu-active > .p-slidemenu-link { + background: #e9ecef; +} + +.p-slidemenu .p-slidemenu.p-slidemenu-active > .p-slidemenu-link .p-slidemenu-text { + color: #495057; +} + +.p-slidemenu .p-slidemenu.p-slidemenu-active > .p-slidemenu-link .p-slidemenu-icon, .p-slidemenu .p-slidemenu.p-slidemenu-active > .p-slidemenu-link .p-slidemenu-icon { + color: #6c757d; +} + +.p-slidemenu .p-slidemenu-separator { + border-top: 1px solid #dee2e6; + margin: 0.25rem 0; +} + +.p-slidemenu .p-slidemenu-icon { + font-size: 0.875rem; +} + +.p-slidemenu .p-slidemenu-backward { + padding: 0.75rem 1rem; + color: #495057; +} + +.p-steps .p-steps-item .p-menuitem-link { + background: transparent; + transition: box-shadow 0.2s; + border-radius: 3px; + background: #FFFFFF; +} + +.p-steps .p-steps-item .p-menuitem-link .p-steps-number { + color: #495057; + border: 1px solid #e9ecef; + background: #FFFFFF; + min-width: 2rem; + height: 2rem; + line-height: 2rem; + font-size: 1.143rem; + z-index: 1; + border-radius: 50%; +} + +.p-steps .p-steps-item .p-menuitem-link .p-steps-title { + margin-top: 0.5rem; + color: #6c757d; +} + +.p-steps .p-steps-item .p-menuitem-link:not(.p-disabled):focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-steps .p-steps-item.p-highlight .p-steps-number { + background: #E3F2FD; + color: #495057; +} + +.p-steps .p-steps-item.p-highlight .p-steps-title { + font-weight: 600; + color: #495057; +} + +.p-steps .p-steps-item:before { + content: " "; + border-top: 1px solid #dee2e6; + width: 100%; + top: 50%; + left: 0; + display: block; + position: absolute; + margin-top: -1rem; +} + +.p-tabmenu .p-tabmenu-nav { + background: #FFFFFF; + border: 1px solid #dee2e6; + border-width: 0 0 2px 0; +} + +.p-tabmenu .p-tabmenu-nav .p-tabmenuitem { + margin-right: 0; +} + +.p-tabmenu .p-tabmenu-nav .p-tabmenuitem .p-menuitem-link { + border: solid #dee2e6; + border-width: 0 0 2px 0; + border-color: transparent transparent #dee2e6 transparent; + background: #FFFFFF; + color: #6c757d; + padding: 1rem; + font-weight: 600; + border-top-right-radius: 3px; + border-top-left-radius: 3px; + transition: box-shadow 0.2s; + margin: 0 0 -2px 0; +} + +.p-tabmenu .p-tabmenu-nav .p-tabmenuitem .p-menuitem-link .p-menuitem-icon { + margin-right: 0.5rem; +} + +.p-tabmenu .p-tabmenu-nav .p-tabmenuitem .p-menuitem-link:not(.p-disabled):focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 0.2rem #a6d5fa; +} + +.p-tabmenu .p-tabmenu-nav .p-tabmenuitem:not(.p-highlight):not(.p-disabled):hover .p-menuitem-link { + background: #FFFFFF; + border-color: #6c757d; + color: #6c757d; +} + +.p-tabmenu .p-tabmenu-nav .p-tabmenuitem.p-highlight .p-menuitem-link { + background: #FFFFFF; + border-color: #2196F3; + color: #2196F3; +} + +.p-tabmenu .p-tabmenu-left-icon { + margin-right: 0.5rem; +} + +.p-tabmenu .p-tabmenu-right-icon { + margin-left: 0.5rem; +} + +.p-tabmenu .p-tabmenu-nav-btn.p-link { + background: #FFFFFF; + color: #2196F3; + width: 2.357rem; + box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12); + border-radius: 0; +} + +.p-tabmenu .p-tabmenu-nav-btn.p-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 0.2rem #a6d5fa; +} + +.p-tieredmenu { + padding: 0.25rem 0; + background: #FFFFFF; + color: #495057; + border: 1px solid #dee2e6; + border-radius: 3px; + width: 12.5rem; +} + +.p-tieredmenu .p-menuitem-link { + padding: 0.75rem 1rem; + color: #495057; + border-radius: 0; + transition: box-shadow 0.2s; + user-select: none; +} + +.p-tieredmenu .p-menuitem-link .p-menuitem-text { + color: #495057; +} + +.p-tieredmenu .p-menuitem-link .p-menuitem-icon { + color: #6c757d; + margin-right: 0.5rem; +} + +.p-tieredmenu .p-menuitem-link .p-submenu-icon { + color: #6c757d; +} + +.p-tieredmenu .p-menuitem-link:not(.p-disabled):hover { + background: #e9ecef; +} + +.p-tieredmenu .p-menuitem-link:not(.p-disabled):hover .p-menuitem-text { + color: #495057; +} + +.p-tieredmenu .p-menuitem-link:not(.p-disabled):hover .p-menuitem-icon { + color: #6c757d; +} + +.p-tieredmenu .p-menuitem-link:not(.p-disabled):hover .p-submenu-icon { + color: #6c757d; +} + +.p-tieredmenu .p-menuitem-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 0.15rem #a6d5fa; +} + +.p-tieredmenu.p-tieredmenu-overlay { + background: #FFFFFF; + border: 0 none; + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); +} + +.p-tieredmenu .p-submenu-list { + padding: 0.25rem 0; + background: #FFFFFF; + border: 0 none; + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); +} + +.p-tieredmenu .p-menuitem { + margin: 0; +} + +.p-tieredmenu .p-menuitem:last-child { + margin: 0; +} + +.p-tieredmenu .p-menuitem.p-menuitem-active > .p-menuitem-link { + background: #e9ecef; +} + +.p-tieredmenu .p-menuitem.p-menuitem-active > .p-menuitem-link .p-menuitem-text { + color: #495057; +} + +.p-tieredmenu .p-menuitem.p-menuitem-active > .p-menuitem-link .p-menuitem-icon, .p-tieredmenu .p-menuitem.p-menuitem-active > .p-menuitem-link .p-submenu-icon { + color: #6c757d; +} + +.p-tieredmenu .p-menu-separator { + border-top: 1px solid #dee2e6; + margin: 0.25rem 0; +} + +.p-tieredmenu .p-submenu-icon { + font-size: 0.875rem; +} + +.p-inline-message { + padding: 0.5rem 0.5rem; + margin: 0; + border-radius: 3px; +} + +.p-inline-message.p-inline-message-info { + background: #B3E5FC; + border: solid #0891cf; + border-width: 0px; + color: #044868; +} + +.p-inline-message.p-inline-message-info .p-inline-message-icon { + color: #044868; +} + +.p-inline-message.p-inline-message-success { + background: #C8E6C9; + border: solid #439446; + border-width: 0px; + color: #224a23; +} + +.p-inline-message.p-inline-message-success .p-inline-message-icon { + color: #224a23; +} + +.p-inline-message.p-inline-message-warn { + background: #FFECB3; + border: solid #d9a300; + border-width: 0px; + color: #6d5100; +} + +.p-inline-message.p-inline-message-warn .p-inline-message-icon { + color: #6d5100; +} + +.p-inline-message.p-inline-message-error { + background: #FFCDD2; + border: solid #e60017; + border-width: 0px; + color: #73000c; +} + +.p-inline-message.p-inline-message-error .p-inline-message-icon { + color: #73000c; +} + +.p-inline-message .p-inline-message-icon { + font-size: 1rem; + margin-right: 0.5rem; +} + +.p-inline-message .p-inline-message-text { + font-size: 1rem; +} + +.p-inline-message.p-inline-message-icon-only .p-inline-message-icon { + margin-right: 0; +} + +.p-message { + margin: 1rem 0; + border-radius: 3px; +} + +.p-message .p-message-wrapper { + padding: 1rem 1.5rem; +} + +.p-message .p-message-close { + width: 2rem; + height: 2rem; + border-radius: 50%; + background: transparent; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-message .p-message-close:hover { + background: rgba(255, 255, 255, 0.3); +} + +.p-message .p-message-close:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-message.p-message-info { + background: #B3E5FC; + border: solid #0891cf; + border-width: 0 0 0 6px; + color: #044868; +} + +.p-message.p-message-info .p-message-icon { + color: #044868; +} + +.p-message.p-message-info .p-message-close { + color: #044868; +} + +.p-message.p-message-success { + background: #C8E6C9; + border: solid #439446; + border-width: 0 0 0 6px; + color: #224a23; +} + +.p-message.p-message-success .p-message-icon { + color: #224a23; +} + +.p-message.p-message-success .p-message-close { + color: #224a23; +} + +.p-message.p-message-warn { + background: #FFECB3; + border: solid #d9a300; + border-width: 0 0 0 6px; + color: #6d5100; +} + +.p-message.p-message-warn .p-message-icon { + color: #6d5100; +} + +.p-message.p-message-warn .p-message-close { + color: #6d5100; +} + +.p-message.p-message-error { + background: #FFCDD2; + border: solid #e60017; + border-width: 0 0 0 6px; + color: #73000c; +} + +.p-message.p-message-error .p-message-icon { + color: #73000c; +} + +.p-message.p-message-error .p-message-close { + color: #73000c; +} + +.p-message .p-message-text { + font-size: 1rem; + font-weight: 500; +} + +.p-message .p-message-icon { + font-size: 1.5rem; + margin-right: 0.5rem; +} + +.p-message .p-message-summary { + font-weight: 700; +} + +.p-message .p-message-detail { + margin-left: 0.5rem; +} + +.p-toast { + opacity: 0.9; +} + +.p-toast .p-toast-message { + margin: 0 0 1rem 0; + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); + border-radius: 3px; +} + +.p-toast .p-toast-message .p-toast-message-content { + padding: 1rem; + border-width: 0 0 0 6px; +} + +.p-toast .p-toast-message .p-toast-message-content .p-toast-message-text { + margin: 0 0 0 1rem; +} + +.p-toast .p-toast-message .p-toast-message-content .p-toast-message-icon { + font-size: 2rem; +} + +.p-toast .p-toast-message .p-toast-message-content .p-toast-summary { + font-weight: 700; +} + +.p-toast .p-toast-message .p-toast-message-content .p-toast-detail { + margin: 0.5rem 0 0 0; +} + +.p-toast .p-toast-message .p-toast-icon-close { + width: 2rem; + height: 2rem; + border-radius: 50%; + background: transparent; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-toast .p-toast-message .p-toast-icon-close:hover { + background: rgba(255, 255, 255, 0.3); +} + +.p-toast .p-toast-message .p-toast-icon-close:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-toast .p-toast-message.p-toast-message-info { + background: #B3E5FC; + border: solid #0891cf; + border-width: 0 0 0 6px; + color: #044868; +} + +.p-toast .p-toast-message.p-toast-message-info .p-toast-message-icon, +.p-toast .p-toast-message.p-toast-message-info .p-toast-icon-close { + color: #044868; +} + +.p-toast .p-toast-message.p-toast-message-success { + background: #C8E6C9; + border: solid #439446; + border-width: 0 0 0 6px; + color: #224a23; +} + +.p-toast .p-toast-message.p-toast-message-success .p-toast-message-icon, +.p-toast .p-toast-message.p-toast-message-success .p-toast-icon-close { + color: #224a23; +} + +.p-toast .p-toast-message.p-toast-message-warn { + background: #FFECB3; + border: solid #d9a300; + border-width: 0 0 0 6px; + color: #6d5100; +} + +.p-toast .p-toast-message.p-toast-message-warn .p-toast-message-icon, +.p-toast .p-toast-message.p-toast-message-warn .p-toast-icon-close { + color: #6d5100; +} + +.p-toast .p-toast-message.p-toast-message-error { + background: #FFCDD2; + border: solid #e60017; + border-width: 0 0 0 6px; + color: #73000c; +} + +.p-toast .p-toast-message.p-toast-message-error .p-toast-message-icon, +.p-toast .p-toast-message.p-toast-message-error .p-toast-icon-close { + color: #73000c; +} + +.p-galleria .p-galleria-close { + margin: 0.5rem; + background: transparent; + color: #f8f9fa; + width: 4rem; + height: 4rem; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; + border-radius: 50%; +} + +.p-galleria .p-galleria-close .p-galleria-close-icon { + font-size: 2rem; +} + +.p-galleria .p-galleria-close:hover { + background: rgba(255, 255, 255, 0.1); + color: #f8f9fa; +} + +.p-galleria .p-galleria-item-nav { + background: transparent; + color: #f8f9fa; + width: 4rem; + height: 4rem; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; + border-radius: 3px; + margin: 0 0.5rem; +} + +.p-galleria .p-galleria-item-nav .p-galleria-item-prev-icon, +.p-galleria .p-galleria-item-nav .p-galleria-item-next-icon { + font-size: 2rem; +} + +.p-galleria .p-galleria-item-nav:not(.p-disabled):hover { + background: rgba(255, 255, 255, 0.1); + color: #f8f9fa; +} + +.p-galleria .p-galleria-caption { + background: rgba(0, 0, 0, 0.5); + color: #f8f9fa; + padding: 1rem; +} + +.p-galleria .p-galleria-indicators { + padding: 1rem; +} + +.p-galleria .p-galleria-indicators .p-galleria-indicator button { + background-color: #e9ecef; + width: 1rem; + height: 1rem; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; + border-radius: 50%; +} + +.p-galleria .p-galleria-indicators .p-galleria-indicator button:hover { + background: #dee2e6; +} + +.p-galleria .p-galleria-indicators .p-galleria-indicator.p-highlight button { + background: #E3F2FD; + color: #495057; +} + +.p-galleria.p-galleria-indicators-bottom .p-galleria-indicator, .p-galleria.p-galleria-indicators-top .p-galleria-indicator { + margin-right: 0.5rem; +} + +.p-galleria.p-galleria-indicators-left .p-galleria-indicator, .p-galleria.p-galleria-indicators-right .p-galleria-indicator { + margin-bottom: 0.5rem; +} + +.p-galleria.p-galleria-indicator-onitem .p-galleria-indicators { + background: rgba(0, 0, 0, 0.5); +} + +.p-galleria.p-galleria-indicator-onitem .p-galleria-indicators .p-galleria-indicator button { + background: rgba(255, 255, 255, 0.4); +} + +.p-galleria.p-galleria-indicator-onitem .p-galleria-indicators .p-galleria-indicator button:hover { + background: rgba(255, 255, 255, 0.6); +} + +.p-galleria.p-galleria-indicator-onitem .p-galleria-indicators .p-galleria-indicator.p-highlight button { + background: #E3F2FD; + color: #495057; +} + +.p-galleria .p-galleria-thumbnail-container { + background: rgba(0, 0, 0, 0.9); + padding: 1rem 0.25rem; +} + +.p-galleria .p-galleria-thumbnail-container .p-galleria-thumbnail-prev, +.p-galleria .p-galleria-thumbnail-container .p-galleria-thumbnail-next { + margin: 0.5rem; + background-color: transparent; + color: #f8f9fa; + width: 2rem; + height: 2rem; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; + border-radius: 50%; +} + +.p-galleria .p-galleria-thumbnail-container .p-galleria-thumbnail-prev:hover, +.p-galleria .p-galleria-thumbnail-container .p-galleria-thumbnail-next:hover { + background: rgba(255, 255, 255, 0.1); + color: #f8f9fa; +} + +.p-galleria .p-galleria-thumbnail-container .p-galleria-thumbnail-item-content:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-galleria-mask { + --maskbg: rgba(0, 0, 0, 0.9); +} + +.p-image-mask { + --maskbg: rgba(0, 0, 0, 0.9); +} + +.p-image-preview-indicator { + background-color: transparent; + color: #f8f9fa; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-image-preview-container:hover > .p-image-preview-indicator { + background-color: rgba(0, 0, 0, 0.5); +} + +.p-image-toolbar { + padding: 1rem; +} + +.p-image-action.p-link { + color: #f8f9fa; + background-color: transparent; + width: 3rem; + height: 3rem; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; + margin-right: 0.5rem; +} + +.p-image-action.p-link:last-child { + margin-right: 0; +} + +.p-image-action.p-link:hover { + color: #f8f9fa; + background-color: rgba(255, 255, 255, 0.1); +} + +.p-image-action.p-link i { + font-size: 1.5rem; +} + +.p-avatar { + background-color: #dee2e6; + border-radius: 3px; +} + +.p-avatar.p-avatar-lg { + width: 3rem; + height: 3rem; + font-size: 1.5rem; +} + +.p-avatar.p-avatar-lg .p-avatar-icon { + font-size: 1.5rem; +} + +.p-avatar.p-avatar-xl { + width: 4rem; + height: 4rem; + font-size: 2rem; +} + +.p-avatar.p-avatar-xl .p-avatar-icon { + font-size: 2rem; +} + +.p-avatar-group .p-avatar { + border: 2px solid #FFFFFF; +} + +.p-badge { + background: #2196F3; + color: #FFFFFF; + font-size: 0.75rem; + font-weight: 700; + min-width: 1.5rem; + height: 1.5rem; + line-height: 1.5rem; +} + +.p-badge.p-badge-secondary { + background-color: #607D8B; + color: #FFFFFF; +} + +.p-badge.p-badge-success { + background-color: #689F38; + color: #FFFFFF; +} + +.p-badge.p-badge-info { + background-color: #0288D1; + color: #FFFFFF; +} + +.p-badge.p-badge-warning { + background-color: #FBC02D; + color: #212529; +} + +.p-badge.p-badge-danger { + background-color: #D32F2F; + color: #FFFFFF; +} + +.p-badge.p-badge-lg { + font-size: 1.125rem; + min-width: 2.25rem; + height: 2.25rem; + line-height: 2.25rem; +} + +.p-badge.p-badge-xl { + font-size: 1.5rem; + min-width: 3rem; + height: 3rem; + line-height: 3rem; +} + +.p-chip { + background-color: #dee2e6; + color: #495057; + border-radius: 16px; + padding: 0 0.5rem; +} + +.p-chip .p-chip-text { + line-height: 1.5; + margin-top: 0.25rem; + margin-bottom: 0.25rem; +} + +.p-chip .p-chip-icon { + margin-right: 0.5rem; +} + +.p-chip .pi-chip-remove-icon { + margin-left: 0.5rem; +} + +.p-chip img { + width: 2rem; + height: 2rem; + margin-left: -0.5rem; + margin-right: 0.5rem; +} + +.p-chip .pi-chip-remove-icon { + border-radius: 3px; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-chip .pi-chip-remove-icon:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-inplace .p-inplace-display { + padding: 0.5rem 0.5rem; + border-radius: 3px; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; +} + +.p-inplace .p-inplace-display:not(.p-disabled):hover { + background: #e9ecef; + color: #495057; +} + +.p-inplace .p-inplace-display:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #a6d5fa; +} + +.p-progressbar { + border: 0 none; + height: 1.5rem; + background: #dee2e6; + border-radius: 3px; +} + +.p-progressbar .p-progressbar-value { + border: 0 none; + margin: 0; + background: #2196F3; +} + +.p-progressbar .p-progressbar-label { + color: #FFFFFF; + line-height: 1.5rem; +} + +.p-scrolltop { + width: 3rem; + height: 3rem; + border-radius: 50%; + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-scrolltop.p-link { + background: rgba(0, 0, 0, 0.7); +} + +.p-scrolltop.p-link:hover { + background: rgba(0, 0, 0, 0.8); +} + +.p-scrolltop .p-scrolltop-icon { + font-size: 1.5rem; + color: #f8f9fa; +} + +.p-skeleton { + background-color: #e9ecef; + border-radius: 3px; +} + +.p-skeleton:after { + background: linear-gradient(90deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.4), rgba(255, 255, 255, 0)); +} + +.p-tag { + background: #2196F3; + color: #FFFFFF; + font-size: 0.75rem; + font-weight: 700; + padding: 0.25rem 0.4rem; + border-radius: 3px; +} + +.p-tag.p-tag-success { + background-color: #689F38; + color: #FFFFFF; +} + +.p-tag.p-tag-info { + background-color: #0288D1; + color: #FFFFFF; +} + +.p-tag.p-tag-warning { + background-color: #FBC02D; + color: #212529; +} + +.p-tag.p-tag-danger { + background-color: #D32F2F; + color: #FFFFFF; +} + +.p-tag .p-tag-icon { + margin-right: 0.25rem; + font-size: 0.75rem; +} + +.p-terminal { + background: #FFFFFF; + color: #495057; + border: 1px solid #dee2e6; + padding: 1rem; +} + +.p-terminal .p-terminal-input { + font-size: 1rem; + font-family: $offshift-font-family; +} + +/* Customizations to the designer theme should be defined here */ +.p-carousel .p-carousel-indicators .p-carousel-indicator.p-highlight button { + background-color: #2196F3; +} + +.p-galleria .p-galleria-indicators .p-galleria-indicator.p-highlight button { + background-color: #2196F3; +} + +.p-datatable .p-datatable-tbody > tr.p-datatable-dragpoint-top > td { + box-shadow: inset 0 2px 0 0 #2196F3; +} + +.p-datatable .p-datatable-tbody > tr.p-datatable-dragpoint-bottom > td { + box-shadow: inset 0 -2px 0 0 #2196F3; +} diff --git a/src/styles/_variables.scss b/src/styles/_variables.scss new file mode 100644 index 0000000000000000000000000000000000000000..10195bf0bcef6544ca05ab4e085011ad4d611e5a --- /dev/null +++ b/src/styles/_variables.scss @@ -0,0 +1,9 @@ +$offshift-font-family: 'Metropolis', -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol; + +$offshift-gap: 16px !default; + +$offshift-primary-color: #6b39fa; +$offshift-primary-color-hover: #8961fb; +$offshift-primary-color-focus: #562ec8; + +$offshift-gray-color: #b4b4b4; diff --git a/src/test.ts b/src/test.ts new file mode 100644 index 0000000000000000000000000000000000000000..fa9672bf35238977f1a1b07a57f7369ee4ecfec1 --- /dev/null +++ b/src/test.ts @@ -0,0 +1,27 @@ +// This file is required by karma.conf.js and loads recursively all the .spec and framework files + +import 'zone.js/testing'; +import { getTestBed } from '@angular/core/testing'; +import { + BrowserDynamicTestingModule, + platformBrowserDynamicTesting +} from '@angular/platform-browser-dynamic/testing'; + +declare const require: { + context(path: string, deep?: boolean, filter?: RegExp): { + <T>(id: string): T; + keys(): string[]; + }; +}; + +// First, initialize the Angular testing environment. +getTestBed().initTestEnvironment( + BrowserDynamicTestingModule, + platformBrowserDynamicTesting(), +); + +// Then we find all the tests. +const context = require.context('./', true, /\.spec\.ts$/); + +// And load the modules. +context.keys().map(context); diff --git a/tsconfig.app.json b/tsconfig.app.json new file mode 100644 index 0000000000000000000000000000000000000000..82d91dc4a4de57f380b66c59cdd16ff6cd5798e4 --- /dev/null +++ b/tsconfig.app.json @@ -0,0 +1,15 @@ +/* To learn more about this file see: https://angular.io/config/tsconfig. */ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "./out-tsc/app", + "types": [] + }, + "files": [ + "src/main.ts", + "src/polyfills.ts" + ], + "include": [ + "src/**/*.d.ts" + ] +} diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000000000000000000000000000000000000..ff181a824307e29c32939e1cf1173e332f3a929a --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,62 @@ +{ + "compileOnSave": false, + "compilerOptions": { + "baseUrl": "./", + "outDir": "./dist/out-tsc", + "forceConsistentCasingInFileNames": true, + "strict": true, + "noImplicitOverride": true, + "noPropertyAccessFromIndexSignature": true, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": true, + "sourceMap": true, + "declaration": false, + "downlevelIteration": true, + "experimentalDecorators": true, + "allowSyntheticDefaultImports": true, + "esModuleInterop": true, + "moduleResolution": "node", + "importHelpers": true, + "resolveJsonModule": true, + "skipLibCheck": true, + "strictNullChecks": false, + "target": "es2017", + "module": "es2020", + "lib": [ + "es2020", + "dom" + ], + "paths": { + "@offshift/environments/*": [ + "environments/*" + ], + "crypto": [ + "./node_modules/crypto-browserify" + ], + "stream": [ + "./node_modules/stream-browserify" + ], + "assert": [ + "./node_modules/assert" + ], + "http": [ + "./node_modules/stream-http" + ], + "https": [ + "./node_modules/https-browserify" + ], + "os": [ + "./node_modules/os-browserify" + ], + "process": [ + "./node_modules/process/browser" + ] + } + }, + "angularCompilerOptions": { + "enableI18nLegacyMessageIdFormat": false, + "strictInjectionParameters": true, + "strictInputAccessModifiers": true, + "strictTemplates": true + } +} diff --git a/tsconfig.spec.json b/tsconfig.spec.json new file mode 100644 index 0000000000000000000000000000000000000000..092345b02e807773164dba19f2b4d1f4ab869f67 --- /dev/null +++ b/tsconfig.spec.json @@ -0,0 +1,18 @@ +/* To learn more about this file see: https://angular.io/config/tsconfig. */ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "./out-tsc/spec", + "types": [ + "jasmine" + ] + }, + "files": [ + "src/test.ts", + "src/polyfills.ts" + ], + "include": [ + "src/**/*.spec.ts", + "src/**/*.d.ts" + ] +}